diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index 620fe8606be1f00544460321036938c780d3d8e2..dfc2e4c0e2f7255379fdc5c08e4fe55868e82af4 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -25,7 +25,7 @@
 
 #trash { height:17px; margin: 0 1em; z-index:1010; float: right; }
 
-#upload { 
+#upload {
 	height:27px; padding:0; margin-left:0.2em; overflow:hidden;
 }
 #upload a {
@@ -74,8 +74,9 @@ table th#headerDate, table td.date { min-width:11em; padding:0 .1em 0 1em; text-
 
 /* Multiselect bar */
 table.multiselect { top:63px; }
-table.multiselect thead { position:fixed; top:82px; z-index:1; }
+table.multiselect thead { position:fixed; top:82px; z-index:1; -moz-box-sizing: border-box; box-sizing: border-box; left: 0; padding-left: 64px; width:100%; }
 table.multiselect thead th { background:rgba(230,230,230,.8); color:#000; font-weight:bold; border-bottom:0; }
+table.multiselect #headerName { width: 100%; }
 table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; }
 table td.filename a.name { display:block; height:1.5em; vertical-align:middle; margin-left:3em; }
 table tr[data-type="dir"] td.filename a.name span.nametext {font-weight:bold; }
@@ -86,9 +87,14 @@ table td.filename .nametext, .uploadtext, .modified { float:left; padding:.3em 0
 table td.filename .nametext { overflow:hidden; text-overflow:ellipsis; }
 table td.filename .uploadtext { font-weight:normal; margin-left:.5em; }
 table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; }
+
+/* File checkboxes */
 #fileList tr td.filename>input[type="checkbox"]:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter:alpha(opacity=0); opacity:0; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ -webkit-transition:opacity 200ms; -moz-transition:opacity 200ms; -o-transition:opacity 200ms; transition:opacity 200ms; }
 #fileList tr td.filename>input[type="checkbox"]:hover:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter:alpha(opacity=80); opacity:.8; }
+/* Always show checkbox when selected */
 #fileList tr td.filename>input[type="checkbox"]:checked:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
+#fileList tr.selected td.filename>input[type="checkbox"]:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
+
 #fileList tr td.filename {
 	position:relative; width:100%;
 	-webkit-transition:background-image 500ms; -moz-transition:background-image 500ms; -o-transition:background-image 500ms; transition:background-image 500ms;
diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js
index e1d8b60d31530f3ef3869dc5d30bda2ccbe0d6b1..38f5bab6f73a4ba0bf52c516d8eadf1cf24bc18e 100644
--- a/apps/files/js/fileactions.js
+++ b/apps/files/js/fileactions.js
@@ -81,7 +81,7 @@ var FileActions = {
 			event.data.actionFunc(file);
 		};
 
-		$.each(actions, function (name, action) {
+		var addAction = function (name, action) {
 			// NOTE: Temporary fix to prevent rename action in root of Shared directory
 			if (name === 'Rename' && $('#dir').val() === '/Shared') {
 				return true;
@@ -92,7 +92,7 @@ var FileActions = {
 				if (img.call) {
 					img = img(file);
 				}
-				var html = '<a href="#" class="action" data-action="'+name+'">';
+				var html = '<a href="#" class="action" data-action="' + name + '">';
 				if (img) {
 					html += '<img class ="svg" src="' + img + '" /> ';
 				}
@@ -101,18 +101,27 @@ var FileActions = {
 				var element = $(html);
 				element.data('action', name);
 				//alert(element);
-				element.on('click',{a:null, elem:parent, actionFunc:actions[name]},actionHandler);
+				element.on('click', {a: null, elem: parent, actionFunc: actions[name]}, actionHandler);
 				parent.find('a.name>span.fileactions').append(element);
 			}
 
+		};
+
+		$.each(actions, function (name, action) {
+			if (name !== 'Share') {
+				addAction(name, action);
+			}
 		});
+		if(actions.Share){
+			addAction('Share', actions.Share);
+		}
 
 		if (actions['Delete']) {
 			var img = FileActions.icons['Delete'];
 			if (img.call) {
 				img = img(file);
 			}
-			if  (typeof trashBinApp !== 'undefined' && trashBinApp) {
+			if (typeof trashBinApp !== 'undefined' && trashBinApp) {
 				var html = '<a href="#" original-title="' + t('files', 'Delete permanently') + '" class="action delete" />';
 			} else {
 				var html = '<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" />';
@@ -122,7 +131,7 @@ var FileActions = {
 				element.append($('<img class ="svg" src="' + img + '"/>'));
 			}
 			element.data('action', actions['Delete']);
-			element.on('click',{a:null, elem:parent, actionFunc:actions['Delete']},actionHandler);
+			element.on('click', {a: null, elem: parent, actionFunc: actions['Delete']}, actionHandler);
 			parent.parent().children().last().append(element);
 		}
 	},
@@ -146,7 +155,7 @@ $(document).ready(function () {
 	} else {
 		var downloadScope = 'file';
 	}
-	
+
 	if (typeof disableDownloadActions == 'undefined' || !disableDownloadActions) {
 		FileActions.register(downloadScope, 'Download', OC.PERMISSION_READ, function () {
 			return OC.imagePath('core', 'actions/download');
@@ -154,11 +163,11 @@ $(document).ready(function () {
 			window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val());
 		});
 	}
-	
-	$('#fileList tr').each(function(){
+
+	$('#fileList tr').each(function () {
 		FileActions.display($(this).children('td.filename'));
 	});
-	
+
 });
 
 FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () {
diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 5c5b430a8d4c96f890bb71658a70af949fb52f3b..918182162d4694598b35cf4f283a85d75aac2d39 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -685,9 +685,10 @@ $(document).ready(function() {
 		breadcrumbsWidth += $(breadcrumb).get(0).offsetWidth;
 	});
 
-	if ($('#controls .actions').length > 0) {
-		breadcrumbsWidth += $('#controls .actions').get(0).offsetWidth;
-	}
+
+	$.each($('#controls .actions>div'), function(index, action) {
+		breadcrumbsWidth += $(action).get(0).offsetWidth;
+	});
 
 	function resizeBreadcrumbs(firstRun) {
 		var width = $(this).width();
diff --git a/apps/files/js/jquery-visibility.js b/apps/files/js/jquery-visibility.js
index a824bf6873076b284def2bd5a47c1d6ae52a5611..18f57d1f2bd19eaac9f3f2fa24c6833b1de46630 100644
--- a/apps/files/js/jquery-visibility.js
+++ b/apps/files/js/jquery-visibility.js
@@ -3,7 +3,7 @@
 
 	var prefix,
 		property,
-// In Opera, `'onfocusin' in document == true`, hence the extra `hasFocus` check to detect IE-like behavior
+		// In Opera, `'onfocusin' in document == true`, hence the extra `hasFocus` check to detect IE-like behavior
 		eventName = 'onfocusin' in document && 'hasFocus' in document ? 'focusin focusout' : 'focus blur',
 		prefixes = ['', 'moz', 'ms', 'o', 'webkit'],
 		$support = $.support,
@@ -19,12 +19,11 @@
 
 	$(/blur$/.test(eventName) ? window : document).on(eventName, function (event) {
 		var type = event.type,
-			originalEvent = event.originalEvent,
-			toElement = originalEvent.toElement;
-// If it’s a `{focusin,focusout}` event (IE), `fromElement` and `toElement` should both be `null` or `undefined`;
-// else, the page visibility hasn’t changed, but the user just clicked somewhere in the doc.
-// In IE9, we need to check the `relatedTarget` property instead.
-		if (!/^focus./.test(type) || (toElement == undefined && originalEvent.fromElement == undefined && originalEvent.relatedTarget == undefined)) {
+			originalEvent = event.originalEvent;
+		// If it’s a `{focusin,focusout}` event (IE), `fromElement` and `toElement` should both be `null` or `undefined`;
+		// else, the page visibility hasn’t changed, but the user just clicked somewhere in the doc.
+		// In IE9, we need to check the `relatedTarget` property instead.
+		if (!/^focus./.test(type) || originalEvent == undefined || (originalEvent.toElement == undefined && originalEvent.fromElement == undefined && originalEvent.relatedTarget == undefined)) {
 			$event.trigger((property && document[property] || /^(?:blur|focusout)$/.test(type) ? 'hide' : 'show') + '.visibility');
 		}
 	});
diff --git a/apps/files/l10n/bg_BG.php b/apps/files/l10n/bg_BG.php
index 632b57454539eb5c61f49213e75c6de63fdcd79f..f16a83bdfa370ee82b714a126c9db5951afd9c4d 100644
--- a/apps/files/l10n/bg_BG.php
+++ b/apps/files/l10n/bg_BG.php
@@ -1,22 +1,32 @@
 <?php $TRANSLATIONS = array(
 "Missing a temporary folder" => "Липсва временна папка",
+"Failed to write to disk" => "Възникна проблем при запис в диска",
+"Invalid directory." => "Невалидна директория.",
 "Files" => "Файлове",
 "Delete" => "Изтриване",
 "Rename" => "Преименуване",
+"Pending" => "Чакащо",
 "replace" => "препокриване",
 "cancel" => "отказ",
 "undo" => "възтановяване",
+"Upload Error" => "Възникна грешка при качването",
 "Close" => "Затвори",
 "Upload cancelled." => "Качването е спряно.",
 "Name" => "Име",
 "Size" => "Размер",
 "Modified" => "Променено",
+"1 folder" => "1 папка",
+"{count} folders" => "{count} папки",
+"1 file" => "1 файл",
+"{count} files" => "{count} файла",
 "Upload" => "Качване",
 "Maximum upload size" => "Максимален размер за качване",
 "0 is unlimited" => "Ползвайте 0 за без ограничения",
 "Save" => "Запис",
 "New" => "Ново",
+"Text file" => "Текстов файл",
 "Folder" => "Папка",
+"Cancel upload" => "Спри качването",
 "Nothing in here. Upload something!" => "Няма нищо тук. Качете нещо.",
 "Download" => "Изтегляне",
 "Upload too large" => "Файлът който сте избрали за качване е прекалено голям"
diff --git a/apps/files/l10n/da.php b/apps/files/l10n/da.php
index 13ceacc6241c22639ad7123dd25c99c09f000e25..8b4ad675e0f4adf583590857253268a071ea2b1e 100644
--- a/apps/files/l10n/da.php
+++ b/apps/files/l10n/da.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Der er ikke nok plads til rådlighed",
 "Invalid directory." => "Ugyldig mappe.",
 "Files" => "Filer",
+"Delete permanently" => "Slet permanent",
 "Delete" => "Slet",
 "Rename" => "Omdøb",
 "Pending" => "Afventer",
@@ -23,6 +24,7 @@
 "replaced {new_name}" => "erstattede {new_name}",
 "undo" => "fortryd",
 "replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}",
+"perform delete operation" => "udfør slet operation",
 "'.' is an invalid file name." => "'.' er et ugyldigt filnavn.",
 "File name cannot be empty." => "Filnavnet kan ikke stå tomt.",
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldigt navn, '\\', '/', '<', '>', ':' | '?', '\"', '', og '*' er ikke tilladt.",
@@ -65,5 +67,6 @@
 "Upload too large" => "Upload for stor",
 "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerne, du prøver at uploade, er større end den maksimale størrelse for fil-upload på denne server.",
 "Files are being scanned, please wait." => "Filerne bliver indlæst, vent venligst.",
-"Current scanning" => "Indlæser"
+"Current scanning" => "Indlæser",
+"Upgrading filesystem cache..." => "Opgraderer filsystems cachen..."
 );
diff --git a/apps/files/l10n/de.php b/apps/files/l10n/de.php
index fa202c8c2b55fdc72daa833a0446ac43da215f40..d96e512ece25b33c5953d975e653b4ecabe385d3 100644
--- a/apps/files/l10n/de.php
+++ b/apps/files/l10n/de.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Nicht genug Speicherplatz verfügbar",
 "Invalid directory." => "Ungültiges Verzeichnis.",
 "Files" => "Dateien",
+"Delete permanently" => "Permanent löschen",
 "Delete" => "Löschen",
 "Rename" => "Umbenennen",
 "Pending" => "Ausstehend",
diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php
index 9c4d304f7db9c1fcc119f158e7931abb183c4ee1..12262b54818eee70d1b443555ff21e5f8acf9c8a 100644
--- a/apps/files/l10n/es.php
+++ b/apps/files/l10n/es.php
@@ -10,6 +10,7 @@
 "No file was uploaded" => "No se ha subido ningún archivo",
 "Missing a temporary folder" => "Falta un directorio temporal",
 "Failed to write to disk" => "La escritura en disco ha fallado",
+"Not enough storage available" => "No hay suficiente espacio disponible",
 "Invalid directory." => "Directorio invalido.",
 "Files" => "Archivos",
 "Delete permanently" => "Eliminar permanentemente",
diff --git a/apps/files/l10n/es_AR.php b/apps/files/l10n/es_AR.php
index edc732b46757416436cf5b39dada4ac519e953c6..0dc423f96f5a88096f25b2c125be4d8f45fc5601 100644
--- a/apps/files/l10n/es_AR.php
+++ b/apps/files/l10n/es_AR.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "No hay suficiente capacidad de almacenamiento",
 "Invalid directory." => "Directorio invalido.",
 "Files" => "Archivos",
+"Delete permanently" => "Borrar de manera permanente",
 "Delete" => "Borrar",
 "Rename" => "Cambiar nombre",
 "Pending" => "Pendiente",
diff --git a/apps/files/l10n/et_EE.php b/apps/files/l10n/et_EE.php
index 98af371e07134d5169b02c8ec5fbad25fd794f9d..3ec7cbb1a64d4349cf2e254d10a7c6fef06fd64b 100644
--- a/apps/files/l10n/et_EE.php
+++ b/apps/files/l10n/et_EE.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
+"Could not move %s" => "%s liigutamine ebaõnnestus",
+"Unable to rename file" => "Faili ümbernimetamine ebaõnnestus",
 "No file was uploaded. Unknown error" => "Ühtegi faili ei laetud üles. Tundmatu viga",
 "There is no error, the file uploaded with success" => "Ühtegi viga pole, fail on üles laetud",
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Üles laetud faili suurus ületab HTML vormis määratud upload_max_filesize suuruse",
@@ -6,7 +8,10 @@
 "No file was uploaded" => "Ühtegi faili ei laetud üles",
 "Missing a temporary folder" => "Ajutiste failide kaust puudub",
 "Failed to write to disk" => "Kettale kirjutamine ebaõnnestus",
+"Not enough storage available" => "Saadaval pole piisavalt ruumi",
+"Invalid directory." => "Vigane kaust.",
 "Files" => "Failid",
+"Delete permanently" => "Kustuta jäädavalt",
 "Delete" => "Kustuta",
 "Rename" => "ümber",
 "Pending" => "Ootel",
@@ -17,6 +22,8 @@
 "replaced {new_name}" => "asendatud nimega {new_name}",
 "undo" => "tagasi",
 "replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}",
+"'.' is an invalid file name." => "'.' on vigane failinimi.",
+"File name cannot be empty." => "Faili nimi ei saa olla tühi.",
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Vigane nimi, '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' pole lubatud.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Sinu faili üleslaadimine ebaõnnestus, kuna see on kaust või selle suurus on 0 baiti",
 "Upload Error" => "Üleslaadimise viga",
diff --git a/apps/files/l10n/eu.php b/apps/files/l10n/eu.php
index b62b1c7bf79a045114c6a03ff2f79177e77f57fa..10f19cf4cbb53763ad1d1540139dbd2dc6a2a437 100644
--- a/apps/files/l10n/eu.php
+++ b/apps/files/l10n/eu.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Ez dago behar aina leku erabilgarri,",
 "Invalid directory." => "Baliogabeko karpeta.",
 "Files" => "Fitxategiak",
+"Delete permanently" => "Ezabatu betirako",
 "Delete" => "Ezabatu",
 "Rename" => "Berrizendatu",
 "Pending" => "Zain",
@@ -23,6 +24,7 @@
 "replaced {new_name}" => "ordezkatua {new_name}",
 "undo" => "desegin",
 "replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du",
+"perform delete operation" => "Ezabatu",
 "'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.",
 "File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.",
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "IZen aliogabea, '\\', '/', '<', '>', ':', '\"', '|', '?' eta '*' ez daude baimenduta.",
@@ -65,5 +67,6 @@
 "Upload too large" => "Igotakoa handiegia da",
 "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Igotzen saiatzen ari zaren fitxategiak zerbitzari honek igotzeko onartzen duena baino handiagoak dira.",
 "Files are being scanned, please wait." => "Fitxategiak eskaneatzen ari da, itxoin mezedez.",
-"Current scanning" => "Orain eskaneatzen ari da"
+"Current scanning" => "Orain eskaneatzen ari da",
+"Upgrading filesystem cache..." => "Fitxategi sistemaren katxea eguneratzen..."
 );
diff --git a/apps/files/l10n/fi_FI.php b/apps/files/l10n/fi_FI.php
index 031591d7136cdfc745be586d6f6e48c555edd7a4..81ac32c09f3a08dd78d2c1d76668db8d57aeb37b 100644
--- a/apps/files/l10n/fi_FI.php
+++ b/apps/files/l10n/fi_FI.php
@@ -12,6 +12,7 @@
 "Not enough storage available" => "Tallennustilaa ei ole riittävästi käytettävissä",
 "Invalid directory." => "Virheellinen kansio.",
 "Files" => "Tiedostot",
+"Delete permanently" => "Poista pysyvästi",
 "Delete" => "Poista",
 "Rename" => "Nimeä uudelleen",
 "Pending" => "Odottaa",
diff --git a/apps/files/l10n/gl.php b/apps/files/l10n/gl.php
index 4713da934a4884e970f65005ebc9607b6641b610..91896b8e39b660f89516aa971d13c937e063751d 100644
--- a/apps/files/l10n/gl.php
+++ b/apps/files/l10n/gl.php
@@ -1,19 +1,21 @@
 <?php $TRANSLATIONS = array(
 "Could not move %s - File with this name already exists" => "Non se moveu %s - Xa existe un ficheiro con ese nome.",
-"Could not move %s" => "Non se puido mover %s",
-"Unable to rename file" => "Non se pode renomear o ficheiro",
-"No file was uploaded. Unknown error" => "Non se subiu ningún ficheiro. Erro descoñecido.",
-"There is no error, the file uploaded with success" => "Non hai erros. O ficheiro enviouse correctamente",
-"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro subido excede a directiva indicada polo tamaño_máximo_de_subida de php.ini",
-"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "O ficheiro enviado supera a directiva MAX_FILE_SIZE que foi indicada no formulario HTML",
+"Could not move %s" => "Non foi posíbel mover %s",
+"Unable to rename file" => "Non é posíbel renomear o ficheiro",
+"No file was uploaded. Unknown error" => "Non foi enviado ningún ficheiro. Produciuse un erro descoñecido.",
+"There is no error, the file uploaded with success" => "Non se produciu ningún erro. O ficheiro enviouse correctamente",
+"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro enviado excede a directiva indicada por upload_max_filesize de php.ini:",
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "O ficheiro enviado excede a directiva MAX_FILE_SIZE que foi indicada no formulario HTML",
 "The uploaded file was only partially uploaded" => "O ficheiro enviado foi só parcialmente enviado",
 "No file was uploaded" => "Non se enviou ningún ficheiro",
 "Missing a temporary folder" => "Falta un cartafol temporal",
-"Failed to write to disk" => "Erro ao escribir no disco",
+"Failed to write to disk" => "Produciuse un erro ao escribir no disco",
+"Not enough storage available" => "Non hai espazo de almacenamento abondo",
 "Invalid directory." => "O directorio é incorrecto.",
 "Files" => "Ficheiros",
+"Delete permanently" => "Eliminar permanentemente",
 "Delete" => "Eliminar",
-"Rename" => "Mudar o nome",
+"Rename" => "Renomear",
 "Pending" => "Pendentes",
 "{new_name} already exists" => "xa existe un {new_name}",
 "replace" => "substituír",
@@ -21,19 +23,23 @@
 "cancel" => "cancelar",
 "replaced {new_name}" => "substituír {new_name}",
 "undo" => "desfacer",
-"replaced {new_name} with {old_name}" => "substituír {new_name} polo {old_name}",
-"'.' is an invalid file name." => "'.' é un nonme de ficheiro non válido",
-"File name cannot be empty." => "O nome de ficheiro non pode estar baldeiro",
-"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non válido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non se permiten.",
-"Unable to upload your file as it is a directory or has 0 bytes" => "Non se puido subir o ficheiro pois ou é un directorio ou ten 0 bytes",
-"Upload Error" => "Erro na subida",
+"replaced {new_name} with {old_name}" => "substituír {new_name} por {old_name}",
+"perform delete operation" => "realizar a operación de eliminación",
+"'.' is an invalid file name." => "«.» é un nome de ficheiro incorrecto",
+"File name cannot be empty." => "O nome de ficheiro non pode estar baleiro",
+"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome incorrecto, non se permite «\\», «/», «<», «>», «:», «\"», «|», «?» e «*».",
+"Your storage is full, files can not be updated or synced anymore!" => "O seu espazo de almacenamento está cheo, non é posíbel actualizar ou sincronizar máis os ficheiros!",
+"Your storage is almost full ({usedSpacePercent}%)" => "O seu espazo de almacenamento está case cheo ({usedSpacePercent}%)",
+"Your download is being prepared. This might take some time if the files are big." => "Está a prepararse a súa descarga. Isto pode levar bastante tempo se os ficheiros son grandes.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "Non foi posíbel enviar o ficheiro pois ou é un directorio ou ten 0 bytes",
+"Upload Error" => "Produciuse un erro no envío",
 "Close" => "Pechar",
-"1 file uploading" => "1 ficheiro subíndose",
-"{count} files uploading" => "{count} ficheiros subíndose",
-"Upload cancelled." => "Subida cancelada.",
-"File upload is in progress. Leaving the page now will cancel the upload." => "A subida do ficheiro está en curso. Saír agora da páxina cancelará a subida.",
-"URL cannot be empty." => "URL non pode quedar baleiro.",
-"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de cartafol non válido. O uso de 'Shared' está reservado por Owncloud",
+"1 file uploading" => "Enviándose 1 ficheiro",
+"{count} files uploading" => "Enviandose {count} ficheiros",
+"Upload cancelled." => "Envío cancelado.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "O envío do ficheiro está en proceso. Saír agora da páxina cancelará o envío.",
+"URL cannot be empty." => "O URL non pode quedar baleiro.",
+"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de cartafol incorrecto. O uso de «Shared» está reservado por Owncloud",
 "Name" => "Nome",
 "Size" => "Tamaño",
 "Modified" => "Modificado",
@@ -43,23 +49,24 @@
 "{count} files" => "{count} ficheiros",
 "Upload" => "Enviar",
 "File handling" => "Manexo de ficheiro",
-"Maximum upload size" => "Tamaño máximo de envío",
-"max. possible: " => "máx. posible: ",
+"Maximum upload size" => "Tamaño máximo do envío",
+"max. possible: " => "máx. posíbel: ",
 "Needed for multi-file and folder downloads." => "Precísase para a descarga de varios ficheiros e cartafoles.",
 "Enable ZIP-download" => "Habilitar a descarga-ZIP",
 "0 is unlimited" => "0 significa ilimitado",
-"Maximum input size for ZIP files" => "Tamaño máximo de descarga para os ZIP",
+"Maximum input size for ZIP files" => "Tamaño máximo de descarga para os ficheiros ZIP",
 "Save" => "Gardar",
 "New" => "Novo",
 "Text file" => "Ficheiro de texto",
 "Folder" => "Cartafol",
-"From link" => "Dende a ligazón",
-"Cancel upload" => "Cancelar a subida",
-"Nothing in here. Upload something!" => "Nada por aquí. Envía algo.",
+"From link" => "Desde a ligazón",
+"Cancel upload" => "Cancelar o envío",
+"Nothing in here. Upload something!" => "Aquí non hai nada por aquí. Envíe algo.",
 "Download" => "Descargar",
 "Unshare" => "Deixar de compartir",
 "Upload too large" => "Envío demasiado grande",
-"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que trata de subir superan o tamaño máximo permitido neste servidor",
-"Files are being scanned, please wait." => "Estanse analizando os ficheiros. Agarda.",
-"Current scanning" => "Análise actual"
+"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que tenta enviar exceden do tamaño máximo permitido neste servidor",
+"Files are being scanned, please wait." => "Estanse analizando os ficheiros. Agarde.",
+"Current scanning" => "Análise actual",
+"Upgrading filesystem cache..." => "Anovando a caché do sistema de ficheiros..."
 );
diff --git a/apps/files/l10n/hu_HU.php b/apps/files/l10n/hu_HU.php
index eaec8d24b7af8739287a9ccea26dc971a9050bfe..9eed324415abe7855be13b3aa3c30465ec943f93 100644
--- a/apps/files/l10n/hu_HU.php
+++ b/apps/files/l10n/hu_HU.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Nincs elég szabad hely.",
 "Invalid directory." => "Érvénytelen mappa.",
 "Files" => "Fájlok",
+"Delete permanently" => "Végleges törlés",
 "Delete" => "Törlés",
 "Rename" => "Átnevezés",
 "Pending" => "Folyamatban",
@@ -23,6 +24,7 @@
 "replaced {new_name}" => "a(z) {new_name} állományt kicseréltük",
 "undo" => "visszavonás",
 "replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel:  {old_name}",
+"perform delete operation" => "a törlés végrehajtása",
 "'.' is an invalid file name." => "'.' fájlnév érvénytelen.",
 "File name cannot be empty." => "A fájlnév nem lehet semmi.",
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Érvénytelen elnevezés. Ezek a karakterek nem használhatók: '\\', '/', '<', '>', ':', '\"', '|', '?' és '*'",
@@ -65,5 +67,6 @@
 "Upload too large" => "A feltöltés túl nagy",
 "The files you are trying to upload exceed the maximum size for file uploads on this server." => "A feltöltendő állományok mérete meghaladja a kiszolgálón megengedett maximális méretet.",
 "Files are being scanned, please wait." => "A fájllista ellenőrzése zajlik, kis türelmet!",
-"Current scanning" => "Ellenőrzés alatt"
+"Current scanning" => "Ellenőrzés alatt",
+"Upgrading filesystem cache..." => "A fájlrendszer gyorsítótárának frissítése zajlik..."
 );
diff --git a/apps/files/l10n/lv.php b/apps/files/l10n/lv.php
index ef4928d97869faaf87241acd24471c7f57bed95e..9d4d2c9fb6caf70d8b062edda26316669382ffea 100644
--- a/apps/files/l10n/lv.php
+++ b/apps/files/l10n/lv.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
+"Could not move %s - File with this name already exists" => "Nevarēja pārvietot %s — jau eksistē datne ar tādu nosaukumu",
+"Could not move %s" => "Nevarēja pārvietot %s",
+"Unable to rename file" => "Nevarēja pārsaukt datni",
 "No file was uploaded. Unknown error" => "Netika augšupielādēta neviena datne. Nezināma kļūda",
 "There is no error, the file uploaded with success" => "Augšupielāde pabeigta bez kļūdām",
 "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Augšupielādētā datne pārsniedz upload_max_filesize norādījumu php.ini datnē:",
@@ -7,6 +10,7 @@
 "No file was uploaded" => "Neviena datne netika augšupielādēta",
 "Missing a temporary folder" => "Trūkst pagaidu mapes",
 "Failed to write to disk" => "Neizdevās saglabāt diskā",
+"Not enough storage available" => "Nav pietiekami daudz vietas",
 "Invalid directory." => "Nederīga direktorija.",
 "Files" => "Datnes",
 "Delete permanently" => "Dzēst pavisam",
diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php
index 6e886ad700b9cd7feaf096aca3c135fb7db6f53e..381325d113ce94c8332c7fbcdf037ac17e4ea3f2 100644
--- a/apps/files/l10n/nl.php
+++ b/apps/files/l10n/nl.php
@@ -10,6 +10,7 @@
 "No file was uploaded" => "Geen bestand geüpload",
 "Missing a temporary folder" => "Een tijdelijke map mist",
 "Failed to write to disk" => "Schrijven naar schijf mislukt",
+"Not enough storage available" => "Niet genoeg opslagruimte beschikbaar",
 "Invalid directory." => "Ongeldige directory.",
 "Files" => "Bestanden",
 "Delete permanently" => "Verwijder definitief",
diff --git a/apps/files/l10n/pt_BR.php b/apps/files/l10n/pt_BR.php
index 7d834b8f30d5d54d297bdd3ac8e67c60da68e014..3a9dafcabf97d7099e067349f2d0240750e35961 100644
--- a/apps/files/l10n/pt_BR.php
+++ b/apps/files/l10n/pt_BR.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Espaço de armazenamento insuficiente",
 "Invalid directory." => "Diretório inválido.",
 "Files" => "Arquivos",
+"Delete permanently" => "Excluir permanentemente",
 "Delete" => "Excluir",
 "Rename" => "Renomear",
 "Pending" => "Pendente",
@@ -23,9 +24,12 @@
 "replaced {new_name}" => "substituído {new_name}",
 "undo" => "desfazer",
 "replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ",
+"perform delete operation" => "realizar operação de exclusão",
 "'.' is an invalid file name." => "'.' é um nome de arquivo inválido.",
 "File name cannot be empty." => "O nome do arquivo não pode estar vazio.",
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome inválido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.",
+"Your storage is full, files can not be updated or synced anymore!" => "Seu armazenamento está cheio, arquivos não serão mais atualizados nem sincronizados!",
+"Your storage is almost full ({usedSpacePercent}%)" => "Seu armazenamento está quase cheio ({usedSpacePercent}%)",
 "Your download is being prepared. This might take some time if the files are big." => "Seu download está sendo preparado. Isto pode levar algum tempo se os arquivos forem grandes.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo como diretório ou ele tem 0 bytes.",
 "Upload Error" => "Erro de envio",
@@ -63,5 +67,6 @@
 "Upload too large" => "Arquivo muito grande",
 "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor.",
 "Files are being scanned, please wait." => "Arquivos sendo escaneados, por favor aguarde.",
-"Current scanning" => "Scanning atual"
+"Current scanning" => "Scanning atual",
+"Upgrading filesystem cache..." => "Aprimorando cache do sistema de arquivos..."
 );
diff --git a/apps/files/l10n/ru_RU.php b/apps/files/l10n/ru_RU.php
index c019328bb6d24bbb5753e1a2ba9e4b91a1047c7d..dbeab6b351e87ed09a4cada8c012eab7cc0fa805 100644
--- a/apps/files/l10n/ru_RU.php
+++ b/apps/files/l10n/ru_RU.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
+"Could not move %s - File with this name already exists" => "Неполучается перенести %s - Файл с таким именем уже существует",
+"Could not move %s" => "Неполучается перенести %s ",
+"Unable to rename file" => "Невозможно переименовать файл",
 "No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка",
 "There is no error, the file uploaded with success" => "Ошибка отсутствует, файл загружен успешно.",
 "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Размер загружаемого файла превышает upload_max_filesize директиву в php.ini:",
@@ -7,6 +10,7 @@
 "No file was uploaded" => "Файл не был загружен",
 "Missing a temporary folder" => "Отсутствует временная папка",
 "Failed to write to disk" => "Не удалось записать на диск",
+"Not enough storage available" => "Недостаточно места в хранилище",
 "Invalid directory." => "Неверный каталог.",
 "Files" => "Файлы",
 "Delete permanently" => "Удалить навсегда",
diff --git a/apps/files/l10n/sk_SK.php b/apps/files/l10n/sk_SK.php
index 0d2db9813b1733bd009114d79f59a45e5f41215d..8ece8140d8a15d273915a9c86a32aa5111d47902 100644
--- a/apps/files/l10n/sk_SK.php
+++ b/apps/files/l10n/sk_SK.php
@@ -11,7 +11,7 @@
 "Missing a temporary folder" => "Chýbajúci dočasný priečinok",
 "Failed to write to disk" => "Zápis na disk sa nepodaril",
 "Not enough storage available" => "Nedostatok dostupného úložného priestoru",
-"Invalid directory." => "Neplatný adresár",
+"Invalid directory." => "Neplatný priečinok",
 "Files" => "Súbory",
 "Delete permanently" => "Zmazať  trvalo",
 "Delete" => "Odstrániť",
@@ -39,7 +39,7 @@
 "Upload cancelled." => "Odosielanie zrušené",
 "File upload is in progress. Leaving the page now will cancel the upload." => "Opustenie stránky zruší práve prebiehajúce odosielanie súboru.",
 "URL cannot be empty." => "URL nemôže byť prázdne",
-"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatné meno adresára. Používanie mena 'Shared' je vyhradené len pre Owncloud",
+"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatné meno priečinka. Používanie mena 'Shared' je vyhradené len pre Owncloud",
 "Name" => "Meno",
 "Size" => "Veľkosť",
 "Modified" => "Upravené",
@@ -48,10 +48,10 @@
 "1 file" => "1 súbor",
 "{count} files" => "{count} súborov",
 "Upload" => "Odoslať",
-"File handling" => "Nastavenie správanie k súborom",
+"File handling" => "Nastavenie správania sa k súborom",
 "Maximum upload size" => "Maximálna veľkosť odosielaného súboru",
 "max. possible: " => "najväčšie možné:",
-"Needed for multi-file and folder downloads." => "Vyžadované pre sťahovanie viacerých súborov a adresárov.",
+"Needed for multi-file and folder downloads." => "Vyžadované pre sťahovanie viacerých súborov a priečinkov.",
 "Enable ZIP-download" => "Povoliť sťahovanie ZIP súborov",
 "0 is unlimited" => "0 znamená neobmedzené",
 "Maximum input size for ZIP files" => "Najväčšia veľkosť ZIP súborov",
@@ -67,6 +67,6 @@
 "Upload too large" => "Odosielaný súbor je príliš veľký",
 "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Súbory, ktoré sa snažíte nahrať, presahujú maximálnu veľkosť pre nahratie súborov na tento server.",
 "Files are being scanned, please wait." => "Čakajte, súbory sú prehľadávané.",
-"Current scanning" => "Práve prehliadané",
+"Current scanning" => "Práve prezerané",
 "Upgrading filesystem cache..." => "Aktualizujem medzipamäť súborového systému..."
 );
diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php
index d95701e9084de023158210316877f186c91db894..ca4dfcf553b8fefe61cc42e0cc25db140b6a2a41 100644
--- a/apps/files/l10n/sv.php
+++ b/apps/files/l10n/sv.php
@@ -13,6 +13,7 @@
 "Not enough storage available" => "Inte tillräckligt med lagringsutrymme tillgängligt",
 "Invalid directory." => "Felaktig mapp.",
 "Files" => "Filer",
+"Delete permanently" => "Radera permanent",
 "Delete" => "Radera",
 "Rename" => "Byt namn",
 "Pending" => "Väntar",
diff --git a/apps/files/l10n/zh_TW.php b/apps/files/l10n/zh_TW.php
index 0c029c8815d8266685bd1feefbced6750604d093..7be0f1d658c7f4d96463b2ef4a2d6f7c90595dae 100644
--- a/apps/files/l10n/zh_TW.php
+++ b/apps/files/l10n/zh_TW.php
@@ -10,8 +10,10 @@
 "No file was uploaded" => "無已上傳檔案",
 "Missing a temporary folder" => "遺失暫存資料夾",
 "Failed to write to disk" => "寫入硬碟失敗",
+"Not enough storage available" => "儲存空間不足",
 "Invalid directory." => "無效的資料夾。",
 "Files" => "檔案",
+"Delete permanently" => "永久刪除",
 "Delete" => "刪除",
 "Rename" => "重新命名",
 "Pending" => "等候中",
diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php
index 60756db40149e1175b7b5a3e47c385ab6649a2ef..c7bf0d21c13dcf021d68b106ce22926bd4bc8bb7 100644
--- a/apps/files/templates/index.php
+++ b/apps/files/templates/index.php
@@ -37,7 +37,7 @@
 			</div>
 			<?php if ($_['trash'] ): ?>
 			<div id="trash" class="button">
-				<a><?php echo $l->t('Trash bin');?></a>
+				<a><?php echo $l->t('Deleted files');?></a>
 			</div>
 			<?php endif; ?>
 			<div id="uploadprogresswrapper">
diff --git a/apps/files/templates/part.breadcrumb.php b/apps/files/templates/part.breadcrumb.php
index 8778915be846f556c135ff7b2e8fc6f838a6e56a..f01cb8d212a8eb0a7dac203a491509da912e0183 100644
--- a/apps/files/templates/part.breadcrumb.php
+++ b/apps/files/templates/part.breadcrumb.php
@@ -1,7 +1,7 @@
 <?php if(count($_["breadcrumb"])):?>
 	<div class="crumb">
 		<a href="<?php echo $_['baseURL']; ?>">
-			<img src="<?php echo OCP\image_path('core','places/home.svg');?>" />
+			<img src="<?php echo OCP\image_path('core', 'places/home.svg');?>" class="svg" />
 		</a>
 	</div>
 <?php endif;?>
diff --git a/apps/files_encryption/appinfo/app.php b/apps/files_encryption/appinfo/app.php
index 08728622525e963ec6fb195b4ce05152c20a8008..c7cd8ca32de87890a1057fb576e1bb705c0a284a 100644
--- a/apps/files_encryption/appinfo/app.php
+++ b/apps/files_encryption/appinfo/app.php
@@ -12,7 +12,7 @@ OC_FileProxy::register( new OCA\Encryption\Proxy() );
 
 // User-related hooks
 OCP\Util::connectHook( 'OC_User', 'post_login', 'OCA\Encryption\Hooks', 'login' );
-OCP\Util::connectHook( 'OC_User', 'pre_setPassword','OCA\Encryption\Hooks', 'setPassphrase' );
+OCP\Util::connectHook( 'OC_User', 'pre_setPassword', 'OCA\Encryption\Hooks', 'setPassphrase' );
 
 // Sharing-related hooks
 OCP\Util::connectHook( 'OCP\Share', 'post_shared', 'OCA\Encryption\Hooks', 'postShared' );
diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php
index 7e4f677ce9d230a9b7c80b029fd02fdce49b9e9e..2731d5a92f74ad4ed435d77a37d35cc9018cb7df 100644
--- a/apps/files_encryption/hooks/hooks.php
+++ b/apps/files_encryption/hooks/hooks.php
@@ -40,7 +40,7 @@ class Hooks {
 	
 		// Manually initialise Filesystem{} singleton with correct 
 		// fake root path, in order to avoid fatal webdav errors
-		\OC\Files\Filesystem::init( $params['uid'] . '/' . 'files' . '/' );
+		\OC\Files\Filesystem::init( $params['uid'], $params['uid'] . '/' . 'files' . '/' );
 	
 		$view = new \OC_FilesystemView( '/' );
 
diff --git a/apps/files_encryption/l10n/da.php b/apps/files_encryption/l10n/da.php
index e52ecb868af102a058ea58e23d00456dc891a788..b085381ea7b2b72f8fb66a9844c771ec9739733a 100644
--- a/apps/files_encryption/l10n/da.php
+++ b/apps/files_encryption/l10n/da.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Kryptering",
+"File encryption is enabled." => "Fil kryptering aktiveret.",
+"The following file types will not be encrypted:" => "De følgende filtyper vil ikke blive krypteret:",
+"Exclude the following file types from encryption:" => "Ekskluder de følgende fil typer fra kryptering:",
 "None" => "Ingen"
 );
diff --git a/apps/files_encryption/l10n/de.php b/apps/files_encryption/l10n/de.php
index 3dc586fe06c813dfb8c376016942cd186fd04009..cdcd8a40b23c87ae5c13660fd17539a8885b399e 100644
--- a/apps/files_encryption/l10n/de.php
+++ b/apps/files_encryption/l10n/de.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Verschlüsselung",
+"File encryption is enabled." => "Dateiverschlüsselung ist aktiviert",
+"The following file types will not be encrypted:" => "Die folgenden Dateitypen werden nicht verschlüsselt:",
+"Exclude the following file types from encryption:" => "Schließe die folgenden Dateitypen von der Verschlüsselung aus:",
 "None" => "Keine"
 );
diff --git a/apps/files_encryption/l10n/es_AR.php b/apps/files_encryption/l10n/es_AR.php
index 52c778278488449ba4fbaa92b58ba9ee9a8477a6..af522879e16f7d4559413c22cef8ac754ffc1b4e 100644
--- a/apps/files_encryption/l10n/es_AR.php
+++ b/apps/files_encryption/l10n/es_AR.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Encriptación",
+"File encryption is enabled." => "La encriptación de archivos no está habilitada",
+"The following file types will not be encrypted:" => "Los siguientes tipos de archivos no serán encriptados",
+"Exclude the following file types from encryption:" => "Excluir los siguientes tipos de archivos de encriptación:",
 "None" => "Ninguno"
 );
diff --git a/apps/files_encryption/l10n/et_EE.php b/apps/files_encryption/l10n/et_EE.php
index 07f1a48fb0bb01dc978a9872b2dcdb4101cb7eea..0d189ac062ea4cbf9b42654edcd88867e38f3846 100644
--- a/apps/files_encryption/l10n/et_EE.php
+++ b/apps/files_encryption/l10n/et_EE.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Krüpteerimine",
+"File encryption is enabled." => "Faili krüpteerimine on sisse lülitatud.",
+"The following file types will not be encrypted:" => "Järgnevaid failitüüpe ei krüpteerita:",
+"Exclude the following file types from encryption:" => "Järgnevaid failitüüpe ei krüpteerita:",
 "None" => "Pole"
 );
diff --git a/apps/files_encryption/l10n/eu.php b/apps/files_encryption/l10n/eu.php
index b4f7be2c840dc6539cf926f95eb9f7a7f93d358f..5a22b65728ef5d9d669b57dcd72559cda9830c60 100644
--- a/apps/files_encryption/l10n/eu.php
+++ b/apps/files_encryption/l10n/eu.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Enkriptazioa",
+"File encryption is enabled." => "Fitxategien enkriptazioa gaituta dago.",
+"The following file types will not be encrypted:" => "Hurrengo fitxategi motak ez dira enkriptatuko:",
+"Exclude the following file types from encryption:" => "Baztertu hurrengo fitxategi motak enkriptatzetik:",
 "None" => "Bat ere ez"
 );
diff --git a/apps/files_encryption/l10n/fi_FI.php b/apps/files_encryption/l10n/fi_FI.php
index 1e1dc4a1218def86d4fc6231dd9a24ebc8317c17..6352d396b3c1ae65fecc57a1ba2a689aace7863b 100644
--- a/apps/files_encryption/l10n/fi_FI.php
+++ b/apps/files_encryption/l10n/fi_FI.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Salaus",
+"File encryption is enabled." => "Tiedostojen salaus on käytössä.",
+"The following file types will not be encrypted:" => "Seuraavia tiedostotyyppejä ei salata:",
+"Exclude the following file types from encryption:" => "Älä salaa seuravia tiedostotyyppejä:",
 "None" => "Ei mitään"
 );
diff --git a/apps/files_encryption/l10n/gl.php b/apps/files_encryption/l10n/gl.php
index b240990f3d57fabbdd56abd3752432172a0209b4..3210f71545312e5b90b9677f90ecacd861e4d157 100644
--- a/apps/files_encryption/l10n/gl.php
+++ b/apps/files_encryption/l10n/gl.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Cifrado",
-"None" => "Nada"
+"File encryption is enabled." => "O cifrado de ficheiros está activado",
+"The following file types will not be encrypted:" => "Os seguintes tipos de ficheiros non van seren cifrados:",
+"Exclude the following file types from encryption:" => "Excluír os seguintes tipos de ficheiros do cifrado:",
+"None" => "Ningún"
 );
diff --git a/apps/files_encryption/l10n/hu_HU.php b/apps/files_encryption/l10n/hu_HU.php
index 46f990bf38ce0c801c28504c3822e6fd07e8a397..4043da108c0e0a991d2d1385f63eedb172779035 100644
--- a/apps/files_encryption/l10n/hu_HU.php
+++ b/apps/files_encryption/l10n/hu_HU.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Titkosítás",
+"File encryption is enabled." => "Az állományok titkosítása be van kapcsolva.",
+"The following file types will not be encrypted:" => "A következő fájltípusok nem kerülnek titkosításra:",
+"Exclude the following file types from encryption:" => "Zárjuk ki a titkosításból a következő fájltípusokat:",
 "None" => "Egyik sem"
 );
diff --git a/apps/files_encryption/l10n/pl.php b/apps/files_encryption/l10n/pl.php
index 505e8659f0893acaf0a65c063b17456df9c29630..2fa86f454f9bfbc1bbf6a361e3c44bc9b9f68739 100644
--- a/apps/files_encryption/l10n/pl.php
+++ b/apps/files_encryption/l10n/pl.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Szyfrowanie",
+"File encryption is enabled." => "Szyfrowanie plików jest włączone",
+"The following file types will not be encrypted:" => "Poniższe typy plików nie będą szyfrowane:",
+"Exclude the following file types from encryption:" => "Wyłącz poniższe typy plików z szyfrowania:",
 "None" => "Brak"
 );
diff --git a/apps/files_encryption/l10n/pt_BR.php b/apps/files_encryption/l10n/pt_BR.php
index 2b4af2a87729b6b8b5072ff7affd05255599ecfb..28807db72ce820c067840756b9e19ef6a3cf6d2a 100644
--- a/apps/files_encryption/l10n/pt_BR.php
+++ b/apps/files_encryption/l10n/pt_BR.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Criptografia",
+"File encryption is enabled." => "A criptografia de arquivos está ativada.",
+"The following file types will not be encrypted:" => "Os seguintes tipos de arquivo não serão criptografados:",
+"Exclude the following file types from encryption:" => "Excluir os seguintes tipos de arquivo da criptografia:",
 "None" => "Nenhuma"
 );
diff --git a/apps/files_encryption/l10n/pt_PT.php b/apps/files_encryption/l10n/pt_PT.php
index 75ecd7f4da35c20c2b7cdf0da74d95d65ddb2b68..1c46011fc10b48b628dd03826aa913e6f5e9d9a2 100644
--- a/apps/files_encryption/l10n/pt_PT.php
+++ b/apps/files_encryption/l10n/pt_PT.php
@@ -1,4 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Encriptação",
+"File encryption is enabled." => "A encriptação de ficheiros está ligada",
+"The following file types will not be encrypted:" => "Os seguintes ficheiros não serão encriptados:",
+"Exclude the following file types from encryption:" => "Excluir da encriptação os seguintes tipos de ficheiro:",
 "None" => "Nenhum"
 );
diff --git a/apps/files_encryption/l10n/sk_SK.php b/apps/files_encryption/l10n/sk_SK.php
index 004c3b129a551083cfdcefe56c2d41a5844345aa..bebb6234710dc2146021ca6a95dcc86a77a658cd 100644
--- a/apps/files_encryption/l10n/sk_SK.php
+++ b/apps/files_encryption/l10n/sk_SK.php
@@ -1,7 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Encryption" => "Šifrovanie",
-"File encryption is enabled." => "Kryptovanie súborov nastavené.",
-"The following file types will not be encrypted:" => "Uvedené typy súborov nebudú kryptované:",
-"Exclude the following file types from encryption:" => "Nekryptovať uvedené typy súborov",
+"File encryption is enabled." => "Šifrovanie súborov nastavené.",
+"The following file types will not be encrypted:" => "Uvedené typy súborov nebudú šifrované:",
+"Exclude the following file types from encryption:" => "Nešifrovať uvedené typy súborov",
 "None" => "Žiadne"
 );
diff --git a/apps/files_encryption/lib/crypt.php b/apps/files_encryption/lib/crypt.php
index c7a414c5080926a9b17ca9a18870c1efcf94f74f..437a18669e5f2e8d67bb46a9b01752b0873f896b 100755
--- a/apps/files_encryption/lib/crypt.php
+++ b/apps/files_encryption/lib/crypt.php
@@ -692,4 +692,4 @@ class Crypt {
 
 	}
 
-}
\ No newline at end of file
+}
diff --git a/apps/files_external/3rdparty/phpseclib/AUTHORS b/apps/files_external/3rdparty/phpseclib/AUTHORS
new file mode 100644
index 0000000000000000000000000000000000000000..7bae8ab94e1a2b05c0fe3f81f7897dfc114af773
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/AUTHORS
@@ -0,0 +1,3 @@
+phpseclib Lead Developer:  TerraFrost (Jim Wigginton)
+
+phpseclib Developers:      monnerat (Patrick Monnerat)
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/LICENSE b/apps/files_external/3rdparty/phpseclib/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..6ecd9b9bec11f7587fd76974810a90bb7faad537
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/LICENSE
@@ -0,0 +1,21 @@
+Copyright 2007-2012 TerraFrost and other contributors
+http://phpseclib.sourceforge.net/
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/README.md b/apps/files_external/3rdparty/phpseclib/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fbd58bd82b1f2c1b3cc25c13994359c12325e56c
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/README.md
@@ -0,0 +1,16 @@
+# phpseclib - PHP Secure Communications Library
+
+[![Build Status](https://secure.travis-ci.org/phpseclib/phpseclib.png?branch=master)](http://travis-ci.org/phpseclib/phpseclib)
+
+MIT-licensed pure-PHP implementations of an arbitrary-precision integer
+arithmetic library, fully PKCS#1 (v2.1) compliant RSA, DES, 3DES, RC4, Rijndael,
+AES, SSH-1, SSH-2, SFTP, and X.509
+
+* [Download (0.3.1)](http://sourceforge.net/projects/phpseclib/files/phpseclib0.3.1.zip/download)
+* [Browse Git](https://github.com/phpseclib/phpseclib)
+* [Documentation](http://phpseclib.sourceforge.net/)
+* [Support](http://www.frostjedi.com/phpbb/viewforum.php?f=46)
+* [Code Coverage Report](http://phpseclib.bantux.org/code_coverage/latest/)
+
+<img src="http://phpseclib.sourceforge.net/pear-icon.png" alt="PEAR Channel" width="16" height="16">
+PEAR Channel: [phpseclib.sourceforge.net](http://phpseclib.sourceforge.net/pear.htm)
diff --git a/apps/files_external/3rdparty/phpseclib/composer.json b/apps/files_external/3rdparty/phpseclib/composer.json
new file mode 100644
index 0000000000000000000000000000000000000000..11008cd81d1279b744b109df6bb094bb3d6d75e0
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/composer.json
@@ -0,0 +1,48 @@
+{
+    "name": "phpseclib/phpseclib",
+    "type": "library",
+    "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
+    "keywords": [
+        "security",
+        "crypto",
+        "cryptography",
+        "encryption",
+        "signature",
+        "signing",
+        "rsa",
+        "aes",
+        "ssh",
+        "sftp",
+        "x509",
+        "x.509",
+        "asn1",
+        "asn.1",
+        "BigInteger"
+        ],
+    "homepage": "http://phpseclib.sourceforge.net",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Jim Wigginton",
+            "email": "terrafrost@php.net",
+            "role": "Developer"
+        }
+    ],
+    "require": {
+        "php": ">=5.0.0"
+    },
+    "suggest": {
+        "ext-mcrypt": "Install the Mcrypt extension in order to speed up a wide variety of cryptographic operations.",
+        "ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.",
+        "pear-pear/PHP_Compat": "Install PHP_Compat to get phpseclib working on PHP >= 4.3.3." 
+    },
+    "include-path": ["phpseclib/"],
+    "autoload": {
+        "psr-0": {
+            "Crypt": "phpseclib/",
+            "File": "phpseclib/",
+            "Math": "phpseclib/",
+            "Net": "phpseclib/"
+        }
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/AES.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/AES.php
new file mode 100644
index 0000000000000000000000000000000000000000..bc05adf67a710925749176d6c1c2a595a9c4f274
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/AES.php
@@ -0,0 +1,946 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of AES.
+ *
+ * Uses mcrypt, if available, and an internal implementation, otherwise.
+ *
+ * PHP versions 4 and 5
+ *
+ * If {@link Crypt_AES::setKeyLength() setKeyLength()} isn't called, it'll be calculated from
+ * {@link Crypt_AES::setKey() setKey()}.  ie. if the key is 128-bits, the key length will be 128-bits.  If it's 136-bits
+ * it'll be null-padded to 160-bits and 160 bits will be the key length until {@link Crypt_Rijndael::setKey() setKey()}
+ * is called, again, at which point, it'll be recalculated.
+ *
+ * Since Crypt_AES extends Crypt_Rijndael, some functions are available to be called that, in the context of AES, don't
+ * make a whole lot of sense.  {@link Crypt_AES::setBlockLength() setBlockLength()}, for instance.  Calling that function,
+ * however possible, won't do anything (AES has a fixed block length whereas Rijndael has a variable one).
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/AES.php');
+ *
+ *    $aes = new Crypt_AES();
+ *
+ *    $aes->setKey('abcdefghijklmnop');
+ *
+ *    $size = 10 * 1024;
+ *    $plaintext = '';
+ *    for ($i = 0; $i < $size; $i++) {
+ *        $plaintext.= 'a';
+ *    }
+ *
+ *    echo $aes->decrypt($aes->encrypt($plaintext));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_AES
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVIII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: AES.php,v 1.7 2010/02/09 06:10:25 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Crypt_Rijndael
+ */
+if (!class_exists('Crypt_Rijndael')) {
+    require_once 'Rijndael.php';
+}
+
+/**#@+
+ * @access public
+ * @see Crypt_AES::encrypt()
+ * @see Crypt_AES::decrypt()
+ */
+/**
+ * Encrypt / decrypt using the Counter mode.
+ *
+ * Set to -1 since that's what Crypt/Random.php uses to index the CTR mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Counter_.28CTR.29
+ */
+define('CRYPT_AES_MODE_CTR', -1);
+/**
+ * Encrypt / decrypt using the Electronic Code Book mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Electronic_codebook_.28ECB.29
+ */
+define('CRYPT_AES_MODE_ECB', 1);
+/**
+ * Encrypt / decrypt using the Code Book Chaining mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher-block_chaining_.28CBC.29
+ */
+define('CRYPT_AES_MODE_CBC', 2);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher_feedback_.28CFB.29
+ */
+define('CRYPT_AES_MODE_CFB', 3);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Output_feedback_.28OFB.29
+ */
+define('CRYPT_AES_MODE_OFB', 4);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_AES::Crypt_AES()
+ */
+/**
+ * Toggles the internal implementation
+ */
+define('CRYPT_AES_MODE_INTERNAL', 1);
+/**
+ * Toggles the mcrypt implementation
+ */
+define('CRYPT_AES_MODE_MCRYPT', 2);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of AES.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_AES
+ */
+class Crypt_AES extends Crypt_Rijndael {
+    /**
+     * mcrypt resource for encryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_AES::encrypt()
+     * @var String
+     * @access private
+     */
+    var $enmcrypt;
+
+    /**
+     * mcrypt resource for decryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_AES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $demcrypt;
+
+    /**
+     * mcrypt resource for CFB mode
+     *
+     * @see Crypt_AES::encrypt()
+     * @see Crypt_AES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $ecb;
+
+    /**
+     * The SubByte S-Box
+     *
+     * @see Crypt_AES::_encryptBlock()
+     * @var Array
+     * @access intern
+     */
+    var $sbox = array(
+        0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B, 0xFE, 0xD7, 0xAB, 0x76,
+        0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0, 0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0xA4, 0x72, 0xC0,
+        0xB7, 0xFD, 0x93, 0x26, 0x36, 0x3F, 0xF7, 0xCC, 0x34, 0xA5, 0xE5, 0xF1, 0x71, 0xD8, 0x31, 0x15,
+        0x04, 0xC7, 0x23, 0xC3, 0x18, 0x96, 0x05, 0x9A, 0x07, 0x12, 0x80, 0xE2, 0xEB, 0x27, 0xB2, 0x75,
+        0x09, 0x83, 0x2C, 0x1A, 0x1B, 0x6E, 0x5A, 0xA0, 0x52, 0x3B, 0xD6, 0xB3, 0x29, 0xE3, 0x2F, 0x84,
+        0x53, 0xD1, 0x00, 0xED, 0x20, 0xFC, 0xB1, 0x5B, 0x6A, 0xCB, 0xBE, 0x39, 0x4A, 0x4C, 0x58, 0xCF,
+        0xD0, 0xEF, 0xAA, 0xFB, 0x43, 0x4D, 0x33, 0x85, 0x45, 0xF9, 0x02, 0x7F, 0x50, 0x3C, 0x9F, 0xA8,
+        0x51, 0xA3, 0x40, 0x8F, 0x92, 0x9D, 0x38, 0xF5, 0xBC, 0xB6, 0xDA, 0x21, 0x10, 0xFF, 0xF3, 0xD2,
+        0xCD, 0x0C, 0x13, 0xEC, 0x5F, 0x97, 0x44, 0x17, 0xC4, 0xA7, 0x7E, 0x3D, 0x64, 0x5D, 0x19, 0x73,
+        0x60, 0x81, 0x4F, 0xDC, 0x22, 0x2A, 0x90, 0x88, 0x46, 0xEE, 0xB8, 0x14, 0xDE, 0x5E, 0x0B, 0xDB,
+        0xE0, 0x32, 0x3A, 0x0A, 0x49, 0x06, 0x24, 0x5C, 0xC2, 0xD3, 0xAC, 0x62, 0x91, 0x95, 0xE4, 0x79,
+        0xE7, 0xC8, 0x37, 0x6D, 0x8D, 0xD5, 0x4E, 0xA9, 0x6C, 0x56, 0xF4, 0xEA, 0x65, 0x7A, 0xAE, 0x08,
+        0xBA, 0x78, 0x25, 0x2E, 0x1C, 0xA6, 0xB4, 0xC6, 0xE8, 0xDD, 0x74, 0x1F, 0x4B, 0xBD, 0x8B, 0x8A,
+        0x70, 0x3E, 0xB5, 0x66, 0x48, 0x03, 0xF6, 0x0E, 0x61, 0x35, 0x57, 0xB9, 0x86, 0xC1, 0x1D, 0x9E,
+        0xE1, 0xF8, 0x98, 0x11, 0x69, 0xD9, 0x8E, 0x94, 0x9B, 0x1E, 0x87, 0xE9, 0xCE, 0x55, 0x28, 0xDF,
+        0x8C, 0xA1, 0x89, 0x0D, 0xBF, 0xE6, 0x42, 0x68, 0x41, 0x99, 0x2D, 0x0F, 0xB0, 0x54, 0xBB, 0x16
+    );
+
+    /**
+     * The inverse SubByte S-Box
+     *
+     * @see Crypt_AES::_decryptBlock()
+     * @var Array
+     * @access intern
+     */
+    var $isbox = array(
+        0x52, 0x09, 0x6A, 0xD5, 0x30, 0x36, 0xA5, 0x38, 0xBF, 0x40, 0xA3, 0x9E, 0x81, 0xF3, 0xD7, 0xFB,
+        0x7C, 0xE3, 0x39, 0x82, 0x9B, 0x2F, 0xFF, 0x87, 0x34, 0x8E, 0x43, 0x44, 0xC4, 0xDE, 0xE9, 0xCB,
+        0x54, 0x7B, 0x94, 0x32, 0xA6, 0xC2, 0x23, 0x3D, 0xEE, 0x4C, 0x95, 0x0B, 0x42, 0xFA, 0xC3, 0x4E,
+        0x08, 0x2E, 0xA1, 0x66, 0x28, 0xD9, 0x24, 0xB2, 0x76, 0x5B, 0xA2, 0x49, 0x6D, 0x8B, 0xD1, 0x25,
+        0x72, 0xF8, 0xF6, 0x64, 0x86, 0x68, 0x98, 0x16, 0xD4, 0xA4, 0x5C, 0xCC, 0x5D, 0x65, 0xB6, 0x92,
+        0x6C, 0x70, 0x48, 0x50, 0xFD, 0xED, 0xB9, 0xDA, 0x5E, 0x15, 0x46, 0x57, 0xA7, 0x8D, 0x9D, 0x84,
+        0x90, 0xD8, 0xAB, 0x00, 0x8C, 0xBC, 0xD3, 0x0A, 0xF7, 0xE4, 0x58, 0x05, 0xB8, 0xB3, 0x45, 0x06,
+        0xD0, 0x2C, 0x1E, 0x8F, 0xCA, 0x3F, 0x0F, 0x02, 0xC1, 0xAF, 0xBD, 0x03, 0x01, 0x13, 0x8A, 0x6B,
+        0x3A, 0x91, 0x11, 0x41, 0x4F, 0x67, 0xDC, 0xEA, 0x97, 0xF2, 0xCF, 0xCE, 0xF0, 0xB4, 0xE6, 0x73,
+        0x96, 0xAC, 0x74, 0x22, 0xE7, 0xAD, 0x35, 0x85, 0xE2, 0xF9, 0x37, 0xE8, 0x1C, 0x75, 0xDF, 0x6E,
+        0x47, 0xF1, 0x1A, 0x71, 0x1D, 0x29, 0xC5, 0x89, 0x6F, 0xB7, 0x62, 0x0E, 0xAA, 0x18, 0xBE, 0x1B,
+        0xFC, 0x56, 0x3E, 0x4B, 0xC6, 0xD2, 0x79, 0x20, 0x9A, 0xDB, 0xC0, 0xFE, 0x78, 0xCD, 0x5A, 0xF4,
+        0x1F, 0xDD, 0xA8, 0x33, 0x88, 0x07, 0xC7, 0x31, 0xB1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xEC, 0x5F,
+        0x60, 0x51, 0x7F, 0xA9, 0x19, 0xB5, 0x4A, 0x0D, 0x2D, 0xE5, 0x7A, 0x9F, 0x93, 0xC9, 0x9C, 0xEF,
+        0xA0, 0xE0, 0x3B, 0x4D, 0xAE, 0x2A, 0xF5, 0xB0, 0xC8, 0xEB, 0xBB, 0x3C, 0x83, 0x53, 0x99, 0x61,
+        0x17, 0x2B, 0x04, 0x7E, 0xBA, 0x77, 0xD6, 0x26, 0xE1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0C, 0x7D
+    );
+
+    /**
+     * Default Constructor.
+     *
+     * Determines whether or not the mcrypt extension should be used.  $mode should only, at present, be
+     * CRYPT_AES_MODE_ECB or CRYPT_AES_MODE_CBC.  If not explictly set, CRYPT_AES_MODE_CBC will be used.
+     *
+     * @param optional Integer $mode
+     * @return Crypt_AES
+     * @access public
+     */
+    function Crypt_AES($mode = CRYPT_AES_MODE_CBC)
+    {
+        if ( !defined('CRYPT_AES_MODE') ) {
+            switch (true) {
+                case extension_loaded('mcrypt') && in_array('rijndael-128', mcrypt_list_algorithms()):
+                    define('CRYPT_AES_MODE', CRYPT_AES_MODE_MCRYPT);
+                    break;
+                default:
+                    define('CRYPT_AES_MODE', CRYPT_AES_MODE_INTERNAL);
+            }
+        }
+
+        switch ( CRYPT_AES_MODE ) {
+            case CRYPT_AES_MODE_MCRYPT:
+                switch ($mode) {
+                    case CRYPT_AES_MODE_ECB:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_ECB;
+                        break;
+                    case CRYPT_AES_MODE_CTR:
+                        // ctr doesn't have a constant associated with it even though it appears to be fairly widely
+                        // supported.  in lieu of knowing just how widely supported it is, i've, for now, opted not to
+                        // include a compatibility layer.  the layer has been implemented but, for now, is commented out.
+                        $this->mode = 'ctr';
+                        //$this->mode = in_array('ctr', mcrypt_list_modes()) ? 'ctr' : CRYPT_AES_MODE_CTR;
+                        break;
+                    case CRYPT_AES_MODE_CFB:
+                        $this->mode = 'ncfb';
+                        break;
+                    case CRYPT_AES_MODE_OFB:
+                        $this->mode = MCRYPT_MODE_NOFB;
+                        break;
+                    case CRYPT_AES_MODE_CBC:
+                    default:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_CBC;
+                }
+
+                break;
+            default:
+                switch ($mode) {
+                    case CRYPT_AES_MODE_ECB:
+                        $this->paddable = true;
+                        $this->mode = CRYPT_RIJNDAEL_MODE_ECB;
+                        break;
+                    case CRYPT_AES_MODE_CTR:
+                        $this->mode = CRYPT_RIJNDAEL_MODE_CTR;
+                        break;
+                    case CRYPT_AES_MODE_CFB:
+                        $this->mode = CRYPT_RIJNDAEL_MODE_CFB;
+                        break;
+                    case CRYPT_AES_MODE_OFB:
+                        $this->mode = CRYPT_RIJNDAEL_MODE_OFB;
+                        break;
+                    case CRYPT_AES_MODE_CBC:
+                    default:
+                        $this->paddable = true;
+                        $this->mode = CRYPT_RIJNDAEL_MODE_CBC;
+                }
+        }
+
+        if (CRYPT_AES_MODE == CRYPT_AES_MODE_INTERNAL) {
+            parent::Crypt_Rijndael($this->mode);
+        }
+    }
+
+    /**
+     * Extended Crypt_Rijndael::_setup() 
+     *
+     * Optimizing the key schedule arrays ($w, $dw) for _encryptBlock() and _decryptBlock() after Crypt_Rijndael::_setup()
+     *
+     * @see Crypt_Rijndael::_setup()
+     * @access private
+     */
+    function _setup() 
+    {
+        if (!$this->changed) {
+            return;
+        }
+
+        $this->w = $this->dw = array();
+        parent::_setup();
+
+        $this->dw = array_reverse($this->dw);
+        $w  = array_pop($this->w);
+        $dw = array_pop($this->dw);
+        foreach ($this->w as $r => $wr) {
+            foreach ($wr as $c => $wc) {
+                $w[]  = $wc;
+                $dw[] = $this->dw[$r][$c];
+            }
+        }
+        $this->w  = $w;
+        $this->dw = $dw;
+    }
+
+    /**
+     * Dummy function
+     *
+     * Since Crypt_AES extends Crypt_Rijndael, this function is, technically, available, but it doesn't do anything.
+     *
+     * @access public
+     * @param Integer $length
+     */
+    function setBlockLength($length)
+    {
+        return;
+    }
+
+    /**
+     * Sets the initialization vector. (optional)
+     *
+     * SetIV is not required when CRYPT_RIJNDAEL_MODE_ECB is being used.  If not explictly set, it'll be assumed
+     * to be all zero's.
+     *
+     * @access public
+     * @param String $iv
+     */
+    function setIV($iv)
+    {
+        parent::setIV($iv);
+        if ( CRYPT_AES_MODE == CRYPT_AES_MODE_MCRYPT ) {
+            $this->changed = true;
+        }
+    }
+
+    /**
+     * Encrypts a message.
+     *
+     * $plaintext will be padded with up to 16 additional bytes.  Other AES implementations may or may not pad in the
+     * same manner.  Other common approaches to padding and the reasons why it's necessary are discussed in the following
+     * URL:
+     *
+     * {@link http://www.di-mgt.com.au/cryptopad.html http://www.di-mgt.com.au/cryptopad.html}
+     *
+     * An alternative to padding is to, separately, send the length of the file.  This is what SSH, in fact, does.
+     * strlen($plaintext) will still need to be a multiple of 16, however, arbitrary values can be added to make it that
+     * length.
+     *
+     * @see Crypt_AES::decrypt()
+     * @access public
+     * @param String $plaintext
+     */
+    function encrypt($plaintext)
+    {
+        if ( CRYPT_AES_MODE == CRYPT_AES_MODE_MCRYPT ) {
+            $this->_mcryptSetup();
+
+            // re: http://phpseclib.sourceforge.net/cfb-demo.phps
+            // using mcrypt's default handing of CFB the above would output two different things.  using phpseclib's
+            // rewritten CFB implementation the above outputs the same thing twice.
+            if ($this->mode == 'ncfb' && $this->continuousBuffer) {
+                $iv = &$this->encryptIV;
+                $pos = &$this->enbuffer['pos'];
+                $len = strlen($plaintext);
+                $ciphertext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 16 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $ciphertext = substr($iv, $orig_pos) ^ $plaintext;
+                    $iv = substr_replace($iv, $ciphertext, $orig_pos, $i);
+                    $this->enbuffer['enmcrypt_init'] = true;
+                }
+                if ($len >= 16) {
+                    if ($this->enbuffer['enmcrypt_init'] === false || $len > 280) {
+                        if ($this->enbuffer['enmcrypt_init'] === true) {
+                            mcrypt_generic_init($this->enmcrypt, $this->key, $iv);
+                            $this->enbuffer['enmcrypt_init'] = false;
+                        }
+                        $ciphertext.= mcrypt_generic($this->enmcrypt, substr($plaintext, $i, $len - $len % 16));
+                        $iv = substr($ciphertext, -16);
+                        $len%= 16;
+                    } else {
+                        while ($len >= 16) {
+                            $iv = mcrypt_generic($this->ecb, $iv) ^ substr($plaintext, $i, 16);
+                            $ciphertext.= $iv;
+                            $len-= 16;
+                            $i+= 16;
+                        }
+                    }
+                }
+
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $block = $iv ^ substr($plaintext, -$len);
+                    $iv = substr_replace($iv, $block, 0, $len);
+                    $ciphertext.= $block;
+                    $pos = $len;
+                }
+
+                return $ciphertext;
+            }
+
+            if ($this->paddable) {
+                $plaintext = $this->_pad($plaintext);
+            }
+
+            $ciphertext = mcrypt_generic($this->enmcrypt, $plaintext);
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->enmcrypt, $this->key, $this->iv);
+            }
+
+            return $ciphertext;
+        }
+
+        return parent::encrypt($plaintext);
+    }
+
+    /**
+     * Decrypts a message.
+     *
+     * If strlen($ciphertext) is not a multiple of 16, null bytes will be added to the end of the string until it is.
+     *
+     * @see Crypt_AES::encrypt()
+     * @access public
+     * @param String $ciphertext
+     */
+    function decrypt($ciphertext)
+    {
+        if ( CRYPT_AES_MODE == CRYPT_AES_MODE_MCRYPT ) {
+            $this->_mcryptSetup();
+
+            if ($this->mode == 'ncfb' && $this->continuousBuffer) {
+                $iv = &$this->decryptIV;
+                $pos = &$this->debuffer['pos'];
+                $len = strlen($ciphertext);
+                $plaintext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 16 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    // ie. $i = min($max, $len), $len-= $i, $pos+= $i, $pos%= $blocksize
+                    $plaintext = substr($iv, $orig_pos) ^ $ciphertext;
+                    $iv = substr_replace($iv, substr($ciphertext, 0, $i), $orig_pos, $i);
+                }
+                if ($len >= 16) {
+                    $cb = substr($ciphertext, $i, $len - $len % 16);
+                    $plaintext.= mcrypt_generic($this->ecb, $iv . $cb) ^ $cb;
+                    $iv = substr($cb, -16);
+                    $len%= 16;
+                }
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $plaintext.= $iv ^ substr($ciphertext, -$len);
+                    $iv = substr_replace($iv, substr($ciphertext, -$len), 0, $len);
+                    $pos = $len;
+                }
+
+                return $plaintext;
+            }
+
+            if ($this->paddable) {
+                // we pad with chr(0) since that's what mcrypt_generic does.  to quote from http://php.net/function.mcrypt-generic :
+                // "The data is padded with "\0" to make sure the length of the data is n * blocksize."
+                $ciphertext = str_pad($ciphertext, (strlen($ciphertext) + 15) & 0xFFFFFFF0, chr(0));
+            }
+
+            $plaintext = mdecrypt_generic($this->demcrypt, $ciphertext);
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->demcrypt, $this->key, $this->iv);
+            }
+
+            return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+        }
+
+        return parent::decrypt($ciphertext);
+    }
+
+    /**
+     * Setup mcrypt
+     *
+     * Validates all the variables.
+     *
+     * @access private
+     */
+    function _mcryptSetup()
+    {
+        if (!$this->changed) {
+            return;
+        }
+
+        if (!$this->explicit_key_length) {
+            // this just copied from Crypt_Rijndael::_setup()
+            $length = strlen($this->key) >> 2;
+            if ($length > 8) {
+                $length = 8;
+            } else if ($length < 4) {
+                $length = 4;
+            }
+            $this->Nk = $length;
+            $this->key_size = $length << 2;
+        }
+
+        switch ($this->Nk) {
+            case 4: // 128
+                $this->key_size = 16;
+                break;
+            case 5: // 160
+            case 6: // 192
+                $this->key_size = 24;
+                break;
+            case 7: // 224
+            case 8: // 256
+                $this->key_size = 32;
+        }
+
+        $this->key = str_pad(substr($this->key, 0, $this->key_size), $this->key_size, chr(0));
+        $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($this->iv, 0, 16), 16, chr(0));
+
+        if (!isset($this->enmcrypt)) {
+            $mode = $this->mode;
+            //$mode = $this->mode == CRYPT_AES_MODE_CTR ? MCRYPT_MODE_ECB : $this->mode;
+
+            $this->demcrypt = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', $mode, '');
+            $this->enmcrypt = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', $mode, '');
+
+            if ($mode == 'ncfb') {
+                $this->ecb = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_ECB, '');
+            }
+
+        } // else should mcrypt_generic_deinit be called?
+
+        mcrypt_generic_init($this->demcrypt, $this->key, $this->iv);
+        mcrypt_generic_init($this->enmcrypt, $this->key, $this->iv);
+
+        if ($this->mode == 'ncfb') {
+            mcrypt_generic_init($this->ecb, $this->key, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0");
+        }
+
+        $this->changed = false;
+    }
+
+    /**
+     * Encrypts a block
+     *
+     * Optimized over Crypt_Rijndael's implementation by means of loop unrolling.
+     *
+     * @see Crypt_Rijndael::_encryptBlock()
+     * @access private
+     * @param String $in
+     * @return String
+     */
+    function _encryptBlock($in)
+    {
+        $state = unpack('N*', $in);
+
+        $sbox = $this->sbox;
+        $w  = $this->w;
+        $t0 = $this->t0;
+        $t1 = $this->t1;
+        $t2 = $this->t2;
+        $t3 = $this->t3;
+
+        // addRoundKey
+        $s0 = $state[1] ^ $w[4];
+        $s1 = $state[2] ^ $w[5];
+        $s2 = $state[3] ^ $w[6];
+        $s3 = $state[4] ^ $w[7];
+
+        // shiftRows + subWord + mixColumns + addRoundKey
+        $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[8];
+        $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[9];
+        $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[10];
+        $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[11];
+
+        $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[12];
+        $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[13];
+        $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[14];
+        $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[15];
+
+        $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[16];
+        $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[17];
+        $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[18];
+        $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[19];
+
+        $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[20];
+        $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[21];
+        $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[22];
+        $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[23];
+
+        $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[24];
+        $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[25];
+        $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[26];
+        $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[27];
+
+        $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[28];
+        $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[29];
+        $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[30];
+        $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[31];
+
+        $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[32];
+        $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[33];
+        $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[34];
+        $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[35];
+
+        $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[36];
+        $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[37];
+        $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[38];
+        $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[39];
+
+        $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[40];
+        $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[41];
+        $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[42];
+        $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[43];
+
+        switch ($this->Nr) {
+            case 10:
+                break;
+
+            case 14:
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[44];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[45];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[46];
+                $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[47];
+
+                $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[48];
+                $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[49];
+                $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[50];
+                $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[51];
+
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[52];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[53];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[54];
+                $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[55];
+
+                $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[56];
+                $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[57];
+                $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[58];
+                $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[59];
+                break;
+
+            case 12:
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[44];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[45];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[46];
+                $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[47];
+
+                $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[48];
+                $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[49];
+                $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[50];
+                $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[51];
+                break;
+
+            case 13:
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[44];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[45];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[46];
+                $s3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[47];
+
+                $e0 = $t0[($s0 >> 24) & 0xff] ^ $t1[($s1 >> 16) & 0xff] ^ $t2[($s2 >> 8) & 0xff] ^ $t3[$s3 & 0xff] ^ $w[48];
+                $e1 = $t0[($s1 >> 24) & 0xff] ^ $t1[($s2 >> 16) & 0xff] ^ $t2[($s3 >> 8) & 0xff] ^ $t3[$s0 & 0xff] ^ $w[49];
+                $e2 = $t0[($s2 >> 24) & 0xff] ^ $t1[($s3 >> 16) & 0xff] ^ $t2[($s0 >> 8) & 0xff] ^ $t3[$s1 & 0xff] ^ $w[50];
+                $e3 = $t0[($s3 >> 24) & 0xff] ^ $t1[($s0 >> 16) & 0xff] ^ $t2[($s1 >> 8) & 0xff] ^ $t3[$s2 & 0xff] ^ $w[51];
+
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[52];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[53];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[54];
+                $e3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[55];
+                // Note: Here we skip $s3 but using $e3
+
+                $e0 = $s0;
+                $e1 = $s1;
+                $e2 = $s2;
+                // $e3 = $s3;
+                break;
+
+            default: // 11
+                $s0 = $t0[($e0 >> 24) & 0xff] ^ $t1[($e1 >> 16) & 0xff] ^ $t2[($e2 >> 8) & 0xff] ^ $t3[$e3 & 0xff] ^ $w[44];
+                $s1 = $t0[($e1 >> 24) & 0xff] ^ $t1[($e2 >> 16) & 0xff] ^ $t2[($e3 >> 8) & 0xff] ^ $t3[$e0 & 0xff] ^ $w[45];
+                $s2 = $t0[($e2 >> 24) & 0xff] ^ $t1[($e3 >> 16) & 0xff] ^ $t2[($e0 >> 8) & 0xff] ^ $t3[$e1 & 0xff] ^ $w[46];
+                $e3 = $t0[($e3 >> 24) & 0xff] ^ $t1[($e0 >> 16) & 0xff] ^ $t2[($e1 >> 8) & 0xff] ^ $t3[$e2 & 0xff] ^ $w[47];
+                // Note: Here we skip $s3 but using $e3
+
+                $e0 = $s0;
+                $e1 = $s1;
+                $e2 = $s2;
+                // $e3 = $s3;
+        }
+
+        // subWord
+        $e0 = $sbox[$e0 & 0xff] | ($sbox[($e0 >> 8) & 0xff] << 8) | ($sbox[($e0 >> 16) & 0xff] << 16) | ($sbox[($e0 >> 24) & 0xff] << 24);
+        $e1 = $sbox[$e1 & 0xff] | ($sbox[($e1 >> 8) & 0xff] << 8) | ($sbox[($e1 >> 16) & 0xff] << 16) | ($sbox[($e1 >> 24) & 0xff] << 24);
+        $e2 = $sbox[$e2 & 0xff] | ($sbox[($e2 >> 8) & 0xff] << 8) | ($sbox[($e2 >> 16) & 0xff] << 16) | ($sbox[($e2 >> 24) & 0xff] << 24);
+        $e3 = $sbox[$e3 & 0xff] | ($sbox[($e3 >> 8) & 0xff] << 8) | ($sbox[($e3 >> 16) & 0xff] << 16) | ($sbox[($e3 >> 24) & 0xff] << 24);
+
+        // shiftRows + addRoundKey
+        return pack('N*',
+            ($e0 & 0xFF000000) ^ ($e1 & 0x00FF0000) ^ ($e2 & 0x0000FF00) ^ ($e3 & 0x000000FF) ^ $w[0],
+            ($e1 & 0xFF000000) ^ ($e2 & 0x00FF0000) ^ ($e3 & 0x0000FF00) ^ ($e0 & 0x000000FF) ^ $w[1],
+            ($e2 & 0xFF000000) ^ ($e3 & 0x00FF0000) ^ ($e0 & 0x0000FF00) ^ ($e1 & 0x000000FF) ^ $w[2],
+            ($e3 & 0xFF000000) ^ ($e0 & 0x00FF0000) ^ ($e1 & 0x0000FF00) ^ ($e2 & 0x000000FF) ^ $w[3]
+        );
+    }
+
+    /**
+     * Decrypts a block
+     *
+     * Optimized over Crypt_Rijndael's implementation by means of loop unrolling.
+     *
+     * @see Crypt_Rijndael::_decryptBlock()
+     * @access private
+     * @param String $in
+     * @return String
+     */
+    function _decryptBlock($in)
+    {
+        $state = unpack('N*', $in);
+
+        $sbox = $this->isbox;
+        $dw  = $this->dw;
+        $dt0 = $this->dt0;
+        $dt1 = $this->dt1;
+        $dt2 = $this->dt2;
+        $dt3 = $this->dt3;
+
+        // addRoundKey
+        $s0 = $state[1] ^ $dw[4];
+        $s1 = $state[2] ^ $dw[5];
+        $s2 = $state[3] ^ $dw[6];
+        $s3 = $state[4] ^ $dw[7];
+
+        // invShiftRows + invSubBytes + invMixColumns + addRoundKey
+        $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[8];
+        $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[9];
+        $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[10];
+        $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[11];
+
+        $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[12];
+        $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[13];
+        $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[14];
+        $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[15];
+
+        $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[16];
+        $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[17];
+        $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[18];
+        $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[19];
+
+        $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[20];
+        $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[21];
+        $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[22];
+        $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[23];
+
+        $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[24];
+        $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[25];
+        $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[26];
+        $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[27];
+
+        $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[28];
+        $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[29];
+        $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[30];
+        $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[31];
+
+        $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[32];
+        $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[33];
+        $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[34];
+        $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[35];
+
+        $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[36];
+        $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[37];
+        $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[38];
+        $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[39];
+
+        $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[40];
+        $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[41];
+        $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[42];
+        $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[43];
+
+        switch ($this->Nr) {
+            case 10:
+                break;
+
+            case 14:
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[44];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[45];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[46];
+                $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[47];
+
+                $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[48];
+                $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[49];
+                $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[50];
+                $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[51];
+
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[52];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[53];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[54];
+                $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[55];
+
+                $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[56];
+                $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[57];
+                $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[58];
+                $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[59];
+                break;
+
+            case 12:
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[44];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[45];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[46];
+                $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[47];
+
+                $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[48];
+                $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[49];
+                $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[50];
+                $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[51];
+                break;
+
+            case 13:
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[44];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[45];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[46];
+                $s3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[47];
+
+                $e0 = $dt0[($s0 >> 24) & 0xff] ^ $dt1[($s3 >> 16) & 0xff] ^ $dt2[($s2 >> 8) & 0xff] ^ $dt3[$s1 & 0xff] ^ $dw[48];
+                $e1 = $dt0[($s1 >> 24) & 0xff] ^ $dt1[($s0 >> 16) & 0xff] ^ $dt2[($s3 >> 8) & 0xff] ^ $dt3[$s2 & 0xff] ^ $dw[49];
+                $e2 = $dt0[($s2 >> 24) & 0xff] ^ $dt1[($s1 >> 16) & 0xff] ^ $dt2[($s0 >> 8) & 0xff] ^ $dt3[$s3 & 0xff] ^ $dw[50];
+                $e3 = $dt0[($s3 >> 24) & 0xff] ^ $dt1[($s2 >> 16) & 0xff] ^ $dt2[($s1 >> 8) & 0xff] ^ $dt3[$s0 & 0xff] ^ $dw[51];
+
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[52];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[53];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[54];
+                $e3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[55];
+                // Note: Here we skip $s3 but using $e3
+
+                $e0 = $s0;
+                $e1 = $s1;
+                $e2 = $s2;
+                // $e3 = $s3;
+                break;
+
+            default: // 11
+                $s0 = $dt0[($e0 >> 24) & 0xff] ^ $dt1[($e3 >> 16) & 0xff] ^ $dt2[($e2 >> 8) & 0xff] ^ $dt3[$e1 & 0xff] ^ $dw[44];
+                $s1 = $dt0[($e1 >> 24) & 0xff] ^ $dt1[($e0 >> 16) & 0xff] ^ $dt2[($e3 >> 8) & 0xff] ^ $dt3[$e2 & 0xff] ^ $dw[45];
+                $s2 = $dt0[($e2 >> 24) & 0xff] ^ $dt1[($e1 >> 16) & 0xff] ^ $dt2[($e0 >> 8) & 0xff] ^ $dt3[$e3 & 0xff] ^ $dw[46];
+                $e3 = $dt0[($e3 >> 24) & 0xff] ^ $dt1[($e2 >> 16) & 0xff] ^ $dt2[($e1 >> 8) & 0xff] ^ $dt3[$e0 & 0xff] ^ $dw[47];
+                // Note: Here we skip $s3 but using $e3
+
+                $e0 = $s0;
+                $e1 = $s1;
+                $e2 = $s2;
+                // $e3 = $s3;
+        }
+
+        // invSubWord
+        $e0 = $sbox[$e0 & 0xff] | ($sbox[($e0 >> 8) & 0xff] << 8) | ($sbox[($e0 >> 16) & 0xff] << 16) | ($sbox[($e0 >> 24) & 0xff] << 24);
+        $e1 = $sbox[$e1 & 0xff] | ($sbox[($e1 >> 8) & 0xff] << 8) | ($sbox[($e1 >> 16) & 0xff] << 16) | ($sbox[($e1 >> 24) & 0xff] << 24);
+        $e2 = $sbox[$e2 & 0xff] | ($sbox[($e2 >> 8) & 0xff] << 8) | ($sbox[($e2 >> 16) & 0xff] << 16) | ($sbox[($e2 >> 24) & 0xff] << 24);
+        $e3 = $sbox[$e3 & 0xff] | ($sbox[($e3 >> 8) & 0xff] << 8) | ($sbox[($e3 >> 16) & 0xff] << 16) | ($sbox[($e3 >> 24) & 0xff] << 24);
+
+        // invShiftRows + addRoundKey
+        return pack('N*',
+            ($e0 & 0xFF000000) ^ ($e3 & 0x00FF0000) ^ ($e2 & 0x0000FF00) ^ ($e1 & 0x000000FF) ^ $dw[0],
+            ($e1 & 0xFF000000) ^ ($e0 & 0x00FF0000) ^ ($e3 & 0x0000FF00) ^ ($e2 & 0x000000FF) ^ $dw[1],
+            ($e2 & 0xFF000000) ^ ($e1 & 0x00FF0000) ^ ($e0 & 0x0000FF00) ^ ($e3 & 0x000000FF) ^ $dw[2],
+            ($e3 & 0xFF000000) ^ ($e2 & 0x00FF0000) ^ ($e1 & 0x0000FF00) ^ ($e0 & 0x000000FF) ^ $dw[3]
+        );
+    }
+
+    /**
+     * Treat consecutive "packets" as if they are a continuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_Rijndael::disableContinuousBuffer()
+     * @access public
+     */
+    function enableContinuousBuffer()
+    {
+        parent::enableContinuousBuffer();
+
+        if (CRYPT_AES_MODE == CRYPT_AES_MODE_MCRYPT) {
+            $this->enbuffer['enmcrypt_init'] = true;
+            $this->debuffer['demcrypt_init'] = true;
+        }
+    }
+
+    /**
+     * Treat consecutive packets as if they are a discontinuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_Rijndael::enableContinuousBuffer()
+     * @access public
+     */
+    function disableContinuousBuffer()
+    {
+        parent::disableContinuousBuffer();
+
+        if (CRYPT_AES_MODE == CRYPT_AES_MODE_MCRYPT) {
+            mcrypt_generic_init($this->enmcrypt, $this->key, $this->iv);
+            mcrypt_generic_init($this->demcrypt, $this->key, $this->iv);
+        }
+    }
+}
+
+// vim: ts=4:sw=4:et:
+// vim6: fdl=1:
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/DES.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/DES.php
new file mode 100644
index 0000000000000000000000000000000000000000..1197a50ab72df4c032eb87a1168ce77458452f85
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/DES.php
@@ -0,0 +1,1334 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of DES.
+ *
+ * Uses mcrypt, if available, and an internal implementation, otherwise.
+ *
+ * PHP versions 4 and 5
+ *
+ * Useful resources are as follows:
+ *
+ *  - {@link http://en.wikipedia.org/wiki/DES_supplementary_material Wikipedia: DES supplementary material}
+ *  - {@link http://www.itl.nist.gov/fipspubs/fip46-2.htm FIPS 46-2 - (DES), Data Encryption Standard}
+ *  - {@link http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS-DES.html JavaScript DES Example}
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/DES.php');
+ *
+ *    $des = new Crypt_DES();
+ *
+ *    $des->setKey('abcdefgh');
+ *
+ *    $size = 10 * 1024;
+ *    $plaintext = '';
+ *    for ($i = 0; $i < $size; $i++) {
+ *        $plaintext.= 'a';
+ *    }
+ *
+ *    echo $des->decrypt($des->encrypt($plaintext));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_DES
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: DES.php,v 1.12 2010/02/09 06:10:26 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**#@+
+ * @access private
+ * @see Crypt_DES::_prepareKey()
+ * @see Crypt_DES::_processBlock()
+ */
+/**
+ * Contains array_reverse($keys[CRYPT_DES_DECRYPT])
+ */
+define('CRYPT_DES_ENCRYPT', 0);
+/**
+ * Contains array_reverse($keys[CRYPT_DES_ENCRYPT])
+ */
+define('CRYPT_DES_DECRYPT', 1);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Crypt_DES::encrypt()
+ * @see Crypt_DES::decrypt()
+ */
+/**
+ * Encrypt / decrypt using the Counter mode.
+ *
+ * Set to -1 since that's what Crypt/Random.php uses to index the CTR mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Counter_.28CTR.29
+ */
+define('CRYPT_DES_MODE_CTR', -1);
+/**
+ * Encrypt / decrypt using the Electronic Code Book mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Electronic_codebook_.28ECB.29
+ */
+define('CRYPT_DES_MODE_ECB', 1);
+/**
+ * Encrypt / decrypt using the Code Book Chaining mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher-block_chaining_.28CBC.29
+ */
+define('CRYPT_DES_MODE_CBC', 2);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher_feedback_.28CFB.29
+ */
+define('CRYPT_DES_MODE_CFB', 3);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Output_feedback_.28OFB.29
+ */
+define('CRYPT_DES_MODE_OFB', 4);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_DES::Crypt_DES()
+ */
+/**
+ * Toggles the internal implementation
+ */
+define('CRYPT_DES_MODE_INTERNAL', 1);
+/**
+ * Toggles the mcrypt implementation
+ */
+define('CRYPT_DES_MODE_MCRYPT', 2);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of DES.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_DES
+ */
+class Crypt_DES {
+    /**
+     * The Key Schedule
+     *
+     * @see Crypt_DES::setKey()
+     * @var Array
+     * @access private
+     */
+    var $keys = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * The Encryption Mode
+     *
+     * @see Crypt_DES::Crypt_DES()
+     * @var Integer
+     * @access private
+     */
+    var $mode;
+
+    /**
+     * Continuous Buffer status
+     *
+     * @see Crypt_DES::enableContinuousBuffer()
+     * @var Boolean
+     * @access private
+     */
+    var $continuousBuffer = false;
+
+    /**
+     * Padding status
+     *
+     * @see Crypt_DES::enablePadding()
+     * @var Boolean
+     * @access private
+     */
+    var $padding = true;
+
+    /**
+     * The Initialization Vector
+     *
+     * @see Crypt_DES::setIV()
+     * @var String
+     * @access private
+     */
+    var $iv = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_DES::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $encryptIV = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_DES::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $decryptIV = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * mcrypt resource for encryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_DES::encrypt()
+     * @var String
+     * @access private
+     */
+    var $enmcrypt;
+
+    /**
+     * mcrypt resource for decryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_DES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $demcrypt;
+
+    /**
+     * Does the enmcrypt resource need to be (re)initialized?
+     *
+     * @see Crypt_DES::setKey()
+     * @see Crypt_DES::setIV()
+     * @var Boolean
+     * @access private
+     */
+    var $enchanged = true;
+
+    /**
+     * Does the demcrypt resource need to be (re)initialized?
+     *
+     * @see Crypt_DES::setKey()
+     * @see Crypt_DES::setIV()
+     * @var Boolean
+     * @access private
+     */
+    var $dechanged = true;
+
+    /**
+     * Is the mode one that is paddable?
+     *
+     * @see Crypt_DES::Crypt_DES()
+     * @var Boolean
+     * @access private
+     */
+    var $paddable = false;
+
+    /**
+     * Encryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_DES::encrypt()
+     * @var Array
+     * @access private
+     */
+    var $enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0, 'enmcrypt_init' => true);
+
+    /**
+     * Decryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_DES::decrypt()
+     * @var Array
+     * @access private
+     */
+    var $debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0, 'demcrypt_init' => true);
+
+    /**
+     * mcrypt resource for CFB mode
+     *
+     * @see Crypt_DES::encrypt()
+     * @see Crypt_DES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $ecb;
+
+    /**
+     * Default Constructor.
+     *
+     * Determines whether or not the mcrypt extension should be used.  $mode should only, at present, be
+     * CRYPT_DES_MODE_ECB or CRYPT_DES_MODE_CBC.  If not explictly set, CRYPT_DES_MODE_CBC will be used.
+     *
+     * @param optional Integer $mode
+     * @return Crypt_DES
+     * @access public
+     */
+    function Crypt_DES($mode = CRYPT_DES_MODE_CBC)
+    {
+        if ( !defined('CRYPT_DES_MODE') ) {
+            switch (true) {
+                case extension_loaded('mcrypt') && in_array('des', mcrypt_list_algorithms()):
+                    define('CRYPT_DES_MODE', CRYPT_DES_MODE_MCRYPT);
+                    break;
+                default:
+                    define('CRYPT_DES_MODE', CRYPT_DES_MODE_INTERNAL);
+            }
+        }
+
+        switch ( CRYPT_DES_MODE ) {
+            case CRYPT_DES_MODE_MCRYPT:
+                switch ($mode) {
+                    case CRYPT_DES_MODE_ECB:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_ECB;
+                        break;
+                    case CRYPT_DES_MODE_CTR:
+                        $this->mode = 'ctr';
+                        //$this->mode = in_array('ctr', mcrypt_list_modes()) ? 'ctr' : CRYPT_DES_MODE_CTR;
+                        break;
+                    case CRYPT_DES_MODE_CFB:
+                        $this->mode = 'ncfb';
+                        $this->ecb = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_ECB, '');
+                        break;
+                    case CRYPT_DES_MODE_OFB:
+                        $this->mode = MCRYPT_MODE_NOFB;
+                        break;
+                    case CRYPT_DES_MODE_CBC:
+                    default:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_CBC;
+                }
+                $this->enmcrypt = mcrypt_module_open(MCRYPT_DES, '', $this->mode, '');
+                $this->demcrypt = mcrypt_module_open(MCRYPT_DES, '', $this->mode, '');
+
+                break;
+            default:
+                switch ($mode) {
+                    case CRYPT_DES_MODE_ECB:
+                    case CRYPT_DES_MODE_CBC:
+                        $this->paddable = true;
+                        $this->mode = $mode;
+                        break;
+                    case CRYPT_DES_MODE_CTR:
+                    case CRYPT_DES_MODE_CFB:
+                    case CRYPT_DES_MODE_OFB:
+                        $this->mode = $mode;
+                        break;
+                    default:
+                        $this->paddable = true;
+                        $this->mode = CRYPT_DES_MODE_CBC;
+                }
+        }
+    }
+
+    /**
+     * Sets the key.
+     *
+     * Keys can be of any length.  DES, itself, uses 64-bit keys (eg. strlen($key) == 8), however, we
+     * only use the first eight, if $key has more then eight characters in it, and pad $key with the
+     * null byte if it is less then eight characters long.
+     *
+     * DES also requires that every eighth bit be a parity bit, however, we'll ignore that.
+     *
+     * If the key is not explicitly set, it'll be assumed to be all zero's.
+     *
+     * @access public
+     * @param String $key
+     */
+    function setKey($key)
+    {
+        $this->keys = ( CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT ) ? str_pad(substr($key, 0, 8), 8, chr(0)) : $this->_prepareKey($key);
+        $this->enchanged = true;
+        $this->dechanged = true;
+    }
+
+    /**
+     * Sets the password.
+     *
+     * Depending on what $method is set to, setPassword()'s (optional) parameters are as follows:
+     *     {@link http://en.wikipedia.org/wiki/PBKDF2 pbkdf2}:
+     *         $hash, $salt, $count
+     *
+     * @param String $password
+     * @param optional String $method
+     * @access public
+     */
+    function setPassword($password, $method = 'pbkdf2')
+    {
+        $key = '';
+
+        switch ($method) {
+            default: // 'pbkdf2'
+                list(, , $hash, $salt, $count) = func_get_args();
+                if (!isset($hash)) {
+                    $hash = 'sha1';
+                }
+                // WPA and WPA2 use the SSID as the salt
+                if (!isset($salt)) {
+                    $salt = 'phpseclib/salt';
+                }
+                // RFC2898#section-4.2 uses 1,000 iterations by default
+                // WPA and WPA2 use 4,096.
+                if (!isset($count)) {
+                    $count = 1000;
+                }
+
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+
+                $i = 1;
+                while (strlen($key) < 8) { // $dkLen == 8
+                    //$dk.= $this->_pbkdf($password, $salt, $count, $i++);
+                    $hmac = new Crypt_Hash();
+                    $hmac->setHash($hash);
+                    $hmac->setKey($password);
+                    $f = $u = $hmac->hash($salt . pack('N', $i++));
+                    for ($j = 2; $j <= $count; $j++) {
+                        $u = $hmac->hash($u);
+                        $f^= $u;
+                    }
+                    $key.= $f;
+                }
+        }
+
+        $this->setKey($key);
+    }
+
+    /**
+     * Sets the initialization vector. (optional)
+     *
+     * SetIV is not required when CRYPT_DES_MODE_ECB is being used.  If not explictly set, it'll be assumed
+     * to be all zero's.
+     *
+     * @access public
+     * @param String $iv
+     */
+    function setIV($iv)
+    {
+        $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($iv, 0, 8), 8, chr(0));
+        $this->enchanged = true;
+        $this->dechanged = true;
+    }
+
+    /**
+     * Generate CTR XOR encryption key
+     *
+     * Encrypt the output of this and XOR it against the ciphertext / plaintext to get the
+     * plaintext / ciphertext in CTR mode.
+     *
+     * @see Crypt_DES::decrypt()
+     * @see Crypt_DES::encrypt()
+     * @access public
+     * @param String $iv
+     */
+    function _generate_xor(&$iv)
+    {
+        $xor = $iv;
+        for ($j = 4; $j <= 8; $j+=4) {
+            $temp = substr($iv, -$j, 4);
+            switch ($temp) {
+                case "\xFF\xFF\xFF\xFF":
+                    $iv = substr_replace($iv, "\x00\x00\x00\x00", -$j, 4);
+                    break;
+                case "\x7F\xFF\xFF\xFF":
+                    $iv = substr_replace($iv, "\x80\x00\x00\x00", -$j, 4);
+                    break 2;
+                default:
+                    extract(unpack('Ncount', $temp));
+                    $iv = substr_replace($iv, pack('N', $count + 1), -$j, 4);
+                    break 2;
+            }
+        }
+
+        return $xor;
+    }
+
+    /**
+     * Encrypts a message.
+     *
+     * $plaintext will be padded with up to 8 additional bytes.  Other DES implementations may or may not pad in the
+     * same manner.  Other common approaches to padding and the reasons why it's necessary are discussed in the following
+     * URL:
+     *
+     * {@link http://www.di-mgt.com.au/cryptopad.html http://www.di-mgt.com.au/cryptopad.html}
+     *
+     * An alternative to padding is to, separately, send the length of the file.  This is what SSH, in fact, does.
+     * strlen($plaintext) will still need to be a multiple of 8, however, arbitrary values can be added to make it that
+     * length.
+     *
+     * @see Crypt_DES::decrypt()
+     * @access public
+     * @param String $plaintext
+     */
+    function encrypt($plaintext)
+    {
+        if ($this->paddable) {
+            $plaintext = $this->_pad($plaintext);
+        }
+
+        if ( CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT ) {
+            if ($this->enchanged) {
+                mcrypt_generic_init($this->enmcrypt, $this->keys, $this->encryptIV);
+                if ($this->mode == 'ncfb') {
+                    mcrypt_generic_init($this->ecb, $this->keys, "\0\0\0\0\0\0\0\0");
+                }
+                $this->enchanged = false;
+            }
+
+            if ($this->mode != 'ncfb' || !$this->continuousBuffer) {
+                $ciphertext = mcrypt_generic($this->enmcrypt, $plaintext);
+            } else {
+                $iv = &$this->encryptIV;
+                $pos = &$this->enbuffer['pos'];
+                $len = strlen($plaintext);
+                $ciphertext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $ciphertext = substr($iv, $orig_pos) ^ $plaintext;
+                    $iv = substr_replace($iv, $ciphertext, $orig_pos, $i);
+                    $this->enbuffer['enmcrypt_init'] = true;
+                }
+                if ($len >= 8) {
+                    if ($this->enbuffer['enmcrypt_init'] === false || $len > 600) {
+                        if ($this->enbuffer['enmcrypt_init'] === true) {
+                            mcrypt_generic_init($this->enmcrypt, $this->keys, $iv);
+                            $this->enbuffer['enmcrypt_init'] = false;
+                        }
+                        $ciphertext.= mcrypt_generic($this->enmcrypt, substr($plaintext, $i, $len - $len % 8));
+                        $iv = substr($ciphertext, -8);
+                        $len%= 8;
+                    } else {
+                        while ($len >= 8) {
+                            $iv = mcrypt_generic($this->ecb, $iv) ^ substr($plaintext, $i, 8);
+                            $ciphertext.= $iv;
+                            $len-= 8;
+                            $i+= 8;
+                        }
+                    }
+                } 
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $block = $iv ^ substr($plaintext, -$len);
+                    $iv = substr_replace($iv, $block, 0, $len);
+                    $ciphertext.= $block;
+                    $pos = $len;
+                }
+                return $ciphertext;
+            }
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->enmcrypt, $this->keys, $this->encryptIV);
+            }
+
+            return $ciphertext;
+        }
+
+        if (!is_array($this->keys)) {
+            $this->keys = $this->_prepareKey("\0\0\0\0\0\0\0\0");
+        }
+
+        $buffer = &$this->enbuffer;
+        $continuousBuffer = $this->continuousBuffer;
+        $ciphertext = '';
+        switch ($this->mode) {
+            case CRYPT_DES_MODE_ECB:
+                for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                    $ciphertext.= $this->_processBlock(substr($plaintext, $i, 8), CRYPT_DES_ENCRYPT);
+                }
+                break;
+            case CRYPT_DES_MODE_CBC:
+                $xor = $this->encryptIV;
+                for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                    $block = substr($plaintext, $i, 8);
+                    $block = $this->_processBlock($block ^ $xor, CRYPT_DES_ENCRYPT);
+                    $xor = $block;
+                    $ciphertext.= $block;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                }
+                break;
+            case CRYPT_DES_MODE_CTR:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['encrypted'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $block = substr($plaintext, $i, 8);
+                        $buffer['encrypted'].= $this->_processBlock($this->_generate_xor($xor), CRYPT_DES_ENCRYPT);
+                        $key = $this->_string_shift($buffer['encrypted'], 8);
+                        $ciphertext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $block = substr($plaintext, $i, 8);
+                        $key = $this->_processBlock($this->_generate_xor($xor), CRYPT_DES_ENCRYPT);
+                        $ciphertext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) & 7) {
+                        $buffer['encrypted'] = substr($key, $start) . $buffer['encrypted'];
+                    }
+                }
+                break;
+            case CRYPT_DES_MODE_CFB:
+                if ($this->continuousBuffer) {
+                    $iv = &$this->encryptIV;
+                    $pos = &$buffer['pos'];
+                } else {
+                    $iv = $this->encryptIV;
+                    $pos = 0;
+                }
+                $len = strlen($plaintext);
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $ciphertext = substr($iv, $orig_pos) ^ $plaintext;
+                    $iv = substr_replace($iv, $ciphertext, $orig_pos, $i);
+                }
+                while ($len >= 8) {
+                    $iv = $this->_processBlock($iv, CRYPT_DES_ENCRYPT) ^ substr($plaintext, $i, 8);
+                    $ciphertext.= $iv;
+                    $len-= 8;
+                    $i+= 8;
+                }
+                if ($len) {
+                    $iv = $this->_processBlock($iv, CRYPT_DES_ENCRYPT);
+                    $block = $iv ^ substr($plaintext, $i);
+                    $iv = substr_replace($iv, $block, 0, $len);
+                    $ciphertext.= $block;
+                    $pos = $len;
+                }
+                return $ciphertext;
+            case CRYPT_DES_MODE_OFB:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $xor = $this->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], 8);
+                        $ciphertext.= substr($plaintext, $i, 8) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $xor = $this->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $ciphertext.= substr($plaintext, $i, 8) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) & 7) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $ciphertext;
+    }
+
+    /**
+     * Decrypts a message.
+     *
+     * If strlen($ciphertext) is not a multiple of 8, null bytes will be added to the end of the string until it is.
+     *
+     * @see Crypt_DES::encrypt()
+     * @access public
+     * @param String $ciphertext
+     */
+    function decrypt($ciphertext)
+    {
+        if ($this->paddable) {
+            // we pad with chr(0) since that's what mcrypt_generic does.  to quote from http://php.net/function.mcrypt-generic :
+            // "The data is padded with "\0" to make sure the length of the data is n * blocksize."
+            $ciphertext = str_pad($ciphertext, (strlen($ciphertext) + 7) & 0xFFFFFFF8, chr(0));
+        }
+
+        if ( CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT ) {
+            if ($this->dechanged) {
+                mcrypt_generic_init($this->demcrypt, $this->keys, $this->decryptIV);
+                if ($this->mode == 'ncfb') {
+                    mcrypt_generic_init($this->ecb, $this->keys, "\0\0\0\0\0\0\0\0");
+                }
+                $this->dechanged = false;
+            }
+
+            if ($this->mode != 'ncfb' || !$this->continuousBuffer) {
+                $plaintext = mdecrypt_generic($this->demcrypt, $ciphertext);
+            } else {
+                $iv = &$this->decryptIV;
+                $pos = &$this->debuffer['pos'];
+                $len = strlen($ciphertext);
+                $plaintext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $plaintext = substr($iv, $orig_pos) ^ $ciphertext;
+                    $iv = substr_replace($iv, substr($ciphertext, 0, $i), $orig_pos, $i);
+                }
+                if ($len >= 8) {
+                    $cb = substr($ciphertext, $i, $len - $len % 8);
+                    $plaintext.= mcrypt_generic($this->ecb, $iv . $cb) ^ $cb;
+                    $iv = substr($cb, -8);
+                    $len%= 8;
+                }
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $plaintext.= $iv ^ substr($ciphertext, -$len);
+                    $iv = substr_replace($iv, substr($ciphertext, -$len), 0, $len);
+                    $pos = $len;
+                }
+                return $plaintext;
+            }
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->demcrypt, $this->keys, $this->decryptIV);
+            }
+
+            return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+        }
+
+        if (!is_array($this->keys)) {
+            $this->keys = $this->_prepareKey("\0\0\0\0\0\0\0\0");
+        }
+
+        $buffer = &$this->debuffer;
+        $continuousBuffer = $this->continuousBuffer;
+        $plaintext = '';
+        switch ($this->mode) {
+            case CRYPT_DES_MODE_ECB:
+                for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                    $plaintext.= $this->_processBlock(substr($ciphertext, $i, 8), CRYPT_DES_DECRYPT);
+                }
+                break;
+            case CRYPT_DES_MODE_CBC:
+                $xor = $this->decryptIV;
+                for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                    $block = substr($ciphertext, $i, 8);
+                    $plaintext.= $this->_processBlock($block, CRYPT_DES_DECRYPT) ^ $xor;
+                    $xor = $block;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                }
+                break;
+            case CRYPT_DES_MODE_CTR:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['ciphertext'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $block = substr($ciphertext, $i, 8);
+                        $buffer['ciphertext'].= $this->_processBlock($this->_generate_xor($xor), CRYPT_DES_ENCRYPT);
+                        $key = $this->_string_shift($buffer['ciphertext'], 8);
+                        $plaintext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $block = substr($ciphertext, $i, 8);
+                        $key = $this->_processBlock($this->_generate_xor($xor), CRYPT_DES_ENCRYPT);
+                        $plaintext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($ciphertext) % 8) {
+                        $buffer['ciphertext'] = substr($key, $start) . $buffer['ciphertext'];
+                    }
+                }
+                break;
+            case CRYPT_DES_MODE_CFB:
+                if ($this->continuousBuffer) {
+                    $iv = &$this->decryptIV;
+                    $pos = &$buffer['pos'];
+                } else {
+                    $iv = $this->decryptIV;
+                    $pos = 0;
+                }
+                $len = strlen($ciphertext);
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $plaintext = substr($iv, $orig_pos) ^ $ciphertext;
+                    $iv = substr_replace($iv, substr($ciphertext, 0, $i), $orig_pos, $i);
+                }
+                while ($len >= 8) {
+                    $iv = $this->_processBlock($iv, CRYPT_DES_ENCRYPT);
+                    $cb = substr($ciphertext, $i, 8);
+                    $plaintext.= $iv ^ $cb;
+                    $iv = $cb;
+                    $len-= 8;
+                    $i+= 8;
+                }
+                if ($len) {
+                    $iv = $this->_processBlock($iv, CRYPT_DES_ENCRYPT);
+                    $plaintext.= $iv ^ substr($ciphertext, $i);
+                    $iv = substr_replace($iv, substr($ciphertext, $i), 0, $len);
+                    $pos = $len;
+                }
+                return $plaintext;
+            case CRYPT_DES_MODE_OFB:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $xor = $this->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], 8);
+                        $plaintext.= substr($ciphertext, $i, 8) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $xor = $this->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $plaintext.= substr($ciphertext, $i, 8) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($ciphertext) % 8) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+    }
+
+    /**
+     * Treat consecutive "packets" as if they are a continuous buffer.
+     *
+     * Say you have a 16-byte plaintext $plaintext.  Using the default behavior, the two following code snippets
+     * will yield different outputs:
+     *
+     * <code>
+     *    echo $des->encrypt(substr($plaintext, 0, 8));
+     *    echo $des->encrypt(substr($plaintext, 8, 8));
+     * </code>
+     * <code>
+     *    echo $des->encrypt($plaintext);
+     * </code>
+     *
+     * The solution is to enable the continuous buffer.  Although this will resolve the above discrepancy, it creates
+     * another, as demonstrated with the following:
+     *
+     * <code>
+     *    $des->encrypt(substr($plaintext, 0, 8));
+     *    echo $des->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     * <code>
+     *    echo $des->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     *
+     * With the continuous buffer disabled, these would yield the same output.  With it enabled, they yield different
+     * outputs.  The reason is due to the fact that the initialization vector's change after every encryption /
+     * decryption round when the continuous buffer is enabled.  When it's disabled, they remain constant.
+     *
+     * Put another way, when the continuous buffer is enabled, the state of the Crypt_DES() object changes after each
+     * encryption / decryption round, whereas otherwise, it'd remain constant.  For this reason, it's recommended that
+     * continuous buffers not be used.  They do offer better security and are, in fact, sometimes required (SSH uses them),
+     * however, they are also less intuitive and more likely to cause you problems.
+     *
+     * @see Crypt_DES::disableContinuousBuffer()
+     * @access public
+     */
+    function enableContinuousBuffer()
+    {
+        $this->continuousBuffer = true;
+    }
+
+    /**
+     * Treat consecutive packets as if they are a discontinuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_DES::enableContinuousBuffer()
+     * @access public
+     */
+    function disableContinuousBuffer()
+    {
+        $this->continuousBuffer = false;
+        $this->encryptIV = $this->iv;
+        $this->decryptIV = $this->iv;
+        $this->enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0, 'enmcrypt_init' => true);
+        $this->debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0, 'demcrypt_init' => true);
+
+        if (CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT) {
+            mcrypt_generic_init($this->enmcrypt, $this->keys, $this->iv);
+            mcrypt_generic_init($this->demcrypt, $this->keys, $this->iv);
+        }
+    }
+
+    /**
+     * Pad "packets".
+     *
+     * DES works by encrypting eight bytes at a time.  If you ever need to encrypt or decrypt something that's not
+     * a multiple of eight, it becomes necessary to pad the input so that it's length is a multiple of eight.
+     *
+     * Padding is enabled by default.  Sometimes, however, it is undesirable to pad strings.  Such is the case in SSH1,
+     * where "packets" are padded with random bytes before being encrypted.  Unpad these packets and you risk stripping
+     * away characters that shouldn't be stripped away. (SSH knows how many bytes are added because the length is
+     * transmitted separately)
+     *
+     * @see Crypt_DES::disablePadding()
+     * @access public
+     */
+    function enablePadding()
+    {
+        $this->padding = true;
+    }
+
+    /**
+     * Do not pad packets.
+     *
+     * @see Crypt_DES::enablePadding()
+     * @access public
+     */
+    function disablePadding()
+    {
+        $this->padding = false;
+    }
+
+    /**
+     * Pads a string
+     *
+     * Pads a string using the RSA PKCS padding standards so that its length is a multiple of the blocksize (8).
+     * 8 - (strlen($text) & 7) bytes are added, each of which is equal to chr(8 - (strlen($text) & 7)
+     *
+     * If padding is disabled and $text is not a multiple of the blocksize, the string will be padded regardless
+     * and padding will, hence forth, be enabled.
+     *
+     * @see Crypt_DES::_unpad()
+     * @access private
+     */
+    function _pad($text)
+    {
+        $length = strlen($text);
+
+        if (!$this->padding) {
+            if (($length & 7) == 0) {
+                return $text;
+            } else {
+                user_error("The plaintext's length ($length) is not a multiple of the block size (8)");
+                $this->padding = true;
+            }
+        }
+
+        $pad = 8 - ($length & 7);
+        return str_pad($text, $length + $pad, chr($pad));
+    }
+
+    /**
+     * Unpads a string
+     *
+     * If padding is enabled and the reported padding length is invalid the encryption key will be assumed to be wrong
+     * and false will be returned.
+     *
+     * @see Crypt_DES::_pad()
+     * @access private
+     */
+    function _unpad($text)
+    {
+        if (!$this->padding) {
+            return $text;
+        }
+
+        $length = ord($text[strlen($text) - 1]);
+
+        if (!$length || $length > 8) {
+            return false;
+        }
+
+        return substr($text, 0, -$length);
+    }
+
+    /**
+     * Encrypts or decrypts a 64-bit block
+     *
+     * $mode should be either CRYPT_DES_ENCRYPT or CRYPT_DES_DECRYPT.  See
+     * {@link http://en.wikipedia.org/wiki/Image:Feistel.png Feistel.png} to get a general
+     * idea of what this function does.
+     *
+     * @access private
+     * @param String $block
+     * @param Integer $mode
+     * @return String
+     */
+    function _processBlock($block, $mode)
+    {
+        // s-boxes.  in the official DES docs, they're described as being matrices that
+        // one accesses by using the first and last bits to determine the row and the
+        // middle four bits to determine the column.  in this implementation, they've
+        // been converted to vectors
+        static $sbox = array(
+            array(
+                14,  0,  4, 15, 13,  7,  1,  4,  2, 14, 15,  2, 11, 13,  8,  1,
+                 3, 10 ,10,  6,  6, 12, 12, 11,  5,  9,  9,  5,  0,  3,  7,  8,
+                 4, 15,  1, 12, 14,  8,  8,  2, 13,  4,  6,  9,  2,  1, 11,  7,
+                15,  5, 12, 11,  9,  3,  7, 14,  3, 10, 10,  0,  5,  6,  0, 13
+            ),
+            array(
+                15,  3,  1, 13,  8,  4, 14,  7,  6, 15, 11,  2,  3,  8,  4, 14,
+                 9, 12,  7,  0,  2,  1, 13, 10, 12,  6,  0,  9,  5, 11, 10,  5,
+                 0, 13, 14,  8,  7, 10, 11,  1, 10,  3,  4, 15, 13,  4,  1,  2,
+                 5, 11,  8,  6, 12,  7,  6, 12,  9,  0,  3,  5,  2, 14, 15,  9
+            ),
+            array(
+                10, 13,  0,  7,  9,  0, 14,  9,  6,  3,  3,  4, 15,  6,  5, 10,
+                 1,  2, 13,  8, 12,  5,  7, 14, 11, 12,  4, 11,  2, 15,  8,  1,
+                13,  1,  6, 10,  4, 13,  9,  0,  8,  6, 15,  9,  3,  8,  0,  7,
+                11,  4,  1, 15,  2, 14, 12,  3,  5, 11, 10,  5, 14,  2,  7, 12
+            ),
+            array(
+                 7, 13, 13,  8, 14, 11,  3,  5,  0,  6,  6, 15,  9,  0, 10,  3,
+                 1,  4,  2,  7,  8,  2,  5, 12, 11,  1, 12, 10,  4, 14, 15,  9,
+                10,  3,  6, 15,  9,  0,  0,  6, 12, 10, 11,  1,  7, 13, 13,  8,
+                15,  9,  1,  4,  3,  5, 14, 11,  5, 12,  2,  7,  8,  2,  4, 14
+            ),
+            array(
+                 2, 14, 12, 11,  4,  2,  1, 12,  7,  4, 10,  7, 11, 13,  6,  1,
+                 8,  5,  5,  0,  3, 15, 15, 10, 13,  3,  0,  9, 14,  8,  9,  6,
+                 4, 11,  2,  8,  1, 12, 11,  7, 10,  1, 13, 14,  7,  2,  8, 13,
+                15,  6,  9, 15, 12,  0,  5,  9,  6, 10,  3,  4,  0,  5, 14,  3
+            ),
+            array(
+                12, 10,  1, 15, 10,  4, 15,  2,  9,  7,  2, 12,  6,  9,  8,  5,
+                 0,  6, 13,  1,  3, 13,  4, 14, 14,  0,  7, 11,  5,  3, 11,  8,
+                 9,  4, 14,  3, 15,  2,  5, 12,  2,  9,  8,  5, 12, 15,  3, 10,
+                 7, 11,  0, 14,  4,  1, 10,  7,  1,  6, 13,  0, 11,  8,  6, 13
+            ),
+            array(
+                 4, 13, 11,  0,  2, 11, 14,  7, 15,  4,  0,  9,  8,  1, 13, 10,
+                 3, 14, 12,  3,  9,  5,  7, 12,  5,  2, 10, 15,  6,  8,  1,  6,
+                 1,  6,  4, 11, 11, 13, 13,  8, 12,  1,  3,  4,  7, 10, 14,  7,
+                10,  9, 15,  5,  6,  0,  8, 15,  0, 14,  5,  2,  9,  3,  2, 12
+            ),
+            array(
+                13,  1,  2, 15,  8, 13,  4,  8,  6, 10, 15,  3, 11,  7,  1,  4,
+                10, 12,  9,  5,  3,  6, 14, 11,  5,  0,  0, 14, 12,  9,  7,  2,
+                 7,  2, 11,  1,  4, 14,  1,  7,  9,  4, 12, 10, 14,  8,  2, 13,
+                 0, 15,  6, 12, 10,  9, 13,  0, 15,  3,  3,  5,  5,  6,  8, 11
+            )
+        );
+
+        $keys = $this->keys;
+
+        $temp = unpack('Na/Nb', $block);
+        $block = array($temp['a'], $temp['b']);
+
+        // because php does arithmetic right shifts, if the most significant bits are set, right
+        // shifting those into the correct position will add 1's - not 0's.  this will intefere
+        // with the | operation unless a second & is done.  so we isolate these bits and left shift
+        // them into place.  we then & each block with 0x7FFFFFFF to prevennt 1's from being added
+        // for any other shifts.
+        $msb = array(
+            ($block[0] >> 31) & 1,
+            ($block[1] >> 31) & 1
+        );
+        $block[0] &= 0x7FFFFFFF;
+        $block[1] &= 0x7FFFFFFF;
+
+        // we isolate the appropriate bit in the appropriate integer and shift as appropriate.  in
+        // some cases, there are going to be multiple bits in the same integer that need to be shifted
+        // in the same way.  we combine those into one shift operation.
+        $block = array(
+            (($block[1] & 0x00000040) << 25) | (($block[1] & 0x00004000) << 16) |
+            (($block[1] & 0x00400001) <<  7) | (($block[1] & 0x40000100) >>  2) |
+            (($block[0] & 0x00000040) << 21) | (($block[0] & 0x00004000) << 12) |
+            (($block[0] & 0x00400001) <<  3) | (($block[0] & 0x40000100) >>  6) |
+            (($block[1] & 0x00000010) << 19) | (($block[1] & 0x00001000) << 10) |
+            (($block[1] & 0x00100000) <<  1) | (($block[1] & 0x10000000) >>  8) |
+            (($block[0] & 0x00000010) << 15) | (($block[0] & 0x00001000) <<  6) |
+            (($block[0] & 0x00100000) >>  3) | (($block[0] & 0x10000000) >> 12) |
+            (($block[1] & 0x00000004) << 13) | (($block[1] & 0x00000400) <<  4) |
+            (($block[1] & 0x00040000) >>  5) | (($block[1] & 0x04000000) >> 14) |
+            (($block[0] & 0x00000004) <<  9) | ( $block[0] & 0x00000400       ) |
+            (($block[0] & 0x00040000) >>  9) | (($block[0] & 0x04000000) >> 18) |
+            (($block[1] & 0x00010000) >> 11) | (($block[1] & 0x01000000) >> 20) |
+            (($block[0] & 0x00010000) >> 15) | (($block[0] & 0x01000000) >> 24)
+        ,
+            (($block[1] & 0x00000080) << 24) | (($block[1] & 0x00008000) << 15) |
+            (($block[1] & 0x00800002) <<  6) | (($block[0] & 0x00000080) << 20) |
+            (($block[0] & 0x00008000) << 11) | (($block[0] & 0x00800002) <<  2) |
+            (($block[1] & 0x00000020) << 18) | (($block[1] & 0x00002000) <<  9) |
+            ( $block[1] & 0x00200000       ) | (($block[1] & 0x20000000) >>  9) |
+            (($block[0] & 0x00000020) << 14) | (($block[0] & 0x00002000) <<  5) |
+            (($block[0] & 0x00200000) >>  4) | (($block[0] & 0x20000000) >> 13) |
+            (($block[1] & 0x00000008) << 12) | (($block[1] & 0x00000800) <<  3) |
+            (($block[1] & 0x00080000) >>  6) | (($block[1] & 0x08000000) >> 15) |
+            (($block[0] & 0x00000008) <<  8) | (($block[0] & 0x00000800) >>  1) |
+            (($block[0] & 0x00080000) >> 10) | (($block[0] & 0x08000000) >> 19) |
+            (($block[1] & 0x00000200) >>  3) | (($block[0] & 0x00000200) >>  7) |
+            (($block[1] & 0x00020000) >> 12) | (($block[1] & 0x02000000) >> 21) |
+            (($block[0] & 0x00020000) >> 16) | (($block[0] & 0x02000000) >> 25) |
+            ($msb[1] << 28) | ($msb[0] << 24)
+        );
+
+        for ($i = 0; $i < 16; $i++) {
+            // start of "the Feistel (F) function" - see the following URL:
+            // http://en.wikipedia.org/wiki/Image:Data_Encryption_Standard_InfoBox_Diagram.png
+            $temp = (($sbox[0][((($block[1] >> 27) & 0x1F) | (($block[1] & 1) << 5)) ^ $keys[$mode][$i][0]]) << 28)
+                  | (($sbox[1][(($block[1] & 0x1F800000) >> 23) ^ $keys[$mode][$i][1]]) << 24)
+                  | (($sbox[2][(($block[1] & 0x01F80000) >> 19) ^ $keys[$mode][$i][2]]) << 20)
+                  | (($sbox[3][(($block[1] & 0x001F8000) >> 15) ^ $keys[$mode][$i][3]]) << 16)
+                  | (($sbox[4][(($block[1] & 0x0001F800) >> 11) ^ $keys[$mode][$i][4]]) << 12)
+                  | (($sbox[5][(($block[1] & 0x00001F80) >>  7) ^ $keys[$mode][$i][5]]) <<  8)
+                  | (($sbox[6][(($block[1] & 0x000001F8) >>  3) ^ $keys[$mode][$i][6]]) <<  4)
+                  | ( $sbox[7][((($block[1] & 0x1F) << 1) | (($block[1] >> 31) & 1)) ^ $keys[$mode][$i][7]]);
+
+            $msb = ($temp >> 31) & 1;
+            $temp &= 0x7FFFFFFF;
+            $newBlock = (($temp & 0x00010000) << 15) | (($temp & 0x02020120) <<  5)
+                      | (($temp & 0x00001800) << 17) | (($temp & 0x01000000) >> 10)
+                      | (($temp & 0x00000008) << 24) | (($temp & 0x00100000) <<  6)
+                      | (($temp & 0x00000010) << 21) | (($temp & 0x00008000) <<  9)
+                      | (($temp & 0x00000200) << 12) | (($temp & 0x10000000) >> 27)
+                      | (($temp & 0x00000040) << 14) | (($temp & 0x08000000) >>  8)
+                      | (($temp & 0x00004000) <<  4) | (($temp & 0x00000002) << 16)
+                      | (($temp & 0x00442000) >>  6) | (($temp & 0x40800000) >> 15)
+                      | (($temp & 0x00000001) << 11) | (($temp & 0x20000000) >> 20)
+                      | (($temp & 0x00080000) >> 13) | (($temp & 0x00000004) <<  3)
+                      | (($temp & 0x04000000) >> 22) | (($temp & 0x00000480) >>  7)
+                      | (($temp & 0x00200000) >> 19) | ($msb << 23);
+            // end of "the Feistel (F) function" - $newBlock is F's output
+
+            $temp = $block[1];
+            $block[1] = $block[0] ^ $newBlock;
+            $block[0] = $temp;
+        }
+
+        $msb = array(
+            ($block[0] >> 31) & 1,
+            ($block[1] >> 31) & 1
+        );
+        $block[0] &= 0x7FFFFFFF;
+        $block[1] &= 0x7FFFFFFF;
+
+        $block = array(
+            (($block[0] & 0x01000004) <<  7) | (($block[1] & 0x01000004) <<  6) |
+            (($block[0] & 0x00010000) << 13) | (($block[1] & 0x00010000) << 12) |
+            (($block[0] & 0x00000100) << 19) | (($block[1] & 0x00000100) << 18) |
+            (($block[0] & 0x00000001) << 25) | (($block[1] & 0x00000001) << 24) |
+            (($block[0] & 0x02000008) >>  2) | (($block[1] & 0x02000008) >>  3) |
+            (($block[0] & 0x00020000) <<  4) | (($block[1] & 0x00020000) <<  3) |
+            (($block[0] & 0x00000200) << 10) | (($block[1] & 0x00000200) <<  9) |
+            (($block[0] & 0x00000002) << 16) | (($block[1] & 0x00000002) << 15) |
+            (($block[0] & 0x04000000) >> 11) | (($block[1] & 0x04000000) >> 12) |
+            (($block[0] & 0x00040000) >>  5) | (($block[1] & 0x00040000) >>  6) |
+            (($block[0] & 0x00000400) <<  1) | ( $block[1] & 0x00000400       ) |
+            (($block[0] & 0x08000000) >> 20) | (($block[1] & 0x08000000) >> 21) |
+            (($block[0] & 0x00080000) >> 14) | (($block[1] & 0x00080000) >> 15) |
+            (($block[0] & 0x00000800) >>  8) | (($block[1] & 0x00000800) >>  9)
+        ,
+            (($block[0] & 0x10000040) <<  3) | (($block[1] & 0x10000040) <<  2) |
+            (($block[0] & 0x00100000) <<  9) | (($block[1] & 0x00100000) <<  8) |
+            (($block[0] & 0x00001000) << 15) | (($block[1] & 0x00001000) << 14) |
+            (($block[0] & 0x00000010) << 21) | (($block[1] & 0x00000010) << 20) |
+            (($block[0] & 0x20000080) >>  6) | (($block[1] & 0x20000080) >>  7) |
+            ( $block[0] & 0x00200000       ) | (($block[1] & 0x00200000) >>  1) |
+            (($block[0] & 0x00002000) <<  6) | (($block[1] & 0x00002000) <<  5) |
+            (($block[0] & 0x00000020) << 12) | (($block[1] & 0x00000020) << 11) |
+            (($block[0] & 0x40000000) >> 15) | (($block[1] & 0x40000000) >> 16) |
+            (($block[0] & 0x00400000) >>  9) | (($block[1] & 0x00400000) >> 10) |
+            (($block[0] & 0x00004000) >>  3) | (($block[1] & 0x00004000) >>  4) |
+            (($block[0] & 0x00800000) >> 18) | (($block[1] & 0x00800000) >> 19) |
+            (($block[0] & 0x00008000) >> 12) | (($block[1] & 0x00008000) >> 13) |
+            ($msb[0] <<  7) | ($msb[1] <<  6)
+        );
+
+        return pack('NN', $block[0], $block[1]);
+    }
+
+    /**
+     * Creates the key schedule.
+     *
+     * @access private
+     * @param String $key
+     * @return Array
+     */
+    function _prepareKey($key)
+    {
+        static $shifts = array( // number of key bits shifted per round
+            1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1
+        );
+
+        // pad the key and remove extra characters as appropriate.
+        $key = str_pad(substr($key, 0, 8), 8, chr(0));
+
+        $temp = unpack('Na/Nb', $key);
+        $key = array($temp['a'], $temp['b']);
+        $msb = array(
+            ($key[0] >> 31) & 1,
+            ($key[1] >> 31) & 1
+        );
+        $key[0] &= 0x7FFFFFFF;
+        $key[1] &= 0x7FFFFFFF;
+
+        $key = array(
+            (($key[1] & 0x00000002) << 26) | (($key[1] & 0x00000204) << 17) |
+            (($key[1] & 0x00020408) <<  8) | (($key[1] & 0x02040800) >>  1) |
+            (($key[0] & 0x00000002) << 22) | (($key[0] & 0x00000204) << 13) |
+            (($key[0] & 0x00020408) <<  4) | (($key[0] & 0x02040800) >>  5) |
+            (($key[1] & 0x04080000) >> 10) | (($key[0] & 0x04080000) >> 14) |
+            (($key[1] & 0x08000000) >> 19) | (($key[0] & 0x08000000) >> 23) |
+            (($key[0] & 0x00000010) >>  1) | (($key[0] & 0x00001000) >> 10) |
+            (($key[0] & 0x00100000) >> 19) | (($key[0] & 0x10000000) >> 28)
+        ,
+            (($key[1] & 0x00000080) << 20) | (($key[1] & 0x00008000) << 11) |
+            (($key[1] & 0x00800000) <<  2) | (($key[0] & 0x00000080) << 16) |
+            (($key[0] & 0x00008000) <<  7) | (($key[0] & 0x00800000) >>  2) |
+            (($key[1] & 0x00000040) << 13) | (($key[1] & 0x00004000) <<  4) |
+            (($key[1] & 0x00400000) >>  5) | (($key[1] & 0x40000000) >> 14) |
+            (($key[0] & 0x00000040) <<  9) | ( $key[0] & 0x00004000       ) |
+            (($key[0] & 0x00400000) >>  9) | (($key[0] & 0x40000000) >> 18) |
+            (($key[1] & 0x00000020) <<  6) | (($key[1] & 0x00002000) >>  3) |
+            (($key[1] & 0x00200000) >> 12) | (($key[1] & 0x20000000) >> 21) |
+            (($key[0] & 0x00000020) <<  2) | (($key[0] & 0x00002000) >>  7) |
+            (($key[0] & 0x00200000) >> 16) | (($key[0] & 0x20000000) >> 25) |
+            (($key[1] & 0x00000010) >>  1) | (($key[1] & 0x00001000) >> 10) |
+            (($key[1] & 0x00100000) >> 19) | (($key[1] & 0x10000000) >> 28) |
+            ($msb[1] << 24) | ($msb[0] << 20)
+        ); 
+
+        $keys = array();
+        for ($i = 0; $i < 16; $i++) {
+            $key[0] <<= $shifts[$i];
+            $temp = ($key[0] & 0xF0000000) >> 28;
+            $key[0] = ($key[0] | $temp) & 0x0FFFFFFF;
+
+            $key[1] <<= $shifts[$i];
+            $temp = ($key[1] & 0xF0000000) >> 28;
+            $key[1] = ($key[1] | $temp) & 0x0FFFFFFF;
+
+            $temp = array(
+                (($key[1] & 0x00004000) >>  9) | (($key[1] & 0x00000800) >>  7) |
+                (($key[1] & 0x00020000) >> 14) | (($key[1] & 0x00000010) >>  2) |
+                (($key[1] & 0x08000000) >> 26) | (($key[1] & 0x00800000) >> 23)
+            ,
+                (($key[1] & 0x02400000) >> 20) | (($key[1] & 0x00000001) <<  4) |
+                (($key[1] & 0x00002000) >> 10) | (($key[1] & 0x00040000) >> 18) |
+                (($key[1] & 0x00000080) >>  6)
+            ,
+                ( $key[1] & 0x00000020       ) | (($key[1] & 0x00000200) >>  5) |
+                (($key[1] & 0x00010000) >> 13) | (($key[1] & 0x01000000) >> 22) |
+                (($key[1] & 0x00000004) >>  1) | (($key[1] & 0x00100000) >> 20)
+            ,
+                (($key[1] & 0x00001000) >>  7) | (($key[1] & 0x00200000) >> 17) |
+                (($key[1] & 0x00000002) <<  2) | (($key[1] & 0x00000100) >>  6) |
+                (($key[1] & 0x00008000) >> 14) | (($key[1] & 0x04000000) >> 26)
+            ,
+                (($key[0] & 0x00008000) >> 10) | ( $key[0] & 0x00000010       ) |
+                (($key[0] & 0x02000000) >> 22) | (($key[0] & 0x00080000) >> 17) |
+                (($key[0] & 0x00000200) >>  8) | (($key[0] & 0x00000002) >>  1)
+            ,
+                (($key[0] & 0x04000000) >> 21) | (($key[0] & 0x00010000) >> 12) |
+                (($key[0] & 0x00000020) >>  2) | (($key[0] & 0x00000800) >>  9) |
+                (($key[0] & 0x00800000) >> 22) | (($key[0] & 0x00000100) >>  8)
+            ,
+                (($key[0] & 0x00001000) >>  7) | (($key[0] & 0x00000088) >>  3) |
+                (($key[0] & 0x00020000) >> 14) | (($key[0] & 0x00000001) <<  2) |
+                (($key[0] & 0x00400000) >> 21)
+            ,
+                (($key[0] & 0x00000400) >>  5) | (($key[0] & 0x00004000) >> 10) |
+                (($key[0] & 0x00000040) >>  3) | (($key[0] & 0x00100000) >> 18) |
+                (($key[0] & 0x08000000) >> 26) | (($key[0] & 0x01000000) >> 24)
+            );
+
+            $keys[] = $temp;
+        }
+
+        $temp = array(
+            CRYPT_DES_ENCRYPT => $keys,
+            CRYPT_DES_DECRYPT => array_reverse($keys)
+        );
+
+        return $temp;
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+}
+
+// vim: ts=4:sw=4:et:
+// vim6: fdl=1:
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Hash.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Hash.php
new file mode 100644
index 0000000000000000000000000000000000000000..c5d314f009f87ab00cc283d629a9f52ad4572764
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Hash.php
@@ -0,0 +1,825 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementations of keyed-hash message authentication codes (HMACs) and various cryptographic hashing functions.
+ *
+ * Uses hash() or mhash() if available and an internal implementation, otherwise.  Currently supports the following:
+ *
+ * md2, md5, md5-96, sha1, sha1-96, sha256, sha384, and sha512
+ *
+ * If {@link Crypt_Hash::setKey() setKey()} is called, {@link Crypt_Hash::hash() hash()} will return the HMAC as opposed to
+ * the hash.  If no valid algorithm is provided, sha1 will be used.
+ *
+ * PHP versions 4 and 5
+ *
+ * {@internal The variable names are the same as those in 
+ * {@link http://tools.ietf.org/html/rfc2104#section-2 RFC2104}.}}
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/Hash.php');
+ *
+ *    $hash = new Crypt_Hash('sha1');
+ *
+ *    $hash->setKey('abcdefg');
+ *
+ *    echo base64_encode($hash->hash('abcdefg'));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_Hash
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: Hash.php,v 1.6 2009/11/23 23:37:07 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**#@+
+ * @access private
+ * @see Crypt_Hash::Crypt_Hash()
+ */
+/**
+ * Toggles the internal implementation
+ */
+define('CRYPT_HASH_MODE_INTERNAL', 1);
+/**
+ * Toggles the mhash() implementation, which has been deprecated on PHP 5.3.0+.
+ */
+define('CRYPT_HASH_MODE_MHASH',    2);
+/**
+ * Toggles the hash() implementation, which works on PHP 5.1.2+.
+ */
+define('CRYPT_HASH_MODE_HASH',     3);
+/**#@-*/
+
+/**
+ * Pure-PHP implementations of keyed-hash message authentication codes (HMACs) and various cryptographic hashing functions.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_Hash
+ */
+class Crypt_Hash {
+    /**
+     * Byte-length of compression blocks / key (Internal HMAC)
+     *
+     * @see Crypt_Hash::setAlgorithm()
+     * @var Integer
+     * @access private
+     */
+    var $b;
+
+    /**
+     * Byte-length of hash output (Internal HMAC)
+     *
+     * @see Crypt_Hash::setHash()
+     * @var Integer
+     * @access private
+     */
+    var $l = false;
+
+    /**
+     * Hash Algorithm
+     *
+     * @see Crypt_Hash::setHash()
+     * @var String
+     * @access private
+     */
+    var $hash;
+
+    /**
+     * Key
+     *
+     * @see Crypt_Hash::setKey()
+     * @var String
+     * @access private
+     */
+    var $key = false;
+
+    /**
+     * Outer XOR (Internal HMAC)
+     *
+     * @see Crypt_Hash::setKey()
+     * @var String
+     * @access private
+     */
+    var $opad;
+
+    /**
+     * Inner XOR (Internal HMAC)
+     *
+     * @see Crypt_Hash::setKey()
+     * @var String
+     * @access private
+     */
+    var $ipad;
+
+    /**
+     * Default Constructor.
+     *
+     * @param optional String $hash
+     * @return Crypt_Hash
+     * @access public
+     */
+    function Crypt_Hash($hash = 'sha1')
+    {
+        if ( !defined('CRYPT_HASH_MODE') ) {
+            switch (true) {
+                case extension_loaded('hash'):
+                    define('CRYPT_HASH_MODE', CRYPT_HASH_MODE_HASH);
+                    break;
+                case extension_loaded('mhash'):
+                    define('CRYPT_HASH_MODE', CRYPT_HASH_MODE_MHASH);
+                    break;
+                default:
+                    define('CRYPT_HASH_MODE', CRYPT_HASH_MODE_INTERNAL);
+            }
+        }
+
+        $this->setHash($hash);
+    }
+
+    /**
+     * Sets the key for HMACs
+     *
+     * Keys can be of any length.
+     *
+     * @access public
+     * @param String $key
+     */
+    function setKey($key = false)
+    {
+        $this->key = $key;
+    }
+
+    /**
+     * Sets the hash function.
+     *
+     * @access public
+     * @param String $hash
+     */
+    function setHash($hash)
+    {
+        $hash = strtolower($hash);
+        switch ($hash) {
+            case 'md5-96':
+            case 'sha1-96':
+                $this->l = 12; // 96 / 8 = 12
+                break;
+            case 'md2':
+            case 'md5':
+                $this->l = 16;
+                break;
+            case 'sha1':
+                $this->l = 20;
+                break;
+            case 'sha256':
+                $this->l = 32;
+                break;
+            case 'sha384':
+                $this->l = 48;
+                break;
+            case 'sha512':
+                $this->l = 64;
+        }
+
+        switch ($hash) {
+            case 'md2':
+                $mode = CRYPT_HASH_MODE == CRYPT_HASH_MODE_HASH && in_array('md2', hash_algos()) ?
+                    CRYPT_HASH_MODE_HASH : CRYPT_HASH_MODE_INTERNAL;
+                break;
+            case 'sha384':
+            case 'sha512':
+                $mode = CRYPT_HASH_MODE == CRYPT_HASH_MODE_MHASH ? CRYPT_HASH_MODE_INTERNAL : CRYPT_HASH_MODE;
+                break;
+            default:
+                $mode = CRYPT_HASH_MODE;
+        }
+
+        switch ( $mode ) {
+            case CRYPT_HASH_MODE_MHASH:
+                switch ($hash) {
+                    case 'md5':
+                    case 'md5-96':
+                        $this->hash = MHASH_MD5;
+                        break;
+                    case 'sha256':
+                        $this->hash = MHASH_SHA256;
+                        break;
+                    case 'sha1':
+                    case 'sha1-96':
+                    default:
+                        $this->hash = MHASH_SHA1;
+                }
+                return;
+            case CRYPT_HASH_MODE_HASH:
+                switch ($hash) {
+                    case 'md5':
+                    case 'md5-96':
+                        $this->hash = 'md5';
+                        return;
+                    case 'md2':
+                    case 'sha256':
+                    case 'sha384':
+                    case 'sha512':
+                        $this->hash = $hash;
+                        return;
+                    case 'sha1':
+                    case 'sha1-96':
+                    default:
+                        $this->hash = 'sha1';
+                }
+                return;
+        }
+
+        switch ($hash) {
+            case 'md2':
+                 $this->b = 16;
+                 $this->hash = array($this, '_md2');
+                 break;
+            case 'md5':
+            case 'md5-96':
+                 $this->b = 64;
+                 $this->hash = array($this, '_md5');
+                 break;
+            case 'sha256':
+                 $this->b = 64;
+                 $this->hash = array($this, '_sha256');
+                 break;
+            case 'sha384':
+            case 'sha512':
+                 $this->b = 128;
+                 $this->hash = array($this, '_sha512');
+                 break;
+            case 'sha1':
+            case 'sha1-96':
+            default:
+                 $this->b = 64;
+                 $this->hash = array($this, '_sha1');
+        }
+
+        $this->ipad = str_repeat(chr(0x36), $this->b);
+        $this->opad = str_repeat(chr(0x5C), $this->b);
+    }
+
+    /**
+     * Compute the HMAC.
+     *
+     * @access public
+     * @param String $text
+     * @return String
+     */
+    function hash($text)
+    {
+        $mode = is_array($this->hash) ? CRYPT_HASH_MODE_INTERNAL : CRYPT_HASH_MODE;
+
+        if (!empty($this->key) || is_string($this->key)) {
+            switch ( $mode ) {
+                case CRYPT_HASH_MODE_MHASH:
+                    $output = mhash($this->hash, $text, $this->key);
+                    break;
+                case CRYPT_HASH_MODE_HASH:
+                    $output = hash_hmac($this->hash, $text, $this->key, true);
+                    break;
+                case CRYPT_HASH_MODE_INTERNAL:
+                    /* "Applications that use keys longer than B bytes will first hash the key using H and then use the
+                        resultant L byte string as the actual key to HMAC."
+
+                        -- http://tools.ietf.org/html/rfc2104#section-2 */
+                    $key = strlen($this->key) > $this->b ? call_user_func($this->hash, $this->key) : $this->key;
+
+                    $key    = str_pad($key, $this->b, chr(0));      // step 1
+                    $temp   = $this->ipad ^ $key;                   // step 2
+                    $temp  .= $text;                                // step 3
+                    $temp   = call_user_func($this->hash, $temp);   // step 4
+                    $output = $this->opad ^ $key;                   // step 5
+                    $output.= $temp;                                // step 6
+                    $output = call_user_func($this->hash, $output); // step 7
+            }
+        } else {
+            switch ( $mode ) {
+                case CRYPT_HASH_MODE_MHASH:
+                    $output = mhash($this->hash, $text);
+                    break;
+                case CRYPT_HASH_MODE_HASH:
+                    $output = hash($this->hash, $text, true);
+                    break;
+                case CRYPT_HASH_MODE_INTERNAL:
+                    $output = call_user_func($this->hash, $text);
+            }
+        }
+
+        return substr($output, 0, $this->l);
+    }
+
+    /**
+     * Returns the hash length (in bytes)
+     *
+     * @access public
+     * @return Integer
+     */
+    function getLength()
+    {
+        return $this->l;
+    }
+
+    /**
+     * Wrapper for MD5
+     *
+     * @access private
+     * @param String $text
+     */
+    function _md5($m)
+    {
+        return pack('H*', md5($m));
+    }
+
+    /**
+     * Wrapper for SHA1
+     *
+     * @access private
+     * @param String $text
+     */
+    function _sha1($m)
+    {
+        return pack('H*', sha1($m));
+    }
+
+    /**
+     * Pure-PHP implementation of MD2
+     *
+     * See {@link http://tools.ietf.org/html/rfc1319 RFC1319}.
+     *
+     * @access private
+     * @param String $text
+     */
+    function _md2($m)
+    {
+        static $s = array(
+             41,  46,  67, 201, 162, 216, 124,   1,  61,  54,  84, 161, 236, 240, 6,
+             19,  98, 167,   5, 243, 192, 199, 115, 140, 152, 147,  43, 217, 188,
+             76, 130, 202,  30, 155,  87,  60, 253, 212, 224,  22, 103,  66, 111, 24,
+            138,  23, 229,  18, 190,  78, 196, 214, 218, 158, 222,  73, 160, 251,
+            245, 142, 187,  47, 238, 122, 169, 104, 121, 145,  21, 178,   7,  63,
+            148, 194,  16, 137,  11,  34,  95,  33, 128, 127,  93, 154,  90, 144, 50,
+             39,  53,  62, 204, 231, 191, 247, 151,   3, 255,  25,  48, 179,  72, 165,
+            181, 209, 215,  94, 146,  42, 172,  86, 170, 198,  79, 184,  56, 210,
+            150, 164, 125, 182, 118, 252, 107, 226, 156, 116,   4, 241,  69, 157,
+            112,  89, 100, 113, 135,  32, 134,  91, 207, 101, 230,  45, 168,   2, 27,
+             96,  37, 173, 174, 176, 185, 246,  28,  70,  97, 105,  52,  64, 126, 15,
+             85,  71, 163,  35, 221,  81, 175,  58, 195,  92, 249, 206, 186, 197,
+            234,  38,  44,  83,  13, 110, 133,  40, 132,   9, 211, 223, 205, 244, 65,
+            129,  77,  82, 106, 220,  55, 200, 108, 193, 171, 250,  36, 225, 123,
+              8,  12, 189, 177,  74, 120, 136, 149, 139, 227,  99, 232, 109, 233,
+            203, 213, 254,  59,   0,  29,  57, 242, 239, 183,  14, 102,  88, 208, 228,
+            166, 119, 114, 248, 235, 117,  75,  10,  49,  68,  80, 180, 143, 237,
+             31,  26, 219, 153, 141,  51, 159,  17, 131, 20
+        );
+
+        // Step 1. Append Padding Bytes
+        $pad = 16 - (strlen($m) & 0xF);
+        $m.= str_repeat(chr($pad), $pad);
+
+        $length = strlen($m);
+
+        // Step 2. Append Checksum
+        $c = str_repeat(chr(0), 16);
+        $l = chr(0);
+        for ($i = 0; $i < $length; $i+= 16) {
+            for ($j = 0; $j < 16; $j++) {
+                // RFC1319 incorrectly states that C[j] should be set to S[c xor L]
+                //$c[$j] = chr($s[ord($m[$i + $j] ^ $l)]);
+                // per <http://www.rfc-editor.org/errata_search.php?rfc=1319>, however, C[j] should be set to S[c xor L] xor C[j]
+                $c[$j] = chr($s[ord($m[$i + $j] ^ $l)] ^ ord($c[$j]));
+                $l = $c[$j];
+            }
+        }
+        $m.= $c;
+
+        $length+= 16;
+
+        // Step 3. Initialize MD Buffer
+        $x = str_repeat(chr(0), 48);
+
+        // Step 4. Process Message in 16-Byte Blocks
+        for ($i = 0; $i < $length; $i+= 16) {
+            for ($j = 0; $j < 16; $j++) {
+                $x[$j + 16] = $m[$i + $j];
+                $x[$j + 32] = $x[$j + 16] ^ $x[$j];
+            }
+            $t = chr(0);
+            for ($j = 0; $j < 18; $j++) {
+                for ($k = 0; $k < 48; $k++) {
+                    $x[$k] = $t = $x[$k] ^ chr($s[ord($t)]);
+                    //$t = $x[$k] = $x[$k] ^ chr($s[ord($t)]);
+                }
+                $t = chr(ord($t) + $j);
+            }
+        }
+
+        // Step 5. Output
+        return substr($x, 0, 16);
+    }
+
+    /**
+     * Pure-PHP implementation of SHA256
+     *
+     * See {@link http://en.wikipedia.org/wiki/SHA_hash_functions#SHA-256_.28a_SHA-2_variant.29_pseudocode SHA-256 (a SHA-2 variant) pseudocode - Wikipedia}.
+     *
+     * @access private
+     * @param String $text
+     */
+    function _sha256($m)
+    {
+        if (extension_loaded('suhosin')) {
+            return pack('H*', sha256($m));
+        }
+
+        // Initialize variables
+        $hash = array(
+            0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19
+        );
+        // Initialize table of round constants
+        // (first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)
+        static $k = array(
+            0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
+            0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
+            0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
+            0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
+            0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
+            0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
+            0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
+            0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
+        );
+
+        // Pre-processing
+        $length = strlen($m);
+        // to round to nearest 56 mod 64, we'll add 64 - (length + (64 - 56)) % 64
+        $m.= str_repeat(chr(0), 64 - (($length + 8) & 0x3F));
+        $m[$length] = chr(0x80);
+        // we don't support hashing strings 512MB long
+        $m.= pack('N2', 0, $length << 3);
+
+        // Process the message in successive 512-bit chunks
+        $chunks = str_split($m, 64);
+        foreach ($chunks as $chunk) {
+            $w = array();
+            for ($i = 0; $i < 16; $i++) {
+                extract(unpack('Ntemp', $this->_string_shift($chunk, 4)));
+                $w[] = $temp;
+            }
+
+            // Extend the sixteen 32-bit words into sixty-four 32-bit words
+            for ($i = 16; $i < 64; $i++) {
+                $s0 = $this->_rightRotate($w[$i - 15],  7) ^
+                      $this->_rightRotate($w[$i - 15], 18) ^
+                      $this->_rightShift( $w[$i - 15],  3);
+                $s1 = $this->_rightRotate($w[$i - 2], 17) ^
+                      $this->_rightRotate($w[$i - 2], 19) ^
+                      $this->_rightShift( $w[$i - 2], 10);
+                $w[$i] = $this->_add($w[$i - 16], $s0, $w[$i - 7], $s1);
+
+            }
+
+            // Initialize hash value for this chunk
+            list($a, $b, $c, $d, $e, $f, $g, $h) = $hash;
+
+            // Main loop
+            for ($i = 0; $i < 64; $i++) {
+                $s0 = $this->_rightRotate($a,  2) ^
+                      $this->_rightRotate($a, 13) ^
+                      $this->_rightRotate($a, 22);
+                $maj = ($a & $b) ^
+                       ($a & $c) ^
+                       ($b & $c);
+                $t2 = $this->_add($s0, $maj);
+
+                $s1 = $this->_rightRotate($e,  6) ^
+                      $this->_rightRotate($e, 11) ^
+                      $this->_rightRotate($e, 25);
+                $ch = ($e & $f) ^
+                      ($this->_not($e) & $g);
+                $t1 = $this->_add($h, $s1, $ch, $k[$i], $w[$i]);
+
+                $h = $g;
+                $g = $f;
+                $f = $e;
+                $e = $this->_add($d, $t1);
+                $d = $c;
+                $c = $b;
+                $b = $a;
+                $a = $this->_add($t1, $t2);
+            }
+
+            // Add this chunk's hash to result so far
+            $hash = array(
+                $this->_add($hash[0], $a),
+                $this->_add($hash[1], $b),
+                $this->_add($hash[2], $c),
+                $this->_add($hash[3], $d),
+                $this->_add($hash[4], $e),
+                $this->_add($hash[5], $f),
+                $this->_add($hash[6], $g),
+                $this->_add($hash[7], $h)
+            );
+        }
+
+        // Produce the final hash value (big-endian)
+        return pack('N8', $hash[0], $hash[1], $hash[2], $hash[3], $hash[4], $hash[5], $hash[6], $hash[7]);
+    }
+
+    /**
+     * Pure-PHP implementation of SHA384 and SHA512
+     *
+     * @access private
+     * @param String $text
+     */
+    function _sha512($m)
+    {
+        if (!class_exists('Math_BigInteger')) {
+            require_once('Math/BigInteger.php');
+        }
+
+        static $init384, $init512, $k;
+
+        if (!isset($k)) {
+            // Initialize variables
+            $init384 = array( // initial values for SHA384
+                'cbbb9d5dc1059ed8', '629a292a367cd507', '9159015a3070dd17', '152fecd8f70e5939', 
+                '67332667ffc00b31', '8eb44a8768581511', 'db0c2e0d64f98fa7', '47b5481dbefa4fa4'
+            );
+            $init512 = array( // initial values for SHA512
+                '6a09e667f3bcc908', 'bb67ae8584caa73b', '3c6ef372fe94f82b', 'a54ff53a5f1d36f1', 
+                '510e527fade682d1', '9b05688c2b3e6c1f', '1f83d9abfb41bd6b', '5be0cd19137e2179'
+            );
+
+            for ($i = 0; $i < 8; $i++) {
+                $init384[$i] = new Math_BigInteger($init384[$i], 16);
+                $init384[$i]->setPrecision(64);
+                $init512[$i] = new Math_BigInteger($init512[$i], 16);
+                $init512[$i]->setPrecision(64);
+            }
+
+            // Initialize table of round constants
+            // (first 64 bits of the fractional parts of the cube roots of the first 80 primes 2..409)
+            $k = array(
+                '428a2f98d728ae22', '7137449123ef65cd', 'b5c0fbcfec4d3b2f', 'e9b5dba58189dbbc',
+                '3956c25bf348b538', '59f111f1b605d019', '923f82a4af194f9b', 'ab1c5ed5da6d8118',
+                'd807aa98a3030242', '12835b0145706fbe', '243185be4ee4b28c', '550c7dc3d5ffb4e2',
+                '72be5d74f27b896f', '80deb1fe3b1696b1', '9bdc06a725c71235', 'c19bf174cf692694',
+                'e49b69c19ef14ad2', 'efbe4786384f25e3', '0fc19dc68b8cd5b5', '240ca1cc77ac9c65',
+                '2de92c6f592b0275', '4a7484aa6ea6e483', '5cb0a9dcbd41fbd4', '76f988da831153b5',
+                '983e5152ee66dfab', 'a831c66d2db43210', 'b00327c898fb213f', 'bf597fc7beef0ee4',
+                'c6e00bf33da88fc2', 'd5a79147930aa725', '06ca6351e003826f', '142929670a0e6e70',
+                '27b70a8546d22ffc', '2e1b21385c26c926', '4d2c6dfc5ac42aed', '53380d139d95b3df',
+                '650a73548baf63de', '766a0abb3c77b2a8', '81c2c92e47edaee6', '92722c851482353b',
+                'a2bfe8a14cf10364', 'a81a664bbc423001', 'c24b8b70d0f89791', 'c76c51a30654be30',
+                'd192e819d6ef5218', 'd69906245565a910', 'f40e35855771202a', '106aa07032bbd1b8',
+                '19a4c116b8d2d0c8', '1e376c085141ab53', '2748774cdf8eeb99', '34b0bcb5e19b48a8',
+                '391c0cb3c5c95a63', '4ed8aa4ae3418acb', '5b9cca4f7763e373', '682e6ff3d6b2b8a3',
+                '748f82ee5defb2fc', '78a5636f43172f60', '84c87814a1f0ab72', '8cc702081a6439ec',
+                '90befffa23631e28', 'a4506cebde82bde9', 'bef9a3f7b2c67915', 'c67178f2e372532b',
+                'ca273eceea26619c', 'd186b8c721c0c207', 'eada7dd6cde0eb1e', 'f57d4f7fee6ed178',
+                '06f067aa72176fba', '0a637dc5a2c898a6', '113f9804bef90dae', '1b710b35131c471b',
+                '28db77f523047d84', '32caab7b40c72493', '3c9ebe0a15c9bebc', '431d67c49c100d4c',
+                '4cc5d4becb3e42b6', '597f299cfc657e2a', '5fcb6fab3ad6faec', '6c44198c4a475817'
+            );
+
+            for ($i = 0; $i < 80; $i++) {
+                $k[$i] = new Math_BigInteger($k[$i], 16);
+            }
+        }
+
+        $hash = $this->l == 48 ? $init384 : $init512;
+
+        // Pre-processing
+        $length = strlen($m);
+        // to round to nearest 112 mod 128, we'll add 128 - (length + (128 - 112)) % 128
+        $m.= str_repeat(chr(0), 128 - (($length + 16) & 0x7F));
+        $m[$length] = chr(0x80);
+        // we don't support hashing strings 512MB long
+        $m.= pack('N4', 0, 0, 0, $length << 3);
+
+        // Process the message in successive 1024-bit chunks
+        $chunks = str_split($m, 128);
+        foreach ($chunks as $chunk) {
+            $w = array();
+            for ($i = 0; $i < 16; $i++) {
+                $temp = new Math_BigInteger($this->_string_shift($chunk, 8), 256);
+                $temp->setPrecision(64);
+                $w[] = $temp;
+            }
+
+            // Extend the sixteen 32-bit words into eighty 32-bit words
+            for ($i = 16; $i < 80; $i++) {
+                $temp = array(
+                          $w[$i - 15]->bitwise_rightRotate(1),
+                          $w[$i - 15]->bitwise_rightRotate(8),
+                          $w[$i - 15]->bitwise_rightShift(7)
+                );
+                $s0 = $temp[0]->bitwise_xor($temp[1]);
+                $s0 = $s0->bitwise_xor($temp[2]);
+                $temp = array(
+                          $w[$i - 2]->bitwise_rightRotate(19),
+                          $w[$i - 2]->bitwise_rightRotate(61),
+                          $w[$i - 2]->bitwise_rightShift(6)
+                );
+                $s1 = $temp[0]->bitwise_xor($temp[1]);
+                $s1 = $s1->bitwise_xor($temp[2]);
+                $w[$i] = $w[$i - 16]->copy();
+                $w[$i] = $w[$i]->add($s0);
+                $w[$i] = $w[$i]->add($w[$i - 7]);
+                $w[$i] = $w[$i]->add($s1);
+            }
+
+            // Initialize hash value for this chunk
+            $a = $hash[0]->copy();
+            $b = $hash[1]->copy();
+            $c = $hash[2]->copy();
+            $d = $hash[3]->copy();
+            $e = $hash[4]->copy();
+            $f = $hash[5]->copy();
+            $g = $hash[6]->copy();
+            $h = $hash[7]->copy();
+
+            // Main loop
+            for ($i = 0; $i < 80; $i++) {
+                $temp = array(
+                    $a->bitwise_rightRotate(28),
+                    $a->bitwise_rightRotate(34),
+                    $a->bitwise_rightRotate(39)
+                );
+                $s0 = $temp[0]->bitwise_xor($temp[1]);
+                $s0 = $s0->bitwise_xor($temp[2]);
+                $temp = array(
+                    $a->bitwise_and($b),
+                    $a->bitwise_and($c),
+                    $b->bitwise_and($c)
+                );
+                $maj = $temp[0]->bitwise_xor($temp[1]);
+                $maj = $maj->bitwise_xor($temp[2]);
+                $t2 = $s0->add($maj);
+
+                $temp = array(
+                    $e->bitwise_rightRotate(14),
+                    $e->bitwise_rightRotate(18),
+                    $e->bitwise_rightRotate(41)
+                );
+                $s1 = $temp[0]->bitwise_xor($temp[1]);
+                $s1 = $s1->bitwise_xor($temp[2]);
+                $temp = array(
+                    $e->bitwise_and($f),
+                    $g->bitwise_and($e->bitwise_not())
+                );
+                $ch = $temp[0]->bitwise_xor($temp[1]);
+                $t1 = $h->add($s1);
+                $t1 = $t1->add($ch);
+                $t1 = $t1->add($k[$i]);
+                $t1 = $t1->add($w[$i]);
+
+                $h = $g->copy();
+                $g = $f->copy();
+                $f = $e->copy();
+                $e = $d->add($t1);
+                $d = $c->copy();
+                $c = $b->copy();
+                $b = $a->copy();
+                $a = $t1->add($t2);
+            }
+
+            // Add this chunk's hash to result so far
+            $hash = array(
+                $hash[0]->add($a),
+                $hash[1]->add($b),
+                $hash[2]->add($c),
+                $hash[3]->add($d),
+                $hash[4]->add($e),
+                $hash[5]->add($f),
+                $hash[6]->add($g),
+                $hash[7]->add($h)
+            );
+        }
+
+        // Produce the final hash value (big-endian)
+        // (Crypt_Hash::hash() trims the output for hashes but not for HMACs.  as such, we trim the output here)
+        $temp = $hash[0]->toBytes() . $hash[1]->toBytes() . $hash[2]->toBytes() . $hash[3]->toBytes() .
+                $hash[4]->toBytes() . $hash[5]->toBytes();
+        if ($this->l != 48) {
+            $temp.= $hash[6]->toBytes() . $hash[7]->toBytes();
+        }
+
+        return $temp;
+    }
+
+    /**
+     * Right Rotate
+     *
+     * @access private
+     * @param Integer $int
+     * @param Integer $amt
+     * @see _sha256()
+     * @return Integer
+     */
+    function _rightRotate($int, $amt)
+    {
+        $invamt = 32 - $amt;
+        $mask = (1 << $invamt) - 1;
+        return (($int << $invamt) & 0xFFFFFFFF) | (($int >> $amt) & $mask);
+    }
+
+    /**
+     * Right Shift
+     *
+     * @access private
+     * @param Integer $int
+     * @param Integer $amt
+     * @see _sha256()
+     * @return Integer
+     */
+    function _rightShift($int, $amt)
+    {
+        $mask = (1 << (32 - $amt)) - 1;
+        return ($int >> $amt) & $mask;
+    }
+
+    /**
+     * Not
+     *
+     * @access private
+     * @param Integer $int
+     * @see _sha256()
+     * @return Integer
+     */
+    function _not($int)
+    {
+        return ~$int & 0xFFFFFFFF;
+    }
+
+    /**
+     * Add
+     *
+     * _sha256() adds multiple unsigned 32-bit integers.  Since PHP doesn't support unsigned integers and since the
+     * possibility of overflow exists, care has to be taken.  Math_BigInteger() could be used but this should be faster.
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @see _sha256()
+     * @access private
+     */
+    function _add()
+    {
+        static $mod;
+        if (!isset($mod)) {
+            $mod = pow(2, 32);
+        }
+
+        $result = 0;
+        $arguments = func_get_args();
+        foreach ($arguments as $argument) {
+            $result+= $argument < 0 ? ($argument & 0x7FFFFFFF) + 0x80000000 : $argument;
+        }
+
+        return fmod($result, $mod);
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RC4.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RC4.php
new file mode 100644
index 0000000000000000000000000000000000000000..390108e04800c99bde2053ec924cb7a53fd8459e
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RC4.php
@@ -0,0 +1,519 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of RC4.
+ *
+ * Uses mcrypt, if available, and an internal implementation, otherwise.
+ *
+ * PHP versions 4 and 5
+ *
+ * Useful resources are as follows:
+ *
+ *  - {@link http://www.mozilla.org/projects/security/pki/nss/draft-kaukonen-cipher-arcfour-03.txt ARCFOUR Algorithm}
+ *  - {@link http://en.wikipedia.org/wiki/RC4 - Wikipedia: RC4}
+ *
+ * RC4 is also known as ARCFOUR or ARC4.  The reason is elaborated upon at Wikipedia.  This class is named RC4 and not
+ * ARCFOUR or ARC4 because RC4 is how it is refered to in the SSH1 specification.
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/RC4.php');
+ *
+ *    $rc4 = new Crypt_RC4();
+ *
+ *    $rc4->setKey('abcdefgh');
+ *
+ *    $size = 10 * 1024;
+ *    $plaintext = '';
+ *    for ($i = 0; $i < $size; $i++) {
+ *        $plaintext.= 'a';
+ *    }
+ *
+ *    echo $rc4->decrypt($rc4->encrypt($plaintext));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_RC4
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: RC4.php,v 1.8 2009/06/09 04:00:38 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**#@+
+ * @access private
+ * @see Crypt_RC4::Crypt_RC4()
+ */
+/**
+ * Toggles the internal implementation
+ */
+define('CRYPT_RC4_MODE_INTERNAL', 1);
+/**
+ * Toggles the mcrypt implementation
+ */
+define('CRYPT_RC4_MODE_MCRYPT', 2);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_RC4::_crypt()
+ */
+define('CRYPT_RC4_ENCRYPT', 0);
+define('CRYPT_RC4_DECRYPT', 1);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of RC4.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_RC4
+ */
+class Crypt_RC4 {
+    /**
+     * The Key
+     *
+     * @see Crypt_RC4::setKey()
+     * @var String
+     * @access private
+     */
+    var $key = "\0";
+
+    /**
+     * The Key Stream for encryption
+     *
+     * If CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT, this will be equal to the mcrypt object
+     *
+     * @see Crypt_RC4::setKey()
+     * @var Array
+     * @access private
+     */
+    var $encryptStream = false;
+
+    /**
+     * The Key Stream for decryption
+     *
+     * If CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT, this will be equal to the mcrypt object
+     *
+     * @see Crypt_RC4::setKey()
+     * @var Array
+     * @access private
+     */
+    var $decryptStream = false;
+
+    /**
+     * The $i and $j indexes for encryption
+     *
+     * @see Crypt_RC4::_crypt()
+     * @var Integer
+     * @access private
+     */
+    var $encryptIndex = 0;
+
+    /**
+     * The $i and $j indexes for decryption
+     *
+     * @see Crypt_RC4::_crypt()
+     * @var Integer
+     * @access private
+     */
+    var $decryptIndex = 0;
+
+    /**
+     * The Encryption Algorithm
+     *
+     * Only used if CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT.  Only possible values are MCRYPT_RC4 or MCRYPT_ARCFOUR.
+     *
+     * @see Crypt_RC4::Crypt_RC4()
+     * @var Integer
+     * @access private
+     */
+    var $mode;
+
+    /**
+     * Continuous Buffer status
+     *
+     * @see Crypt_RC4::enableContinuousBuffer()
+     * @var Boolean
+     * @access private
+     */
+    var $continuousBuffer = false;
+
+    /**
+     * Default Constructor.
+     *
+     * Determines whether or not the mcrypt extension should be used.
+     *
+     * @return Crypt_RC4
+     * @access public
+     */
+    function Crypt_RC4()
+    {
+        if ( !defined('CRYPT_RC4_MODE') ) {
+            switch (true) {
+                case extension_loaded('mcrypt') && (defined('MCRYPT_ARCFOUR') || defined('MCRYPT_RC4')) && in_array('arcfour', mcrypt_list_algorithms()):
+                    define('CRYPT_RC4_MODE', CRYPT_RC4_MODE_MCRYPT);
+                    break;
+                default:
+                    define('CRYPT_RC4_MODE', CRYPT_RC4_MODE_INTERNAL);
+            }
+        }
+
+        switch ( CRYPT_RC4_MODE ) {
+            case CRYPT_RC4_MODE_MCRYPT:
+                switch (true) {
+                    case defined('MCRYPT_ARCFOUR'):
+                        $this->mode = MCRYPT_ARCFOUR;
+                        break;
+                    case defined('MCRYPT_RC4');
+                        $this->mode = MCRYPT_RC4;
+                }
+                $this->encryptStream = mcrypt_module_open($this->mode, '', MCRYPT_MODE_STREAM, '');
+                $this->decryptStream = mcrypt_module_open($this->mode, '', MCRYPT_MODE_STREAM, '');
+
+        }
+    }
+
+    /**
+     * Sets the key.
+     *
+     * Keys can be between 1 and 256 bytes long.  If they are longer then 256 bytes, the first 256 bytes will
+     * be used.  If no key is explicitly set, it'll be assumed to be a single null byte.
+     *
+     * @access public
+     * @param String $key
+     */
+    function setKey($key)
+    {
+        $this->key = $key;
+
+        if ( CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT ) {
+            mcrypt_generic_init($this->encryptStream, $this->key, '');
+            mcrypt_generic_init($this->decryptStream, $this->key, '');
+            return;
+        }
+
+        $keyLength = strlen($key);
+        $keyStream = array();
+        for ($i = 0; $i < 256; $i++) {
+            $keyStream[$i] = $i;
+        }
+        $j = 0;
+        for ($i = 0; $i < 256; $i++) {
+            $j = ($j + $keyStream[$i] + ord($key[$i % $keyLength])) & 255;
+            $temp = $keyStream[$i];
+            $keyStream[$i] = $keyStream[$j];
+            $keyStream[$j] = $temp;
+        }
+
+        $this->encryptIndex = $this->decryptIndex = array(0, 0);
+        $this->encryptStream = $this->decryptStream = $keyStream;
+    }
+
+    /**
+     * Sets the password.
+     *
+     * Depending on what $method is set to, setPassword()'s (optional) parameters are as follows:
+     *     {@link http://en.wikipedia.org/wiki/PBKDF2 pbkdf2}:
+     *         $hash, $salt, $count, $dkLen
+     *
+     * @param String $password
+     * @param optional String $method
+     * @access public
+     */
+    function setPassword($password, $method = 'pbkdf2')
+    {
+        $key = '';
+
+        switch ($method) {
+            default: // 'pbkdf2'
+                list(, , $hash, $salt, $count) = func_get_args();
+                if (!isset($hash)) {
+                    $hash = 'sha1';
+                }
+                // WPA and WPA2 use the SSID as the salt
+                if (!isset($salt)) {
+                    $salt = 'phpseclib/salt';
+                }
+                // RFC2898#section-4.2 uses 1,000 iterations by default
+                // WPA and WPA2 use 4,096.
+                if (!isset($count)) {
+                    $count = 1000;
+                }
+                if (!isset($dkLen)) {
+                    $dkLen = 128;
+                }
+
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+
+                $i = 1;
+                while (strlen($key) < $dkLen) {
+                    //$dk.= $this->_pbkdf($password, $salt, $count, $i++);
+                    $hmac = new Crypt_Hash();
+                    $hmac->setHash($hash);
+                    $hmac->setKey($password);
+                    $f = $u = $hmac->hash($salt . pack('N', $i++));
+                    for ($j = 2; $j <= $count; $j++) {
+                        $u = $hmac->hash($u);
+                        $f^= $u;
+                    }
+                    $key.= $f;
+                }
+        }
+
+        $this->setKey(substr($key, 0, $dkLen));
+    }
+
+    /**
+     * Dummy function.
+     *
+     * Some protocols, such as WEP, prepend an "initialization vector" to the key, effectively creating a new key [1].
+     * If you need to use an initialization vector in this manner, feel free to prepend it to the key, yourself, before
+     * calling setKey().
+     *
+     * [1] WEP's initialization vectors (IV's) are used in a somewhat insecure way.  Since, in that protocol,
+     * the IV's are relatively easy to predict, an attack described by
+     * {@link http://www.drizzle.com/~aboba/IEEE/rc4_ksaproc.pdf Scott Fluhrer, Itsik Mantin, and Adi Shamir}
+     * can be used to quickly guess at the rest of the key.  The following links elaborate:
+     *
+     * {@link http://www.rsa.com/rsalabs/node.asp?id=2009 http://www.rsa.com/rsalabs/node.asp?id=2009}
+     * {@link http://en.wikipedia.org/wiki/Related_key_attack http://en.wikipedia.org/wiki/Related_key_attack}
+     *
+     * @param String $iv
+     * @see Crypt_RC4::setKey()
+     * @access public
+     */
+    function setIV($iv)
+    {
+    }
+
+    /**
+     * Encrypts a message.
+     *
+     * @see Crypt_RC4::_crypt()
+     * @access public
+     * @param String $plaintext
+     */
+    function encrypt($plaintext)
+    {
+        return $this->_crypt($plaintext, CRYPT_RC4_ENCRYPT);
+    }
+
+    /**
+     * Decrypts a message.
+     *
+     * $this->decrypt($this->encrypt($plaintext)) == $this->encrypt($this->encrypt($plaintext)).
+     * Atleast if the continuous buffer is disabled.
+     *
+     * @see Crypt_RC4::_crypt()
+     * @access public
+     * @param String $ciphertext
+     */
+    function decrypt($ciphertext)
+    {
+        return $this->_crypt($ciphertext, CRYPT_RC4_DECRYPT);
+    }
+
+    /**
+     * Encrypts or decrypts a message.
+     *
+     * @see Crypt_RC4::encrypt()
+     * @see Crypt_RC4::decrypt()
+     * @access private
+     * @param String $text
+     * @param Integer $mode
+     */
+    function _crypt($text, $mode)
+    {
+        if ( CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT ) {
+            $keyStream = $mode == CRYPT_RC4_ENCRYPT ? 'encryptStream' : 'decryptStream';
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->$keyStream, $this->key, '');
+            }
+
+            return mcrypt_generic($this->$keyStream, $text);
+        }
+
+        if ($this->encryptStream === false) {
+            $this->setKey($this->key);
+        }
+
+        switch ($mode) {
+            case CRYPT_RC4_ENCRYPT:
+                $keyStream = $this->encryptStream;
+                list($i, $j) = $this->encryptIndex;
+                break;
+            case CRYPT_RC4_DECRYPT:
+                $keyStream = $this->decryptStream;
+                list($i, $j) = $this->decryptIndex;
+        }
+
+        $newText = '';
+        for ($k = 0; $k < strlen($text); $k++) {
+            $i = ($i + 1) & 255;
+            $j = ($j + $keyStream[$i]) & 255;
+            $temp = $keyStream[$i];
+            $keyStream[$i] = $keyStream[$j];
+            $keyStream[$j] = $temp;
+            $temp = $keyStream[($keyStream[$i] + $keyStream[$j]) & 255];
+            $newText.= chr(ord($text[$k]) ^ $temp);
+        }
+
+        if ($this->continuousBuffer) {
+            switch ($mode) {
+                case CRYPT_RC4_ENCRYPT:
+                    $this->encryptStream = $keyStream;
+                    $this->encryptIndex = array($i, $j);
+                    break;
+                case CRYPT_RC4_DECRYPT:
+                    $this->decryptStream = $keyStream;
+                    $this->decryptIndex = array($i, $j);
+            }
+        }
+
+        return $newText;
+    }
+
+    /**
+     * Treat consecutive "packets" as if they are a continuous buffer.
+     *
+     * Say you have a 16-byte plaintext $plaintext.  Using the default behavior, the two following code snippets
+     * will yield different outputs:
+     *
+     * <code>
+     *    echo $rc4->encrypt(substr($plaintext, 0, 8));
+     *    echo $rc4->encrypt(substr($plaintext, 8, 8));
+     * </code>
+     * <code>
+     *    echo $rc4->encrypt($plaintext);
+     * </code>
+     *
+     * The solution is to enable the continuous buffer.  Although this will resolve the above discrepancy, it creates
+     * another, as demonstrated with the following:
+     *
+     * <code>
+     *    $rc4->encrypt(substr($plaintext, 0, 8));
+     *    echo $rc4->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     * <code>
+     *    echo $rc4->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     *
+     * With the continuous buffer disabled, these would yield the same output.  With it enabled, they yield different
+     * outputs.  The reason is due to the fact that the initialization vector's change after every encryption /
+     * decryption round when the continuous buffer is enabled.  When it's disabled, they remain constant.
+     *
+     * Put another way, when the continuous buffer is enabled, the state of the Crypt_DES() object changes after each
+     * encryption / decryption round, whereas otherwise, it'd remain constant.  For this reason, it's recommended that
+     * continuous buffers not be used.  They do offer better security and are, in fact, sometimes required (SSH uses them),
+     * however, they are also less intuitive and more likely to cause you problems.
+     *
+     * @see Crypt_RC4::disableContinuousBuffer()
+     * @access public
+     */
+    function enableContinuousBuffer()
+    {
+        if ( CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT ) {
+            mcrypt_generic_init($this->encryptStream, $this->key, '');
+            mcrypt_generic_init($this->decryptStream, $this->key, '');
+        }
+
+        $this->continuousBuffer = true;
+    }
+
+    /**
+     * Treat consecutive packets as if they are a discontinuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_RC4::enableContinuousBuffer()
+     * @access public
+     */
+    function disableContinuousBuffer()
+    {
+        if ( CRYPT_RC4_MODE == CRYPT_RC4_MODE_INTERNAL ) {
+            $this->encryptIndex = $this->decryptIndex = array(0, 0);
+            $this->encryptStream = $this->decryptStream = false;
+        }
+
+        $this->continuousBuffer = false;
+    }
+
+    /**
+     * Dummy function.
+     *
+     * Since RC4 is a stream cipher and not a block cipher, no padding is necessary.  The only reason this function is
+     * included is so that you can switch between a block cipher and a stream cipher transparently.
+     *
+     * @see Crypt_RC4::disablePadding()
+     * @access public
+     */
+    function enablePadding()
+    {
+    }
+
+    /**
+     * Dummy function.
+     *
+     * @see Crypt_RC4::enablePadding()
+     * @access public
+     */
+    function disablePadding()
+    {
+    }
+
+    /**
+     * Class destructor.
+     *
+     * Will be called, automatically, if you're using PHP5.  If you're using PHP4, call it yourself.  Only really
+     * needs to be called if mcrypt is being used.
+     *
+     * @access public
+     */
+    function __destruct()
+    {
+        if ( CRYPT_RC4_MODE == CRYPT_RC4_MODE_MCRYPT ) {
+            $this->_closeMCrypt();
+        }
+    }
+
+    /**
+     * Properly close the MCrypt objects.
+     *
+     * @access prviate
+     */
+    function _closeMCrypt()
+    {
+        mcrypt_module_close($this->encryptStream);
+        mcrypt_module_close($this->decryptStream);
+    }
+}
+
+// vim: ts=4:sw=4:et:
+// vim6: fdl=1:
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RSA.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RSA.php
new file mode 100644
index 0000000000000000000000000000000000000000..db1ba1581b684001eaadad51f2bc086171036746
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RSA.php
@@ -0,0 +1,2646 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP PKCS#1 (v2.1) compliant implementation of RSA.
+ *
+ * PHP versions 4 and 5
+ *
+ * Here's an example of how to encrypt and decrypt text with this library:
+ * <code>
+ * <?php
+ *    include('Crypt/RSA.php');
+ *
+ *    $rsa = new Crypt_RSA();
+ *    extract($rsa->createKey());
+ *
+ *    $plaintext = 'terrafrost';
+ *
+ *    $rsa->loadKey($privatekey);
+ *    $ciphertext = $rsa->encrypt($plaintext);
+ *
+ *    $rsa->loadKey($publickey);
+ *    echo $rsa->decrypt($ciphertext);
+ * ?>
+ * </code>
+ *
+ * Here's an example of how to create signatures and verify signatures with this library:
+ * <code>
+ * <?php
+ *    include('Crypt/RSA.php');
+ *
+ *    $rsa = new Crypt_RSA();
+ *    extract($rsa->createKey());
+ *
+ *    $plaintext = 'terrafrost';
+ *
+ *    $rsa->loadKey($privatekey);
+ *    $signature = $rsa->sign($plaintext);
+ *
+ *    $rsa->loadKey($publickey);
+ *    echo $rsa->verify($plaintext, $signature) ? 'verified' : 'unverified';
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_RSA
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMIX Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: RSA.php,v 1.19 2010/09/12 21:58:54 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Math_BigInteger
+ */
+if (!class_exists('Math_BigInteger')) {
+    require_once('Math/BigInteger.php');
+}
+
+/**
+ * Include Crypt_Random
+ */
+// the class_exists() will only be called if the crypt_random_string function hasn't been defined and
+// will trigger a call to __autoload() if you're wanting to auto-load classes
+// call function_exists() a second time to stop the require_once from being called outside
+// of the auto loader
+if (!function_exists('crypt_random_string') && !class_exists('Crypt_Random') && !function_exists('crypt_random_string')) {
+    require_once('Crypt/Random.php');
+}
+
+/**
+ * Include Crypt_Hash
+ */
+if (!class_exists('Crypt_Hash')) {
+    require_once('Crypt/Hash.php');
+}
+
+/**#@+
+ * @access public
+ * @see Crypt_RSA::encrypt()
+ * @see Crypt_RSA::decrypt()
+ */
+/**
+ * Use {@link http://en.wikipedia.org/wiki/Optimal_Asymmetric_Encryption_Padding Optimal Asymmetric Encryption Padding}
+ * (OAEP) for encryption / decryption.
+ *
+ * Uses sha1 by default.
+ *
+ * @see Crypt_RSA::setHash()
+ * @see Crypt_RSA::setMGFHash()
+ */
+define('CRYPT_RSA_ENCRYPTION_OAEP',  1);
+/**
+ * Use PKCS#1 padding.
+ *
+ * Although CRYPT_RSA_ENCRYPTION_OAEP offers more security, including PKCS#1 padding is necessary for purposes of backwards
+ * compatability with protocols (like SSH-1) written before OAEP's introduction.
+ */
+define('CRYPT_RSA_ENCRYPTION_PKCS1', 2);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Crypt_RSA::sign()
+ * @see Crypt_RSA::verify()
+ * @see Crypt_RSA::setHash()
+ */
+/**
+ * Use the Probabilistic Signature Scheme for signing
+ *
+ * Uses sha1 by default.
+ *
+ * @see Crypt_RSA::setSaltLength()
+ * @see Crypt_RSA::setMGFHash()
+ */
+define('CRYPT_RSA_SIGNATURE_PSS',  1);
+/**
+ * Use the PKCS#1 scheme by default.
+ *
+ * Although CRYPT_RSA_SIGNATURE_PSS offers more security, including PKCS#1 signing is necessary for purposes of backwards
+ * compatability with protocols (like SSH-2) written before PSS's introduction.
+ */
+define('CRYPT_RSA_SIGNATURE_PKCS1', 2);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_RSA::createKey()
+ */
+/**
+ * ASN1 Integer
+ */
+define('CRYPT_RSA_ASN1_INTEGER',   2);
+/**
+ * ASN1 Bit String
+ */
+define('CRYPT_RSA_ASN1_BITSTRING', 3); 
+/**
+ * ASN1 Sequence (with the constucted bit set)
+ */
+define('CRYPT_RSA_ASN1_SEQUENCE', 48);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_RSA::Crypt_RSA()
+ */
+/**
+ * To use the pure-PHP implementation
+ */
+define('CRYPT_RSA_MODE_INTERNAL', 1);
+/**
+ * To use the OpenSSL library
+ *
+ * (if enabled; otherwise, the internal implementation will be used)
+ */
+define('CRYPT_RSA_MODE_OPENSSL', 2);
+/**#@-*/
+
+/**
+ * Default openSSL configuration file.
+ */
+define('CRYPT_RSA_OPENSSL_CONFIG', dirname(__FILE__) . '/../openssl.cnf');
+
+
+/**#@+
+ * @access public
+ * @see Crypt_RSA::createKey()
+ * @see Crypt_RSA::setPrivateKeyFormat()
+ */
+/**
+ * PKCS#1 formatted private key
+ *
+ * Used by OpenSSH
+ */
+define('CRYPT_RSA_PRIVATE_FORMAT_PKCS1', 0);
+/**
+ * PuTTY formatted private key
+ */
+define('CRYPT_RSA_PRIVATE_FORMAT_PUTTY', 1);
+/**
+ * XML formatted private key
+ */
+define('CRYPT_RSA_PRIVATE_FORMAT_XML', 2);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Crypt_RSA::createKey()
+ * @see Crypt_RSA::setPublicKeyFormat()
+ */
+/**
+ * Raw public key
+ *
+ * An array containing two Math_BigInteger objects.
+ *
+ * The exponent can be indexed with any of the following:
+ *
+ * 0, e, exponent, publicExponent
+ *
+ * The modulus can be indexed with any of the following:
+ *
+ * 1, n, modulo, modulus
+ */
+define('CRYPT_RSA_PUBLIC_FORMAT_RAW', 3);
+/**
+ * PKCS#1 formatted public key (raw)
+ *
+ * Used by File/X509.php
+ */
+define('CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW', 4);
+/**
+ * XML formatted public key
+ */
+define('CRYPT_RSA_PUBLIC_FORMAT_XML', 5);
+/**
+ * OpenSSH formatted public key
+ *
+ * Place in $HOME/.ssh/authorized_keys
+ */
+define('CRYPT_RSA_PUBLIC_FORMAT_OPENSSH', 6);
+/**
+ * PKCS#1 formatted public key (encapsulated)
+ *
+ * Used by PHP's openssl_public_encrypt() and openssl's rsautl (when -pubin is set)
+ */
+define('CRYPT_RSA_PUBLIC_FORMAT_PKCS1', 7);
+/**#@-*/
+
+/**
+ * Pure-PHP PKCS#1 compliant implementation of RSA.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_RSA
+ */
+class Crypt_RSA {
+    /**
+     * Precomputed Zero
+     *
+     * @var Array
+     * @access private
+     */
+    var $zero;
+
+    /**
+     * Precomputed One
+     *
+     * @var Array
+     * @access private
+     */
+    var $one;
+
+    /**
+     * Private Key Format
+     *
+     * @var Integer
+     * @access private
+     */
+    var $privateKeyFormat = CRYPT_RSA_PRIVATE_FORMAT_PKCS1;
+
+    /**
+     * Public Key Format
+     *
+     * @var Integer
+     * @access public
+     */
+    var $publicKeyFormat = CRYPT_RSA_PUBLIC_FORMAT_PKCS1;
+
+    /**
+     * Modulus (ie. n)
+     *
+     * @var Math_BigInteger
+     * @access private
+     */
+    var $modulus;
+
+    /**
+     * Modulus length
+     *
+     * @var Math_BigInteger
+     * @access private
+     */
+    var $k;
+
+    /**
+     * Exponent (ie. e or d)
+     *
+     * @var Math_BigInteger
+     * @access private
+     */
+    var $exponent;
+
+    /**
+     * Primes for Chinese Remainder Theorem (ie. p and q)
+     *
+     * @var Array
+     * @access private
+     */
+    var $primes;
+
+    /**
+     * Exponents for Chinese Remainder Theorem (ie. dP and dQ)
+     *
+     * @var Array
+     * @access private
+     */
+    var $exponents;
+
+    /**
+     * Coefficients for Chinese Remainder Theorem (ie. qInv)
+     *
+     * @var Array
+     * @access private
+     */
+    var $coefficients;
+
+    /**
+     * Hash name
+     *
+     * @var String
+     * @access private
+     */
+    var $hashName;
+
+    /**
+     * Hash function
+     *
+     * @var Crypt_Hash
+     * @access private
+     */
+    var $hash;
+
+    /**
+     * Length of hash function output
+     *
+     * @var Integer
+     * @access private
+     */
+    var $hLen;
+
+    /**
+     * Length of salt
+     *
+     * @var Integer
+     * @access private
+     */
+    var $sLen;
+
+    /**
+     * Hash function for the Mask Generation Function
+     *
+     * @var Crypt_Hash
+     * @access private
+     */
+    var $mgfHash;
+
+    /**
+     * Length of MGF hash function output
+     *
+     * @var Integer
+     * @access private
+     */
+    var $mgfHLen;
+
+    /**
+     * Encryption mode
+     *
+     * @var Integer
+     * @access private
+     */
+    var $encryptionMode = CRYPT_RSA_ENCRYPTION_OAEP;
+
+    /**
+     * Signature mode
+     *
+     * @var Integer
+     * @access private
+     */
+    var $signatureMode = CRYPT_RSA_SIGNATURE_PSS;
+
+    /**
+     * Public Exponent
+     *
+     * @var Mixed
+     * @access private
+     */
+    var $publicExponent = false;
+
+    /**
+     * Password
+     *
+     * @var String
+     * @access private
+     */
+    var $password = false;
+
+    /**
+     * Components
+     *
+     * For use with parsing XML formatted keys.  PHP's XML Parser functions use utilized - instead of PHP's DOM functions -
+     * because PHP's XML Parser functions work on PHP4 whereas PHP's DOM functions - although surperior - don't.
+     *
+     * @see Crypt_RSA::_start_element_handler()
+     * @var Array
+     * @access private
+     */
+    var $components = array();
+
+    /**
+     * Current String
+     *
+     * For use with parsing XML formatted keys.
+     *
+     * @see Crypt_RSA::_character_handler()
+     * @see Crypt_RSA::_stop_element_handler()
+     * @var Mixed
+     * @access private
+     */
+    var $current;
+
+    /**
+     * OpenSSL configuration file name.
+     *
+     * Set to NULL to use system configuration file.
+     * @see Crypt_RSA::createKey()
+     * @var Mixed
+     * @Access public
+     */
+    var $configFile;
+
+    /**
+     * The constructor
+     *
+     * If you want to make use of the openssl extension, you'll need to set the mode manually, yourself.  The reason
+     * Crypt_RSA doesn't do it is because OpenSSL doesn't fail gracefully.  openssl_pkey_new(), in particular, requires
+     * openssl.cnf be present somewhere and, unfortunately, the only real way to find out is too late.
+     *
+     * @return Crypt_RSA
+     * @access public
+     */
+    function Crypt_RSA()
+    {
+        $this->configFile = CRYPT_RSA_OPENSSL_CONFIG;
+
+        if ( !defined('CRYPT_RSA_MODE') ) {
+            switch (true) {
+                case extension_loaded('openssl') && version_compare(PHP_VERSION, '4.2.0', '>='):
+                    define('CRYPT_RSA_MODE', CRYPT_RSA_MODE_OPENSSL);
+                    break;
+                default:
+                    define('CRYPT_RSA_MODE', CRYPT_RSA_MODE_INTERNAL);
+            }
+        }
+
+        if (!defined('CRYPT_RSA_COMMENT')) {
+            define('CRYPT_RSA_COMMENT', 'phpseclib-generated-key');
+        }
+
+        $this->zero = new Math_BigInteger();
+        $this->one = new Math_BigInteger(1);
+
+        $this->hash = new Crypt_Hash('sha1');
+        $this->hLen = $this->hash->getLength();
+        $this->hashName = 'sha1';
+        $this->mgfHash = new Crypt_Hash('sha1');
+        $this->mgfHLen = $this->mgfHash->getLength();
+    }
+
+    /**
+     * Create public / private key pair
+     *
+     * Returns an array with the following three elements:
+     *  - 'privatekey': The private key.
+     *  - 'publickey':  The public key.
+     *  - 'partialkey': A partially computed key (if the execution time exceeded $timeout).
+     *                  Will need to be passed back to Crypt_RSA::createKey() as the third parameter for further processing.
+     *
+     * @access public
+     * @param optional Integer $bits
+     * @param optional Integer $timeout
+     * @param optional Math_BigInteger $p
+     */
+    function createKey($bits = 1024, $timeout = false, $partial = array())
+    {
+        if (!defined('CRYPT_RSA_EXPONENT')) {
+            // http://en.wikipedia.org/wiki/65537_%28number%29
+            define('CRYPT_RSA_EXPONENT', '65537');
+        }
+        // per <http://cseweb.ucsd.edu/~hovav/dist/survey.pdf#page=5>, this number ought not result in primes smaller
+        // than 256 bits. as a consequence if the key you're trying to create is 1024 bits and you've set CRYPT_RSA_SMALLEST_PRIME
+        // to 384 bits then you're going to get a 384 bit prime and a 640 bit prime (384 + 1024 % 384). at least if
+        // CRYPT_RSA_MODE is set to CRYPT_RSA_MODE_INTERNAL. if CRYPT_RSA_MODE is set to CRYPT_RSA_MODE_OPENSSL then
+        // CRYPT_RSA_SMALLEST_PRIME is ignored (ie. multi-prime RSA support is more intended as a way to speed up RSA key
+        // generation when there's a chance neither gmp nor OpenSSL are installed)
+        if (!defined('CRYPT_RSA_SMALLEST_PRIME')) {
+            define('CRYPT_RSA_SMALLEST_PRIME', 4096);
+        }
+
+        // OpenSSL uses 65537 as the exponent and requires RSA keys be 384 bits minimum
+        if ( CRYPT_RSA_MODE == CRYPT_RSA_MODE_OPENSSL && $bits >= 384 && CRYPT_RSA_EXPONENT == 65537) {
+            $config = array();
+            if (isset($this->configFile)) {
+                $config['config'] = $this->configFile;
+            }
+            $rsa = openssl_pkey_new(array('private_key_bits' => $bits) + $config);
+            openssl_pkey_export($rsa, $privatekey, NULL, $config);
+            $publickey = openssl_pkey_get_details($rsa);
+            $publickey = $publickey['key'];
+
+            $privatekey = call_user_func_array(array($this, '_convertPrivateKey'), array_values($this->_parseKey($privatekey, CRYPT_RSA_PRIVATE_FORMAT_PKCS1)));
+            $publickey = call_user_func_array(array($this, '_convertPublicKey'), array_values($this->_parseKey($publickey, CRYPT_RSA_PUBLIC_FORMAT_PKCS1)));
+
+            // clear the buffer of error strings stemming from a minimalistic openssl.cnf
+            while (openssl_error_string() !== false);
+
+            return array(
+                'privatekey' => $privatekey,
+                'publickey' => $publickey,
+                'partialkey' => false
+            );
+        }
+
+        static $e;
+        if (!isset($e)) {
+            $e = new Math_BigInteger(CRYPT_RSA_EXPONENT);
+        }
+
+        extract($this->_generateMinMax($bits));
+        $absoluteMin = $min;
+        $temp = $bits >> 1; // divide by two to see how many bits P and Q would be
+        if ($temp > CRYPT_RSA_SMALLEST_PRIME) {
+            $num_primes = floor($bits / CRYPT_RSA_SMALLEST_PRIME);
+            $temp = CRYPT_RSA_SMALLEST_PRIME;
+        } else {
+            $num_primes = 2;
+        }
+        extract($this->_generateMinMax($temp + $bits % $temp));
+        $finalMax = $max;
+        extract($this->_generateMinMax($temp));
+
+        $generator = new Math_BigInteger();
+
+        $n = $this->one->copy();
+        if (!empty($partial)) {
+            extract(unserialize($partial));
+        } else {
+            $exponents = $coefficients = $primes = array();
+            $lcm = array(
+                'top' => $this->one->copy(),
+                'bottom' => false
+            );
+        }
+
+        $start = time();
+        $i0 = count($primes) + 1;
+
+        do {
+            for ($i = $i0; $i <= $num_primes; $i++) {
+                if ($timeout !== false) {
+                    $timeout-= time() - $start;
+                    $start = time();
+                    if ($timeout <= 0) {
+                        return array(
+                            'privatekey' => '',
+                            'publickey'  => '',
+                            'partialkey' => serialize(array(
+                                'primes' => $primes,
+                                'coefficients' => $coefficients,
+                                'lcm' => $lcm,
+                                'exponents' => $exponents
+                            ))
+                        );
+                    }
+                }
+
+                if ($i == $num_primes) {
+                    list($min, $temp) = $absoluteMin->divide($n);
+                    if (!$temp->equals($this->zero)) {
+                        $min = $min->add($this->one); // ie. ceil()
+                    }
+                    $primes[$i] = $generator->randomPrime($min, $finalMax, $timeout);
+                } else {
+                    $primes[$i] = $generator->randomPrime($min, $max, $timeout);
+                }
+
+                if ($primes[$i] === false) { // if we've reached the timeout
+                    if (count($primes) > 1) {
+                        $partialkey = '';
+                    } else {
+                        array_pop($primes);
+                        $partialkey = serialize(array(
+                            'primes' => $primes,
+                            'coefficients' => $coefficients,
+                            'lcm' => $lcm,
+                            'exponents' => $exponents
+                        ));
+                    }
+
+                    return array(
+                        'privatekey' => '',
+                        'publickey'  => '',
+                        'partialkey' => $partialkey
+                    );
+                }
+
+                // the first coefficient is calculated differently from the rest
+                // ie. instead of being $primes[1]->modInverse($primes[2]), it's $primes[2]->modInverse($primes[1])
+                if ($i > 2) {
+                    $coefficients[$i] = $n->modInverse($primes[$i]);
+                }
+
+                $n = $n->multiply($primes[$i]);
+
+                $temp = $primes[$i]->subtract($this->one);
+
+                // textbook RSA implementations use Euler's totient function instead of the least common multiple.
+                // see http://en.wikipedia.org/wiki/Euler%27s_totient_function
+                $lcm['top'] = $lcm['top']->multiply($temp);
+                $lcm['bottom'] = $lcm['bottom'] === false ? $temp : $lcm['bottom']->gcd($temp);
+
+                $exponents[$i] = $e->modInverse($temp);
+            }
+
+            list($lcm) = $lcm['top']->divide($lcm['bottom']);
+            $gcd = $lcm->gcd($e);
+            $i0 = 1;
+        } while (!$gcd->equals($this->one));
+
+        $d = $e->modInverse($lcm);
+
+        $coefficients[2] = $primes[2]->modInverse($primes[1]);
+
+        // from <http://tools.ietf.org/html/rfc3447#appendix-A.1.2>:
+        // RSAPrivateKey ::= SEQUENCE {
+        //     version           Version,
+        //     modulus           INTEGER,  -- n
+        //     publicExponent    INTEGER,  -- e
+        //     privateExponent   INTEGER,  -- d
+        //     prime1            INTEGER,  -- p
+        //     prime2            INTEGER,  -- q
+        //     exponent1         INTEGER,  -- d mod (p-1)
+        //     exponent2         INTEGER,  -- d mod (q-1)
+        //     coefficient       INTEGER,  -- (inverse of q) mod p
+        //     otherPrimeInfos   OtherPrimeInfos OPTIONAL
+        // }
+
+        return array(
+            'privatekey' => $this->_convertPrivateKey($n, $e, $d, $primes, $exponents, $coefficients),
+            'publickey'  => $this->_convertPublicKey($n, $e),
+            'partialkey' => false
+        );
+    }
+
+    /**
+     * Convert a private key to the appropriate format.
+     *
+     * @access private
+     * @see setPrivateKeyFormat()
+     * @param String $RSAPrivateKey
+     * @return String
+     */
+    function _convertPrivateKey($n, $e, $d, $primes, $exponents, $coefficients)
+    {
+        $num_primes = count($primes);
+        $raw = array(
+            'version' => $num_primes == 2 ? chr(0) : chr(1), // two-prime vs. multi
+            'modulus' => $n->toBytes(true),
+            'publicExponent' => $e->toBytes(true),
+            'privateExponent' => $d->toBytes(true),
+            'prime1' => $primes[1]->toBytes(true),
+            'prime2' => $primes[2]->toBytes(true),
+            'exponent1' => $exponents[1]->toBytes(true),
+            'exponent2' => $exponents[2]->toBytes(true),
+            'coefficient' => $coefficients[2]->toBytes(true)
+        );
+
+        // if the format in question does not support multi-prime rsa and multi-prime rsa was used,
+        // call _convertPublicKey() instead.
+        switch ($this->privateKeyFormat) {
+            case CRYPT_RSA_PRIVATE_FORMAT_XML:
+                if ($num_primes != 2) {
+                    return false;
+                }
+                return "<RSAKeyValue>\r\n" .
+                       '  <Modulus>' . base64_encode($raw['modulus']) . "</Modulus>\r\n" .
+                       '  <Exponent>' . base64_encode($raw['publicExponent']) . "</Exponent>\r\n" .
+                       '  <P>' . base64_encode($raw['prime1']) . "</P>\r\n" .
+                       '  <Q>' . base64_encode($raw['prime2']) . "</Q>\r\n" .
+                       '  <DP>' . base64_encode($raw['exponent1']) . "</DP>\r\n" .
+                       '  <DQ>' . base64_encode($raw['exponent2']) . "</DQ>\r\n" .
+                       '  <InverseQ>' . base64_encode($raw['coefficient']) . "</InverseQ>\r\n" .
+                       '  <D>' . base64_encode($raw['privateExponent']) . "</D>\r\n" .
+                       '</RSAKeyValue>';
+                break;
+            case CRYPT_RSA_PRIVATE_FORMAT_PUTTY:
+                if ($num_primes != 2) {
+                    return false;
+                }
+                $key = "PuTTY-User-Key-File-2: ssh-rsa\r\nEncryption: ";
+                $encryption = (!empty($this->password) || is_string($this->password)) ? 'aes256-cbc' : 'none';
+                $key.= $encryption;
+                $key.= "\r\nComment: " . CRYPT_RSA_COMMENT . "\r\n";
+                $public = pack('Na*Na*Na*',
+                    strlen('ssh-rsa'), 'ssh-rsa', strlen($raw['publicExponent']), $raw['publicExponent'], strlen($raw['modulus']), $raw['modulus']
+                );
+                $source = pack('Na*Na*Na*Na*',
+                              strlen('ssh-rsa'), 'ssh-rsa', strlen($encryption), $encryption,
+                              strlen(CRYPT_RSA_COMMENT), CRYPT_RSA_COMMENT, strlen($public), $public
+                );
+                $public = base64_encode($public);
+                $key.= "Public-Lines: " . ((strlen($public) + 32) >> 6) . "\r\n";
+                $key.= chunk_split($public, 64);
+                $private = pack('Na*Na*Na*Na*',
+                    strlen($raw['privateExponent']), $raw['privateExponent'], strlen($raw['prime1']), $raw['prime1'],
+                    strlen($raw['prime2']), $raw['prime2'], strlen($raw['coefficient']), $raw['coefficient']
+                );
+                if (empty($this->password) && !is_string($this->password)) {
+                    $source.= pack('Na*', strlen($private), $private);
+                    $hashkey = 'putty-private-key-file-mac-key';
+                } else {
+                    $private.= crypt_random_string(16 - (strlen($private) & 15));
+                    $source.= pack('Na*', strlen($private), $private);
+                    if (!class_exists('Crypt_AES')) {
+                        require_once('Crypt/AES.php');
+                    }
+                    $sequence = 0;
+                    $symkey = '';
+                    while (strlen($symkey) < 32) {
+                        $temp = pack('Na*', $sequence++, $this->password);
+                        $symkey.= pack('H*', sha1($temp));
+                    }
+                    $symkey = substr($symkey, 0, 32);
+                    $crypto = new Crypt_AES();
+
+                    $crypto->setKey($symkey);
+                    $crypto->disablePadding();
+                    $private = $crypto->encrypt($private);
+                    $hashkey = 'putty-private-key-file-mac-key' . $this->password;
+                }
+
+                $private = base64_encode($private);
+                $key.= 'Private-Lines: ' . ((strlen($private) + 32) >> 6) . "\r\n";
+                $key.= chunk_split($private, 64);
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+                $hash = new Crypt_Hash('sha1');
+                $hash->setKey(pack('H*', sha1($hashkey)));
+                $key.= 'Private-MAC: ' . bin2hex($hash->hash($source)) . "\r\n";
+
+                return $key;
+            default: // eg. CRYPT_RSA_PRIVATE_FORMAT_PKCS1
+                $components = array();
+                foreach ($raw as $name => $value) {
+                    $components[$name] = pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($value)), $value);
+                }
+
+                $RSAPrivateKey = implode('', $components);
+
+                if ($num_primes > 2) {
+                    $OtherPrimeInfos = '';
+                    for ($i = 3; $i <= $num_primes; $i++) {
+                        // OtherPrimeInfos ::= SEQUENCE SIZE(1..MAX) OF OtherPrimeInfo
+                        //
+                        // OtherPrimeInfo ::= SEQUENCE {
+                        //     prime             INTEGER,  -- ri
+                        //     exponent          INTEGER,  -- di
+                        //     coefficient       INTEGER   -- ti
+                        // }
+                        $OtherPrimeInfo = pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($primes[$i]->toBytes(true))), $primes[$i]->toBytes(true));
+                        $OtherPrimeInfo.= pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($exponents[$i]->toBytes(true))), $exponents[$i]->toBytes(true));
+                        $OtherPrimeInfo.= pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($coefficients[$i]->toBytes(true))), $coefficients[$i]->toBytes(true));
+                        $OtherPrimeInfos.= pack('Ca*a*', CRYPT_RSA_ASN1_SEQUENCE, $this->_encodeLength(strlen($OtherPrimeInfo)), $OtherPrimeInfo);
+                    }
+                    $RSAPrivateKey.= pack('Ca*a*', CRYPT_RSA_ASN1_SEQUENCE, $this->_encodeLength(strlen($OtherPrimeInfos)), $OtherPrimeInfos);
+                }
+
+                $RSAPrivateKey = pack('Ca*a*', CRYPT_RSA_ASN1_SEQUENCE, $this->_encodeLength(strlen($RSAPrivateKey)), $RSAPrivateKey);
+
+                if (!empty($this->password) || is_string($this->password)) {
+                    $iv = crypt_random_string(8);
+                    $symkey = pack('H*', md5($this->password . $iv)); // symkey is short for symmetric key
+                    $symkey.= substr(pack('H*', md5($symkey . $this->password . $iv)), 0, 8);
+                    if (!class_exists('Crypt_TripleDES')) {
+                        require_once('Crypt/TripleDES.php');
+                    }
+                    $des = new Crypt_TripleDES();
+                    $des->setKey($symkey);
+                    $des->setIV($iv);
+                    $iv = strtoupper(bin2hex($iv));
+                    $RSAPrivateKey = "-----BEGIN RSA PRIVATE KEY-----\r\n" .
+                                     "Proc-Type: 4,ENCRYPTED\r\n" .
+                                     "DEK-Info: DES-EDE3-CBC,$iv\r\n" .
+                                     "\r\n" .
+                                     chunk_split(base64_encode($des->encrypt($RSAPrivateKey)), 64) .
+                                     '-----END RSA PRIVATE KEY-----';
+                } else {
+                    $RSAPrivateKey = "-----BEGIN RSA PRIVATE KEY-----\r\n" .
+                                     chunk_split(base64_encode($RSAPrivateKey), 64) .
+                                     '-----END RSA PRIVATE KEY-----';
+                }
+
+                return $RSAPrivateKey;
+        }
+    }
+
+    /**
+     * Convert a public key to the appropriate format
+     *
+     * @access private
+     * @see setPublicKeyFormat()
+     * @param String $RSAPrivateKey
+     * @return String
+     */
+    function _convertPublicKey($n, $e)
+    {
+        $modulus = $n->toBytes(true);
+        $publicExponent = $e->toBytes(true);
+
+        switch ($this->publicKeyFormat) {
+            case CRYPT_RSA_PUBLIC_FORMAT_RAW:
+                return array('e' => $e->copy(), 'n' => $n->copy());
+            case CRYPT_RSA_PUBLIC_FORMAT_XML:
+                return "<RSAKeyValue>\r\n" .
+                       '  <Modulus>' . base64_encode($modulus) . "</Modulus>\r\n" .
+                       '  <Exponent>' . base64_encode($publicExponent) . "</Exponent>\r\n" .
+                       '</RSAKeyValue>';
+                break;
+            case CRYPT_RSA_PUBLIC_FORMAT_OPENSSH:
+                // from <http://tools.ietf.org/html/rfc4253#page-15>:
+                // string    "ssh-rsa"
+                // mpint     e
+                // mpint     n
+                $RSAPublicKey = pack('Na*Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($publicExponent), $publicExponent, strlen($modulus), $modulus);
+                $RSAPublicKey = 'ssh-rsa ' . base64_encode($RSAPublicKey) . ' ' . CRYPT_RSA_COMMENT;
+
+                return $RSAPublicKey;
+            default: // eg. CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW or CRYPT_RSA_PUBLIC_FORMAT_PKCS1
+                // from <http://tools.ietf.org/html/rfc3447#appendix-A.1.1>:
+                // RSAPublicKey ::= SEQUENCE {
+                //     modulus           INTEGER,  -- n
+                //     publicExponent    INTEGER   -- e
+                // }
+                $components = array(
+                    'modulus' => pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($modulus)), $modulus),
+                    'publicExponent' => pack('Ca*a*', CRYPT_RSA_ASN1_INTEGER, $this->_encodeLength(strlen($publicExponent)), $publicExponent)
+                );
+
+                $RSAPublicKey = pack('Ca*a*a*',
+                    CRYPT_RSA_ASN1_SEQUENCE, $this->_encodeLength(strlen($components['modulus']) + strlen($components['publicExponent'])),
+                    $components['modulus'], $components['publicExponent']
+                );
+
+                if ($this->publicKeyFormat == CRYPT_RSA_PUBLIC_FORMAT_PKCS1) {
+                    // sequence(oid(1.2.840.113549.1.1.1), null)) = rsaEncryption.
+                    $rsaOID = pack('H*', '300d06092a864886f70d0101010500'); // hex version of MA0GCSqGSIb3DQEBAQUA
+                    $RSAPublicKey = chr(0) . $RSAPublicKey;
+                    $RSAPublicKey = chr(3) . $this->_encodeLength(strlen($RSAPublicKey)) . $RSAPublicKey;
+
+                    $RSAPublicKey = pack('Ca*a*',
+                        CRYPT_RSA_ASN1_SEQUENCE, $this->_encodeLength(strlen($rsaOID . $RSAPublicKey)), $rsaOID . $RSAPublicKey
+                    );
+                }
+
+                $RSAPublicKey = "-----BEGIN PUBLIC KEY-----\r\n" .
+                                 chunk_split(base64_encode($RSAPublicKey), 64) .
+                                 '-----END PUBLIC KEY-----';
+
+                return $RSAPublicKey;
+        }
+    }
+
+    /**
+     * Break a public or private key down into its constituant components
+     *
+     * @access private
+     * @see _convertPublicKey()
+     * @see _convertPrivateKey()
+     * @param String $key
+     * @param Integer $type
+     * @return Array
+     */
+    function _parseKey($key, $type)
+    {
+        if ($type != CRYPT_RSA_PUBLIC_FORMAT_RAW && !is_string($key)) {
+            return false;
+        }
+
+        switch ($type) {
+            case CRYPT_RSA_PUBLIC_FORMAT_RAW:
+                if (!is_array($key)) {
+                    return false;
+                }
+                $components = array();
+                switch (true) {
+                    case isset($key['e']):
+                        $components['publicExponent'] = $key['e']->copy();
+                        break;
+                    case isset($key['exponent']):
+                        $components['publicExponent'] = $key['exponent']->copy();
+                        break;
+                    case isset($key['publicExponent']):
+                        $components['publicExponent'] = $key['publicExponent']->copy();
+                        break;
+                    case isset($key[0]):
+                        $components['publicExponent'] = $key[0]->copy();
+                }
+                switch (true) {
+                    case isset($key['n']):
+                        $components['modulus'] = $key['n']->copy();
+                        break;
+                    case isset($key['modulo']):
+                        $components['modulus'] = $key['modulo']->copy();
+                        break;
+                    case isset($key['modulus']):
+                        $components['modulus'] = $key['modulus']->copy();
+                        break;
+                    case isset($key[1]):
+                        $components['modulus'] = $key[1]->copy();
+                }
+                return isset($components['modulus']) && isset($components['publicExponent']) ? $components : false;
+            case CRYPT_RSA_PRIVATE_FORMAT_PKCS1:
+            case CRYPT_RSA_PUBLIC_FORMAT_PKCS1:
+                /* Although PKCS#1 proposes a format that public and private keys can use, encrypting them is
+                   "outside the scope" of PKCS#1.  PKCS#1 then refers you to PKCS#12 and PKCS#15 if you're wanting to
+                   protect private keys, however, that's not what OpenSSL* does.  OpenSSL protects private keys by adding
+                   two new "fields" to the key - DEK-Info and Proc-Type.  These fields are discussed here:
+
+                   http://tools.ietf.org/html/rfc1421#section-4.6.1.1
+                   http://tools.ietf.org/html/rfc1421#section-4.6.1.3
+
+                   DES-EDE3-CBC as an algorithm, however, is not discussed anywhere, near as I can tell.
+                   DES-CBC and DES-EDE are discussed in RFC1423, however, DES-EDE3-CBC isn't, nor is its key derivation
+                   function.  As is, the definitive authority on this encoding scheme isn't the IETF but rather OpenSSL's
+                   own implementation.  ie. the implementation *is* the standard and any bugs that may exist in that 
+                   implementation are part of the standard, as well.
+
+                   * OpenSSL is the de facto standard.  It's utilized by OpenSSH and other projects */
+                if (preg_match('#DEK-Info: (.+),(.+)#', $key, $matches)) {
+                    $iv = pack('H*', trim($matches[2]));
+                    $symkey = pack('H*', md5($this->password . substr($iv, 0, 8))); // symkey is short for symmetric key
+                    $symkey.= substr(pack('H*', md5($symkey . $this->password . $iv)), 0, 8);
+                    $ciphertext = preg_replace('#.+(\r|\n|\r\n)\1|[\r\n]|-.+-| #s', '', $key);
+                    $ciphertext = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $ciphertext) ? base64_decode($ciphertext) : false;
+                    if ($ciphertext === false) {
+                        $ciphertext = $key;
+                    }
+                    switch ($matches[1]) {
+                        case 'AES-128-CBC':
+                            if (!class_exists('Crypt_AES')) {
+                                require_once('Crypt/AES.php');
+                            }
+                            $symkey = substr($symkey, 0, 16);
+                            $crypto = new Crypt_AES();
+                            break;
+                        case 'DES-EDE3-CFB':
+                            if (!class_exists('Crypt_TripleDES')) {
+                                require_once('Crypt/TripleDES.php');
+                            }
+                            $crypto = new Crypt_TripleDES(CRYPT_DES_MODE_CFB);
+                            break;
+                        case 'DES-EDE3-CBC':
+                            if (!class_exists('Crypt_TripleDES')) {
+                                require_once('Crypt/TripleDES.php');
+                            }
+                            $crypto = new Crypt_TripleDES();
+                            break;
+                        case 'DES-CBC':
+                            if (!class_exists('Crypt_DES')) {
+                                require_once('Crypt/DES.php');
+                            }
+                            $crypto = new Crypt_DES();
+                            break;
+                        default:
+                            return false;
+                    }
+                    $crypto->setKey($symkey);
+                    $crypto->setIV($iv);
+                    $decoded = $crypto->decrypt($ciphertext);
+                } else {
+                    $decoded = preg_replace('#-.+-|[\r\n]| #', '', $key);
+                    $decoded = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $decoded) ? base64_decode($decoded) : false;
+                }
+
+                if ($decoded !== false) {
+                    $key = $decoded;
+                }
+
+                $components = array();
+
+                if (ord($this->_string_shift($key)) != CRYPT_RSA_ASN1_SEQUENCE) {
+                    return false;
+                }
+                if ($this->_decodeLength($key) != strlen($key)) {
+                    return false;
+                }
+
+                $tag = ord($this->_string_shift($key));
+                /* intended for keys for which OpenSSL's asn1parse returns the following:
+
+                    0:d=0  hl=4 l= 631 cons: SEQUENCE
+                    4:d=1  hl=2 l=   1 prim:  INTEGER           :00
+                    7:d=1  hl=2 l=  13 cons:  SEQUENCE
+                    9:d=2  hl=2 l=   9 prim:   OBJECT            :rsaEncryption
+                   20:d=2  hl=2 l=   0 prim:   NULL
+                   22:d=1  hl=4 l= 609 prim:  OCTET STRING */
+
+                if ($tag == CRYPT_RSA_ASN1_INTEGER && substr($key, 0, 3) == "\x01\x00\x30") {
+                    $this->_string_shift($key, 3);
+                    $tag = CRYPT_RSA_ASN1_SEQUENCE;
+                }
+
+                if ($tag == CRYPT_RSA_ASN1_SEQUENCE) {
+                    /* intended for keys for which OpenSSL's asn1parse returns the following:
+
+                        0:d=0  hl=4 l= 290 cons: SEQUENCE
+                        4:d=1  hl=2 l=  13 cons:  SEQUENCE
+                        6:d=2  hl=2 l=   9 prim:   OBJECT            :rsaEncryption
+                       17:d=2  hl=2 l=   0 prim:   NULL
+                       19:d=1  hl=4 l= 271 prim:  BIT STRING */
+                    $this->_string_shift($key, $this->_decodeLength($key));
+                    $tag = ord($this->_string_shift($key)); // skip over the BIT STRING / OCTET STRING tag
+                    $this->_decodeLength($key); // skip over the BIT STRING / OCTET STRING length
+                    // "The initial octet shall encode, as an unsigned binary integer wtih bit 1 as the least significant bit, the number of
+                    //  unused bits in the final subsequent octet. The number shall be in the range zero to seven."
+                    //  -- http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf (section 8.6.2.2)
+                    if ($tag == CRYPT_RSA_ASN1_BITSTRING) {
+                        $this->_string_shift($key);
+                    }
+                    if (ord($this->_string_shift($key)) != CRYPT_RSA_ASN1_SEQUENCE) {
+                        return false;
+                    }
+                    if ($this->_decodeLength($key) != strlen($key)) {
+                        return false;
+                    }
+                    $tag = ord($this->_string_shift($key));
+                }
+                if ($tag != CRYPT_RSA_ASN1_INTEGER) {
+                    return false;
+                }
+
+                $length = $this->_decodeLength($key);
+                $temp = $this->_string_shift($key, $length);
+                if (strlen($temp) != 1 || ord($temp) > 2) {
+                    $components['modulus'] = new Math_BigInteger($temp, 256);
+                    $this->_string_shift($key); // skip over CRYPT_RSA_ASN1_INTEGER
+                    $length = $this->_decodeLength($key);
+                    $components[$type == CRYPT_RSA_PUBLIC_FORMAT_PKCS1 ? 'publicExponent' : 'privateExponent'] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+
+                    return $components;
+                }
+                if (ord($this->_string_shift($key)) != CRYPT_RSA_ASN1_INTEGER) {
+                    return false;
+                }
+                $length = $this->_decodeLength($key);
+                $components['modulus'] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['publicExponent'] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['privateExponent'] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['primes'] = array(1 => new Math_BigInteger($this->_string_shift($key, $length), 256));
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['primes'][] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['exponents'] = array(1 => new Math_BigInteger($this->_string_shift($key, $length), 256));
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['exponents'][] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                $this->_string_shift($key);
+                $length = $this->_decodeLength($key);
+                $components['coefficients'] = array(2 => new Math_BigInteger($this->_string_shift($key, $length), 256));
+
+                if (!empty($key)) {
+                    if (ord($this->_string_shift($key)) != CRYPT_RSA_ASN1_SEQUENCE) {
+                        return false;
+                    }
+                    $this->_decodeLength($key);
+                    while (!empty($key)) {
+                        if (ord($this->_string_shift($key)) != CRYPT_RSA_ASN1_SEQUENCE) {
+                            return false;
+                        }
+                        $this->_decodeLength($key);
+                        $key = substr($key, 1);
+                        $length = $this->_decodeLength($key);
+                        $components['primes'][] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                        $this->_string_shift($key);
+                        $length = $this->_decodeLength($key);
+                        $components['exponents'][] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                        $this->_string_shift($key);
+                        $length = $this->_decodeLength($key);
+                        $components['coefficients'][] = new Math_BigInteger($this->_string_shift($key, $length), 256);
+                    }
+                }
+
+                return $components;
+            case CRYPT_RSA_PUBLIC_FORMAT_OPENSSH:
+                $key = base64_decode(preg_replace('#^ssh-rsa | .+$#', '', $key));
+                if ($key === false) {
+                    return false;
+                }
+
+                $cleanup = substr($key, 0, 11) == "\0\0\0\7ssh-rsa";
+
+                if (strlen($key) <= 4) {
+                    return false;
+                }
+                extract(unpack('Nlength', $this->_string_shift($key, 4)));
+                $publicExponent = new Math_BigInteger($this->_string_shift($key, $length), -256);
+                if (strlen($key) <= 4) {
+                    return false;
+                }
+                extract(unpack('Nlength', $this->_string_shift($key, 4)));
+                $modulus = new Math_BigInteger($this->_string_shift($key, $length), -256);
+
+                if ($cleanup && strlen($key)) {
+                    if (strlen($key) <= 4) {
+                        return false;
+                    }
+                    extract(unpack('Nlength', $this->_string_shift($key, 4)));
+                    $realModulus = new Math_BigInteger($this->_string_shift($key, $length), -256);
+                    return strlen($key) ? false : array(
+                        'modulus' => $realModulus,
+                        'publicExponent' => $modulus
+                    );
+                } else {
+                    return strlen($key) ? false : array(
+                        'modulus' => $modulus,
+                        'publicExponent' => $publicExponent
+                    );
+                }
+            // http://www.w3.org/TR/xmldsig-core/#sec-RSAKeyValue
+            // http://en.wikipedia.org/wiki/XML_Signature
+            case CRYPT_RSA_PRIVATE_FORMAT_XML:
+            case CRYPT_RSA_PUBLIC_FORMAT_XML:
+                $this->components = array();
+
+                $xml = xml_parser_create('UTF-8');
+                xml_set_object($xml, $this);
+                xml_set_element_handler($xml, '_start_element_handler', '_stop_element_handler');
+                xml_set_character_data_handler($xml, '_data_handler');
+                // add <xml></xml> to account for "dangling" tags like <BitStrength>...</BitStrength> that are sometimes added
+                if (!xml_parse($xml, '<xml>' . $key . '</xml>')) {
+                    return false;
+                }
+
+                return isset($this->components['modulus']) && isset($this->components['publicExponent']) ? $this->components : false;
+            // from PuTTY's SSHPUBK.C
+            case CRYPT_RSA_PRIVATE_FORMAT_PUTTY:
+                $components = array();
+                $key = preg_split('#\r\n|\r|\n#', $key);
+                $type = trim(preg_replace('#PuTTY-User-Key-File-2: (.+)#', '$1', $key[0]));
+                if ($type != 'ssh-rsa') {
+                    return false;
+                }
+                $encryption = trim(preg_replace('#Encryption: (.+)#', '$1', $key[1]));
+
+                $publicLength = trim(preg_replace('#Public-Lines: (\d+)#', '$1', $key[3]));
+                $public = base64_decode(implode('', array_map('trim', array_slice($key, 4, $publicLength))));
+                $public = substr($public, 11);
+                extract(unpack('Nlength', $this->_string_shift($public, 4)));
+                $components['publicExponent'] = new Math_BigInteger($this->_string_shift($public, $length), -256);
+                extract(unpack('Nlength', $this->_string_shift($public, 4)));
+                $components['modulus'] = new Math_BigInteger($this->_string_shift($public, $length), -256);
+
+                $privateLength = trim(preg_replace('#Private-Lines: (\d+)#', '$1', $key[$publicLength + 4]));
+                $private = base64_decode(implode('', array_map('trim', array_slice($key, $publicLength + 5, $privateLength))));
+
+                switch ($encryption) {
+                    case 'aes256-cbc':
+                        if (!class_exists('Crypt_AES')) {
+                            require_once('Crypt/AES.php');
+                        }
+                        $symkey = '';
+                        $sequence = 0;
+                        while (strlen($symkey) < 32) {
+                            $temp = pack('Na*', $sequence++, $this->password);
+                            $symkey.= pack('H*', sha1($temp));
+                        }
+                        $symkey = substr($symkey, 0, 32);
+                        $crypto = new Crypt_AES();
+                }
+
+                if ($encryption != 'none') {
+                    $crypto->setKey($symkey);
+                    $crypto->disablePadding();
+                    $private = $crypto->decrypt($private);
+                    if ($private === false) {
+                        return false;
+                    }
+                }
+
+                extract(unpack('Nlength', $this->_string_shift($private, 4)));
+                if (strlen($private) < $length) {
+                    return false;
+                }
+                $components['privateExponent'] = new Math_BigInteger($this->_string_shift($private, $length), -256);
+                extract(unpack('Nlength', $this->_string_shift($private, 4)));
+                if (strlen($private) < $length) {
+                    return false;
+                }
+                $components['primes'] = array(1 => new Math_BigInteger($this->_string_shift($private, $length), -256));
+                extract(unpack('Nlength', $this->_string_shift($private, 4)));
+                if (strlen($private) < $length) {
+                    return false;
+                }
+                $components['primes'][] = new Math_BigInteger($this->_string_shift($private, $length), -256);
+
+                $temp = $components['primes'][1]->subtract($this->one);
+                $components['exponents'] = array(1 => $components['publicExponent']->modInverse($temp));
+                $temp = $components['primes'][2]->subtract($this->one);
+                $components['exponents'][] = $components['publicExponent']->modInverse($temp);
+
+                extract(unpack('Nlength', $this->_string_shift($private, 4)));
+                if (strlen($private) < $length) {
+                    return false;
+                }
+                $components['coefficients'] = array(2 => new Math_BigInteger($this->_string_shift($private, $length), -256));
+
+                return $components;
+        }
+    }
+
+    /**
+     * Returns the key size
+     *
+     * More specifically, this returns the size of the modulo in bits.
+     *
+     * @access public
+     * @return Integer
+     */
+    function getSize()
+    {
+        return !isset($this->modulus) ? 0 : strlen($this->modulus->toBits());
+    }
+
+    /**
+     * Start Element Handler
+     *
+     * Called by xml_set_element_handler()
+     *
+     * @access private
+     * @param Resource $parser
+     * @param String $name
+     * @param Array $attribs
+     */
+    function _start_element_handler($parser, $name, $attribs)
+    {
+        //$name = strtoupper($name);
+        switch ($name) {
+            case 'MODULUS':
+                $this->current = &$this->components['modulus'];
+                break;
+            case 'EXPONENT':
+                $this->current = &$this->components['publicExponent'];
+                break;
+            case 'P':
+                $this->current = &$this->components['primes'][1];
+                break;
+            case 'Q':
+                $this->current = &$this->components['primes'][2];
+                break;
+            case 'DP':
+                $this->current = &$this->components['exponents'][1];
+                break;
+            case 'DQ':
+                $this->current = &$this->components['exponents'][2];
+                break;
+            case 'INVERSEQ':
+                $this->current = &$this->components['coefficients'][2];
+                break;
+            case 'D':
+                $this->current = &$this->components['privateExponent'];
+                break;
+            default:
+                unset($this->current);
+        }
+        $this->current = '';
+    }
+
+    /**
+     * Stop Element Handler
+     *
+     * Called by xml_set_element_handler()
+     *
+     * @access private
+     * @param Resource $parser
+     * @param String $name
+     */
+    function _stop_element_handler($parser, $name)
+    {
+        //$name = strtoupper($name);
+        if ($name == 'RSAKEYVALUE') {
+            return;
+        }
+        $this->current = new Math_BigInteger(base64_decode($this->current), 256);
+    }
+
+    /**
+     * Data Handler
+     *
+     * Called by xml_set_character_data_handler()
+     *
+     * @access private
+     * @param Resource $parser
+     * @param String $data
+     */
+    function _data_handler($parser, $data)
+    {
+        if (!isset($this->current) || is_object($this->current)) {
+            return;
+        }
+        $this->current.= trim($data);
+    }
+
+    /**
+     * Loads a public or private key
+     *
+     * Returns true on success and false on failure (ie. an incorrect password was provided or the key was malformed)
+     *
+     * @access public
+     * @param String $key
+     * @param Integer $type optional
+     */
+    function loadKey($key, $type = false)
+    {
+        if ($type === false) {
+            $types = array(
+                CRYPT_RSA_PUBLIC_FORMAT_RAW,
+                CRYPT_RSA_PRIVATE_FORMAT_PKCS1,
+                CRYPT_RSA_PRIVATE_FORMAT_XML,
+                CRYPT_RSA_PRIVATE_FORMAT_PUTTY,
+                CRYPT_RSA_PUBLIC_FORMAT_OPENSSH
+            );
+            foreach ($types as $type) {
+                $components = $this->_parseKey($key, $type);
+                if ($components !== false) {
+                    break;
+                }
+            }
+            
+        } else {
+            $components = $this->_parseKey($key, $type);
+        }
+
+        if ($components === false) {
+            return false;
+        }
+
+        $this->modulus = $components['modulus'];
+        $this->k = strlen($this->modulus->toBytes());
+        $this->exponent = isset($components['privateExponent']) ? $components['privateExponent'] : $components['publicExponent'];
+        if (isset($components['primes'])) {
+            $this->primes = $components['primes'];
+            $this->exponents = $components['exponents'];
+            $this->coefficients = $components['coefficients'];
+            $this->publicExponent = $components['publicExponent'];
+        } else {
+            $this->primes = array();
+            $this->exponents = array();
+            $this->coefficients = array();
+            $this->publicExponent = false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Sets the password
+     *
+     * Private keys can be encrypted with a password.  To unset the password, pass in the empty string or false.
+     * Or rather, pass in $password such that empty($password) && !is_string($password) is true.
+     *
+     * @see createKey()
+     * @see loadKey()
+     * @access public
+     * @param String $password
+     */
+    function setPassword($password = false)
+    {
+        $this->password = $password;
+    }
+
+    /**
+     * Defines the public key
+     *
+     * Some private key formats define the public exponent and some don't.  Those that don't define it are problematic when
+     * used in certain contexts.  For example, in SSH-2, RSA authentication works by sending the public key along with a
+     * message signed by the private key to the server.  The SSH-2 server looks the public key up in an index of public keys
+     * and if it's present then proceeds to verify the signature.  Problem is, if your private key doesn't include the public
+     * exponent this won't work unless you manually add the public exponent.
+     *
+     * Do note that when a new key is loaded the index will be cleared.
+     *
+     * Returns true on success, false on failure
+     *
+     * @see getPublicKey()
+     * @access public
+     * @param String $key optional
+     * @param Integer $type optional
+     * @return Boolean
+     */
+    function setPublicKey($key = false, $type = false)
+    {
+        if ($key === false && !empty($this->modulus)) {
+            $this->publicExponent = $this->exponent;
+            return true;
+        }
+
+        if ($type === false) {
+            $types = array(
+                CRYPT_RSA_PUBLIC_FORMAT_RAW,
+                CRYPT_RSA_PUBLIC_FORMAT_PKCS1,
+                CRYPT_RSA_PUBLIC_FORMAT_XML,
+                CRYPT_RSA_PUBLIC_FORMAT_OPENSSH
+            );
+            foreach ($types as $type) {
+                $components = $this->_parseKey($key, $type);
+                if ($components !== false) {
+                    break;
+                }
+            }
+        } else {
+            $components = $this->_parseKey($key, $type);
+        }
+
+        if ($components === false) {
+            return false;
+        }
+
+        if (empty($this->modulus) || !$this->modulus->equals($components['modulus'])) {
+            $this->modulus = $components['modulus'];
+            $this->exponent = $this->publicExponent = $components['publicExponent'];
+            return true;
+        }
+
+        $this->publicExponent = $components['publicExponent'];
+
+        return true;
+    }
+
+    /**
+     * Returns the public key
+     *
+     * The public key is only returned under two circumstances - if the private key had the public key embedded within it
+     * or if the public key was set via setPublicKey().  If the currently loaded key is supposed to be the public key this
+     * function won't return it since this library, for the most part, doesn't distinguish between public and private keys.
+     *
+     * @see getPublicKey()
+     * @access public
+     * @param String $key
+     * @param Integer $type optional
+     */
+    function getPublicKey($type = CRYPT_RSA_PUBLIC_FORMAT_PKCS1)
+    {
+        if (empty($this->modulus) || empty($this->publicExponent)) {
+            return false;
+        }
+
+        $oldFormat = $this->publicKeyFormat;
+        $this->publicKeyFormat = $type;
+        $temp = $this->_convertPublicKey($this->modulus, $this->publicExponent);
+        $this->publicKeyFormat = $oldFormat;
+        return $temp;
+    }
+
+    /**
+     * Returns the private key
+     *
+     * The private key is only returned if the currently loaded key contains the constituent prime numbers.
+     *
+     * @see getPublicKey()
+     * @access public
+     * @param String $key
+     * @param Integer $type optional
+     */
+    function getPrivateKey($type = CRYPT_RSA_PUBLIC_FORMAT_PKCS1)
+    {
+        if (empty($this->primes)) {
+            return false;
+        }
+
+        $oldFormat = $this->privateKeyFormat;
+        $this->privateKeyFormat = $type;
+        $temp = $this->_convertPrivateKey($this->modulus, $this->publicExponent, $this->exponent, $this->primes, $this->exponents, $this->coefficients);
+        $this->privateKeyFormat = $oldFormat;
+        return $temp;
+    }
+
+    /**
+     * Returns a minimalistic private key
+     *
+     * Returns the private key without the prime number constituants.  Structurally identical to a public key that
+     * hasn't been set as the public key
+     *
+     * @see getPrivateKey()
+     * @access private
+     * @param String $key
+     * @param Integer $type optional
+     */
+    function _getPrivatePublicKey($mode = CRYPT_RSA_PUBLIC_FORMAT_PKCS1)
+    {
+        if (empty($this->modulus) || empty($this->exponent)) {
+            return false;
+        }
+
+        $oldFormat = $this->publicKeyFormat;
+        $this->publicKeyFormat = $mode;
+        $temp = $this->_convertPublicKey($this->modulus, $this->exponent);
+        $this->publicKeyFormat = $oldFormat;
+        return $temp;
+    }
+
+    /**
+     *  __toString() magic method
+     *
+     * @access public
+     */
+    function __toString()
+    {
+        $key = $this->getPrivateKey($this->privateKeyFormat);
+        if ($key !== false) {
+            return $key;
+        }
+        $key = $this->_getPrivatePublicKey($this->publicKeyFormat);
+        return $key !== false ? $key : '';
+    }
+
+    /**
+     * Generates the smallest and largest numbers requiring $bits bits
+     *
+     * @access private
+     * @param Integer $bits
+     * @return Array
+     */
+    function _generateMinMax($bits)
+    {
+        $bytes = $bits >> 3;
+        $min = str_repeat(chr(0), $bytes);
+        $max = str_repeat(chr(0xFF), $bytes);
+        $msb = $bits & 7;
+        if ($msb) {
+            $min = chr(1 << ($msb - 1)) . $min;
+            $max = chr((1 << $msb) - 1) . $max;
+        } else {
+            $min[0] = chr(0x80);
+        }
+
+        return array(
+            'min' => new Math_BigInteger($min, 256),
+            'max' => new Math_BigInteger($max, 256)
+        );
+    }
+
+    /**
+     * DER-decode the length
+     *
+     * DER supports lengths up to (2**8)**127, however, we'll only support lengths up to (2**8)**4.  See
+     * {@link http://itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#p=13 X.690 � 8.1.3} for more information.
+     *
+     * @access private
+     * @param String $string
+     * @return Integer
+     */
+    function _decodeLength(&$string)
+    {
+        $length = ord($this->_string_shift($string));
+        if ( $length & 0x80 ) { // definite length, long form
+            $length&= 0x7F;
+            $temp = $this->_string_shift($string, $length);
+            list(, $length) = unpack('N', substr(str_pad($temp, 4, chr(0), STR_PAD_LEFT), -4));
+        }
+        return $length;
+    }
+
+    /**
+     * DER-encode the length
+     *
+     * DER supports lengths up to (2**8)**127, however, we'll only support lengths up to (2**8)**4.  See
+     * {@link http://itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#p=13 X.690 � 8.1.3} for more information.
+     *
+     * @access private
+     * @param Integer $length
+     * @return String
+     */
+    function _encodeLength($length)
+    {
+        if ($length <= 0x7F) {
+            return chr($length);
+        }
+
+        $temp = ltrim(pack('N', $length), chr(0));
+        return pack('Ca*', 0x80 | strlen($temp), $temp);
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+
+    /**
+     * Determines the private key format
+     *
+     * @see createKey()
+     * @access public
+     * @param Integer $format
+     */
+    function setPrivateKeyFormat($format)
+    {
+        $this->privateKeyFormat = $format;
+    }
+
+    /**
+     * Determines the public key format
+     *
+     * @see createKey()
+     * @access public
+     * @param Integer $format
+     */
+    function setPublicKeyFormat($format)
+    {
+        $this->publicKeyFormat = $format;
+    }
+
+    /**
+     * Determines which hashing function should be used
+     *
+     * Used with signature production / verification and (if the encryption mode is CRYPT_RSA_ENCRYPTION_OAEP) encryption and
+     * decryption.  If $hash isn't supported, sha1 is used.
+     *
+     * @access public
+     * @param String $hash
+     */
+    function setHash($hash)
+    {
+        // Crypt_Hash supports algorithms that PKCS#1 doesn't support.  md5-96 and sha1-96, for example.
+        switch ($hash) {
+            case 'md2':
+            case 'md5':
+            case 'sha1':
+            case 'sha256':
+            case 'sha384':
+            case 'sha512':
+                $this->hash = new Crypt_Hash($hash);
+                $this->hashName = $hash;
+                break;
+            default:
+                $this->hash = new Crypt_Hash('sha1');
+                $this->hashName = 'sha1';
+        }
+        $this->hLen = $this->hash->getLength();
+    }
+
+    /**
+     * Determines which hashing function should be used for the mask generation function
+     *
+     * The mask generation function is used by CRYPT_RSA_ENCRYPTION_OAEP and CRYPT_RSA_SIGNATURE_PSS and although it's
+     * best if Hash and MGFHash are set to the same thing this is not a requirement.
+     *
+     * @access public
+     * @param String $hash
+     */
+    function setMGFHash($hash)
+    {
+        // Crypt_Hash supports algorithms that PKCS#1 doesn't support.  md5-96 and sha1-96, for example.
+        switch ($hash) {
+            case 'md2':
+            case 'md5':
+            case 'sha1':
+            case 'sha256':
+            case 'sha384':
+            case 'sha512':
+                $this->mgfHash = new Crypt_Hash($hash);
+                break;
+            default:
+                $this->mgfHash = new Crypt_Hash('sha1');
+        }
+        $this->mgfHLen = $this->mgfHash->getLength();
+    }
+
+    /**
+     * Determines the salt length
+     *
+     * To quote from {@link http://tools.ietf.org/html/rfc3447#page-38 RFC3447#page-38}:
+     *
+     *    Typical salt lengths in octets are hLen (the length of the output
+     *    of the hash function Hash) and 0.
+     *
+     * @access public
+     * @param Integer $format
+     */
+    function setSaltLength($sLen)
+    {
+        $this->sLen = $sLen;
+    }
+
+    /**
+     * Integer-to-Octet-String primitive
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-4.1 RFC3447#section-4.1}.
+     *
+     * @access private
+     * @param Math_BigInteger $x
+     * @param Integer $xLen
+     * @return String
+     */
+    function _i2osp($x, $xLen)
+    {
+        $x = $x->toBytes();
+        if (strlen($x) > $xLen) {
+            user_error('Integer too large');
+            return false;
+        }
+        return str_pad($x, $xLen, chr(0), STR_PAD_LEFT);
+    }
+
+    /**
+     * Octet-String-to-Integer primitive
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-4.2 RFC3447#section-4.2}.
+     *
+     * @access private
+     * @param String $x
+     * @return Math_BigInteger
+     */
+    function _os2ip($x)
+    {
+        return new Math_BigInteger($x, 256);
+    }
+
+    /**
+     * Exponentiate with or without Chinese Remainder Theorem
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-5.1.1 RFC3447#section-5.1.2}.
+     *
+     * @access private
+     * @param Math_BigInteger $x
+     * @return Math_BigInteger
+     */
+    function _exponentiate($x)
+    {
+        if (empty($this->primes) || empty($this->coefficients) || empty($this->exponents)) {
+            return $x->modPow($this->exponent, $this->modulus);
+        }
+
+        $num_primes = count($this->primes);
+
+        if (defined('CRYPT_RSA_DISABLE_BLINDING')) {
+            $m_i = array(
+                1 => $x->modPow($this->exponents[1], $this->primes[1]),
+                2 => $x->modPow($this->exponents[2], $this->primes[2])
+            );
+            $h = $m_i[1]->subtract($m_i[2]);
+            $h = $h->multiply($this->coefficients[2]);
+            list(, $h) = $h->divide($this->primes[1]);
+            $m = $m_i[2]->add($h->multiply($this->primes[2]));
+
+            $r = $this->primes[1];
+            for ($i = 3; $i <= $num_primes; $i++) {
+                $m_i = $x->modPow($this->exponents[$i], $this->primes[$i]);
+
+                $r = $r->multiply($this->primes[$i - 1]);
+
+                $h = $m_i->subtract($m);
+                $h = $h->multiply($this->coefficients[$i]);
+                list(, $h) = $h->divide($this->primes[$i]);
+
+                $m = $m->add($r->multiply($h));
+            }
+        } else {
+            $smallest = $this->primes[1];
+            for ($i = 2; $i <= $num_primes; $i++) {
+                if ($smallest->compare($this->primes[$i]) > 0) {
+                    $smallest = $this->primes[$i];
+                }
+            }
+
+            $one = new Math_BigInteger(1);
+
+            $r = $one->random($one, $smallest->subtract($one));
+
+            $m_i = array(
+                1 => $this->_blind($x, $r, 1),
+                2 => $this->_blind($x, $r, 2)
+            );
+            $h = $m_i[1]->subtract($m_i[2]);
+            $h = $h->multiply($this->coefficients[2]);
+            list(, $h) = $h->divide($this->primes[1]);
+            $m = $m_i[2]->add($h->multiply($this->primes[2]));
+
+            $r = $this->primes[1];
+            for ($i = 3; $i <= $num_primes; $i++) {
+                $m_i = $this->_blind($x, $r, $i);
+
+                $r = $r->multiply($this->primes[$i - 1]);
+
+                $h = $m_i->subtract($m);
+                $h = $h->multiply($this->coefficients[$i]);
+                list(, $h) = $h->divide($this->primes[$i]);
+
+                $m = $m->add($r->multiply($h));
+            }
+        }
+
+        return $m;
+    }
+
+    /**
+     * Performs RSA Blinding
+     *
+     * Protects against timing attacks by employing RSA Blinding.
+     * Returns $x->modPow($this->exponents[$i], $this->primes[$i])
+     *
+     * @access private
+     * @param Math_BigInteger $x
+     * @param Math_BigInteger $r
+     * @param Integer $i
+     * @return Math_BigInteger
+     */
+    function _blind($x, $r, $i)
+    {
+        $x = $x->multiply($r->modPow($this->publicExponent, $this->primes[$i]));
+        $x = $x->modPow($this->exponents[$i], $this->primes[$i]);
+
+        $r = $r->modInverse($this->primes[$i]);
+        $x = $x->multiply($r);
+        list(, $x) = $x->divide($this->primes[$i]);
+
+        return $x;
+    }
+
+    /**
+     * Performs blinded RSA equality testing
+     *
+     * Protects against a particular type of timing attack described.
+     *
+     * See {@link http://codahale.com/a-lesson-in-timing-attacks/ A Lesson In Timing Attacks (or, Don�t use MessageDigest.isEquals)}
+     *
+     * Thanks for the heads up singpolyma!
+     *
+     * @access private
+     * @param String $x
+     * @param String $y
+     * @return Boolean
+     */
+    function _equals($x, $y)
+    {
+        if (strlen($x) != strlen($y)) {
+            return false;
+        }
+
+        $result = 0;
+        for ($i = 0; $i < strlen($x); $i++) {
+            $result |= ord($x[$i]) ^ ord($y[$i]);
+        }
+
+        return $result == 0;
+    }
+
+    /**
+     * RSAEP
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-5.1.1 RFC3447#section-5.1.1}.
+     *
+     * @access private
+     * @param Math_BigInteger $m
+     * @return Math_BigInteger
+     */
+    function _rsaep($m)
+    {
+        if ($m->compare($this->zero) < 0 || $m->compare($this->modulus) > 0) {
+            user_error('Message representative out of range');
+            return false;
+        }
+        return $this->_exponentiate($m);
+    }
+
+    /**
+     * RSADP
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-5.1.2 RFC3447#section-5.1.2}.
+     *
+     * @access private
+     * @param Math_BigInteger $c
+     * @return Math_BigInteger
+     */
+    function _rsadp($c)
+    {
+        if ($c->compare($this->zero) < 0 || $c->compare($this->modulus) > 0) {
+            user_error('Ciphertext representative out of range');
+            return false;
+        }
+        return $this->_exponentiate($c);
+    }
+
+    /**
+     * RSASP1
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-5.2.1 RFC3447#section-5.2.1}.
+     *
+     * @access private
+     * @param Math_BigInteger $m
+     * @return Math_BigInteger
+     */
+    function _rsasp1($m)
+    {
+        if ($m->compare($this->zero) < 0 || $m->compare($this->modulus) > 0) {
+            user_error('Message representative out of range');
+            return false;
+        }
+        return $this->_exponentiate($m);
+    }
+
+    /**
+     * RSAVP1
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-5.2.2 RFC3447#section-5.2.2}.
+     *
+     * @access private
+     * @param Math_BigInteger $s
+     * @return Math_BigInteger
+     */
+    function _rsavp1($s)
+    {
+        if ($s->compare($this->zero) < 0 || $s->compare($this->modulus) > 0) {
+            user_error('Signature representative out of range');
+            return false;
+        }
+        return $this->_exponentiate($s);
+    }
+
+    /**
+     * MGF1
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#appendix-B.2.1 RFC3447#appendix-B.2.1}.
+     *
+     * @access private
+     * @param String $mgfSeed
+     * @param Integer $mgfLen
+     * @return String
+     */
+    function _mgf1($mgfSeed, $maskLen)
+    {
+        // if $maskLen would yield strings larger than 4GB, PKCS#1 suggests a "Mask too long" error be output.
+
+        $t = '';
+        $count = ceil($maskLen / $this->mgfHLen);
+        for ($i = 0; $i < $count; $i++) {
+            $c = pack('N', $i);
+            $t.= $this->mgfHash->hash($mgfSeed . $c);
+        }
+
+        return substr($t, 0, $maskLen);
+    }
+
+    /**
+     * RSAES-OAEP-ENCRYPT
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-7.1.1 RFC3447#section-7.1.1} and
+     * {http://en.wikipedia.org/wiki/Optimal_Asymmetric_Encryption_Padding OAES}.
+     *
+     * @access private
+     * @param String $m
+     * @param String $l
+     * @return String
+     */
+    function _rsaes_oaep_encrypt($m, $l = '')
+    {
+        $mLen = strlen($m);
+
+        // Length checking
+
+        // if $l is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
+        // be output.
+
+        if ($mLen > $this->k - 2 * $this->hLen - 2) {
+            user_error('Message too long');
+            return false;
+        }
+
+        // EME-OAEP encoding
+
+        $lHash = $this->hash->hash($l);
+        $ps = str_repeat(chr(0), $this->k - $mLen - 2 * $this->hLen - 2);
+        $db = $lHash . $ps . chr(1) . $m;
+        $seed = crypt_random_string($this->hLen);
+        $dbMask = $this->_mgf1($seed, $this->k - $this->hLen - 1);
+        $maskedDB = $db ^ $dbMask;
+        $seedMask = $this->_mgf1($maskedDB, $this->hLen);
+        $maskedSeed = $seed ^ $seedMask;
+        $em = chr(0) . $maskedSeed . $maskedDB;
+
+        // RSA encryption
+
+        $m = $this->_os2ip($em);
+        $c = $this->_rsaep($m);
+        $c = $this->_i2osp($c, $this->k);
+
+        // Output the ciphertext C
+
+        return $c;
+    }
+
+    /**
+     * RSAES-OAEP-DECRYPT
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-7.1.2 RFC3447#section-7.1.2}.  The fact that the error
+     * messages aren't distinguishable from one another hinders debugging, but, to quote from RFC3447#section-7.1.2:
+     * 
+     *    Note.  Care must be taken to ensure that an opponent cannot
+     *    distinguish the different error conditions in Step 3.g, whether by
+     *    error message or timing, or, more generally, learn partial
+     *    information about the encoded message EM.  Otherwise an opponent may
+     *    be able to obtain useful information about the decryption of the
+     *    ciphertext C, leading to a chosen-ciphertext attack such as the one
+     *    observed by Manger [36].
+     *
+     * As for $l...  to quote from {@link http://tools.ietf.org/html/rfc3447#page-17 RFC3447#page-17}:
+     *
+     *    Both the encryption and the decryption operations of RSAES-OAEP take
+     *    the value of a label L as input.  In this version of PKCS #1, L is
+     *    the empty string; other uses of the label are outside the scope of
+     *    this document.
+     *
+     * @access private
+     * @param String $c
+     * @param String $l
+     * @return String
+     */
+    function _rsaes_oaep_decrypt($c, $l = '')
+    {
+        // Length checking
+
+        // if $l is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
+        // be output.
+
+        if (strlen($c) != $this->k || $this->k < 2 * $this->hLen + 2) {
+            user_error('Decryption error');
+            return false;
+        }
+
+        // RSA decryption
+
+        $c = $this->_os2ip($c);
+        $m = $this->_rsadp($c);
+        if ($m === false) {
+            user_error('Decryption error');
+            return false;
+        }
+        $em = $this->_i2osp($m, $this->k);
+
+        // EME-OAEP decoding
+
+        $lHash = $this->hash->hash($l);
+        $y = ord($em[0]);
+        $maskedSeed = substr($em, 1, $this->hLen);
+        $maskedDB = substr($em, $this->hLen + 1);
+        $seedMask = $this->_mgf1($maskedDB, $this->hLen);
+        $seed = $maskedSeed ^ $seedMask;
+        $dbMask = $this->_mgf1($seed, $this->k - $this->hLen - 1);
+        $db = $maskedDB ^ $dbMask;
+        $lHash2 = substr($db, 0, $this->hLen);
+        $m = substr($db, $this->hLen);
+        if ($lHash != $lHash2) {
+            user_error('Decryption error');
+            return false;
+        }
+        $m = ltrim($m, chr(0));
+        if (ord($m[0]) != 1) {
+            user_error('Decryption error');
+            return false;
+        }
+
+        // Output the message M
+
+        return substr($m, 1);
+    }
+
+    /**
+     * RSAES-PKCS1-V1_5-ENCRYPT
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-7.2.1 RFC3447#section-7.2.1}.
+     *
+     * @access private
+     * @param String $m
+     * @return String
+     */
+    function _rsaes_pkcs1_v1_5_encrypt($m)
+    {
+        $mLen = strlen($m);
+
+        // Length checking
+
+        if ($mLen > $this->k - 11) {
+            user_error('Message too long');
+            return false;
+        }
+
+        // EME-PKCS1-v1_5 encoding
+        $psLen = $this->k - $mLen - 3;
+        $ps = '';
+        while (strlen($ps) != $psLen) {
+            $temp = crypt_random_string($psLen - strlen($ps));
+            $temp = str_replace("\x00", '', $temp);
+            $ps.= $temp;
+        }
+        $em = chr(0) . chr(2) . $ps . chr(0) . $m;
+
+        // RSA encryption
+        $m = $this->_os2ip($em);
+        $c = $this->_rsaep($m);
+        $c = $this->_i2osp($c, $this->k);
+
+        // Output the ciphertext C
+
+        return $c;
+    }
+
+    /**
+     * RSAES-PKCS1-V1_5-DECRYPT
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-7.2.2 RFC3447#section-7.2.2}.
+     *
+     * For compatability purposes, this function departs slightly from the description given in RFC3447.
+     * The reason being that RFC2313#section-8.1 (PKCS#1 v1.5) states that ciphertext's encrypted by the
+     * private key should have the second byte set to either 0 or 1 and that ciphertext's encrypted by the
+     * public key should have the second byte set to 2.  In RFC3447 (PKCS#1 v2.1), the second byte is supposed
+     * to be 2 regardless of which key is used.  For compatability purposes, we'll just check to make sure the
+     * second byte is 2 or less.  If it is, we'll accept the decrypted string as valid.
+     *
+     * As a consequence of this, a private key encrypted ciphertext produced with Crypt_RSA may not decrypt
+     * with a strictly PKCS#1 v1.5 compliant RSA implementation.  Public key encrypted ciphertext's should but
+     * not private key encrypted ciphertext's.
+     *
+     * @access private
+     * @param String $c
+     * @return String
+     */
+    function _rsaes_pkcs1_v1_5_decrypt($c)
+    {
+        // Length checking
+
+        if (strlen($c) != $this->k) { // or if k < 11
+            user_error('Decryption error');
+            return false;
+        }
+
+        // RSA decryption
+
+        $c = $this->_os2ip($c);
+        $m = $this->_rsadp($c);
+
+        if ($m === false) {
+            user_error('Decryption error');
+            return false;
+        }
+        $em = $this->_i2osp($m, $this->k);
+
+        // EME-PKCS1-v1_5 decoding
+
+        if (ord($em[0]) != 0 || ord($em[1]) > 2) {
+            user_error('Decryption error');
+            return false;
+        }
+
+        $ps = substr($em, 2, strpos($em, chr(0), 2) - 2);
+        $m = substr($em, strlen($ps) + 3);
+
+        if (strlen($ps) < 8) {
+            user_error('Decryption error');
+            return false;
+        }
+
+        // Output M
+
+        return $m;
+    }
+
+    /**
+     * EMSA-PSS-ENCODE
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-9.1.1 RFC3447#section-9.1.1}.
+     *
+     * @access private
+     * @param String $m
+     * @param Integer $emBits
+     */
+    function _emsa_pss_encode($m, $emBits)
+    {
+        // if $m is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
+        // be output.
+
+        $emLen = ($emBits + 1) >> 3; // ie. ceil($emBits / 8)
+        $sLen = $this->sLen == false ? $this->hLen : $this->sLen;
+
+        $mHash = $this->hash->hash($m);
+        if ($emLen < $this->hLen + $sLen + 2) {
+            user_error('Encoding error');
+            return false;
+        }
+
+        $salt = crypt_random_string($sLen);
+        $m2 = "\0\0\0\0\0\0\0\0" . $mHash . $salt;
+        $h = $this->hash->hash($m2);
+        $ps = str_repeat(chr(0), $emLen - $sLen - $this->hLen - 2);
+        $db = $ps . chr(1) . $salt;
+        $dbMask = $this->_mgf1($h, $emLen - $this->hLen - 1);
+        $maskedDB = $db ^ $dbMask;
+        $maskedDB[0] = ~chr(0xFF << ($emBits & 7)) & $maskedDB[0];
+        $em = $maskedDB . $h . chr(0xBC);
+
+        return $em;
+    }
+
+    /**
+     * EMSA-PSS-VERIFY
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-9.1.2 RFC3447#section-9.1.2}.
+     *
+     * @access private
+     * @param String $m
+     * @param String $em
+     * @param Integer $emBits
+     * @return String
+     */
+    function _emsa_pss_verify($m, $em, $emBits)
+    {
+        // if $m is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
+        // be output.
+
+        $emLen = ($emBits + 1) >> 3; // ie. ceil($emBits / 8);
+        $sLen = $this->sLen == false ? $this->hLen : $this->sLen;
+
+        $mHash = $this->hash->hash($m);
+        if ($emLen < $this->hLen + $sLen + 2) {
+            return false;
+        }
+
+        if ($em[strlen($em) - 1] != chr(0xBC)) {
+            return false;
+        }
+
+        $maskedDB = substr($em, 0, -$this->hLen - 1);
+        $h = substr($em, -$this->hLen - 1, $this->hLen);
+        $temp = chr(0xFF << ($emBits & 7));
+        if ((~$maskedDB[0] & $temp) != $temp) {
+            return false;
+        }
+        $dbMask = $this->_mgf1($h, $emLen - $this->hLen - 1);
+        $db = $maskedDB ^ $dbMask;
+        $db[0] = ~chr(0xFF << ($emBits & 7)) & $db[0];
+        $temp = $emLen - $this->hLen - $sLen - 2;
+        if (substr($db, 0, $temp) != str_repeat(chr(0), $temp) || ord($db[$temp]) != 1) {
+            return false;
+        }
+        $salt = substr($db, $temp + 1); // should be $sLen long
+        $m2 = "\0\0\0\0\0\0\0\0" . $mHash . $salt;
+        $h2 = $this->hash->hash($m2);
+        return $this->_equals($h, $h2);
+    }
+
+    /**
+     * RSASSA-PSS-SIGN
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-8.1.1 RFC3447#section-8.1.1}.
+     *
+     * @access private
+     * @param String $m
+     * @return String
+     */
+    function _rsassa_pss_sign($m)
+    {
+        // EMSA-PSS encoding
+
+        $em = $this->_emsa_pss_encode($m, 8 * $this->k - 1);
+
+        // RSA signature
+
+        $m = $this->_os2ip($em);
+        $s = $this->_rsasp1($m);
+        $s = $this->_i2osp($s, $this->k);
+
+        // Output the signature S
+
+        return $s;
+    }
+
+    /**
+     * RSASSA-PSS-VERIFY
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-8.1.2 RFC3447#section-8.1.2}.
+     *
+     * @access private
+     * @param String $m
+     * @param String $s
+     * @return String
+     */
+    function _rsassa_pss_verify($m, $s)
+    {
+        // Length checking
+
+        if (strlen($s) != $this->k) {
+            user_error('Invalid signature');
+            return false;
+        }
+
+        // RSA verification
+
+        $modBits = 8 * $this->k;
+
+        $s2 = $this->_os2ip($s);
+        $m2 = $this->_rsavp1($s2);
+        if ($m2 === false) {
+            user_error('Invalid signature');
+            return false;
+        }
+        $em = $this->_i2osp($m2, $modBits >> 3);
+        if ($em === false) {
+            user_error('Invalid signature');
+            return false;
+        }
+
+        // EMSA-PSS verification
+
+        return $this->_emsa_pss_verify($m, $em, $modBits - 1);
+    }
+
+    /**
+     * EMSA-PKCS1-V1_5-ENCODE
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-9.2 RFC3447#section-9.2}.
+     *
+     * @access private
+     * @param String $m
+     * @param Integer $emLen
+     * @return String
+     */
+    function _emsa_pkcs1_v1_5_encode($m, $emLen)
+    {
+        $h = $this->hash->hash($m);
+        if ($h === false) {
+            return false;
+        }
+
+        // see http://tools.ietf.org/html/rfc3447#page-43
+        switch ($this->hashName) {
+            case 'md2':
+                $t = pack('H*', '3020300c06082a864886f70d020205000410');
+                break;
+            case 'md5':
+                $t = pack('H*', '3020300c06082a864886f70d020505000410');
+                break;
+            case 'sha1':
+                $t = pack('H*', '3021300906052b0e03021a05000414');
+                break;
+            case 'sha256':
+                $t = pack('H*', '3031300d060960864801650304020105000420');
+                break;
+            case 'sha384':
+                $t = pack('H*', '3041300d060960864801650304020205000430');
+                break;
+            case 'sha512':
+                $t = pack('H*', '3051300d060960864801650304020305000440');
+        }
+        $t.= $h;
+        $tLen = strlen($t);
+
+        if ($emLen < $tLen + 11) {
+            user_error('Intended encoded message length too short');
+            return false;
+        }
+
+        $ps = str_repeat(chr(0xFF), $emLen - $tLen - 3);
+
+        $em = "\0\1$ps\0$t";
+
+        return $em;
+    }
+
+    /**
+     * RSASSA-PKCS1-V1_5-SIGN
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-8.2.1 RFC3447#section-8.2.1}.
+     *
+     * @access private
+     * @param String $m
+     * @return String
+     */
+    function _rsassa_pkcs1_v1_5_sign($m)
+    {
+        // EMSA-PKCS1-v1_5 encoding
+
+        $em = $this->_emsa_pkcs1_v1_5_encode($m, $this->k);
+        if ($em === false) {
+            user_error('RSA modulus too short');
+            return false;
+        }
+
+        // RSA signature
+
+        $m = $this->_os2ip($em);
+        $s = $this->_rsasp1($m);
+        $s = $this->_i2osp($s, $this->k);
+
+        // Output the signature S
+
+        return $s;
+    }
+
+    /**
+     * RSASSA-PKCS1-V1_5-VERIFY
+     *
+     * See {@link http://tools.ietf.org/html/rfc3447#section-8.2.2 RFC3447#section-8.2.2}.
+     *
+     * @access private
+     * @param String $m
+     * @return String
+     */
+    function _rsassa_pkcs1_v1_5_verify($m, $s)
+    {
+        // Length checking
+
+        if (strlen($s) != $this->k) {
+            user_error('Invalid signature');
+            return false;
+        }
+
+        // RSA verification
+
+        $s = $this->_os2ip($s);
+        $m2 = $this->_rsavp1($s);
+        if ($m2 === false) {
+            user_error('Invalid signature');
+            return false;
+        }
+        $em = $this->_i2osp($m2, $this->k);
+        if ($em === false) {
+            user_error('Invalid signature');
+            return false;
+        }
+
+        // EMSA-PKCS1-v1_5 encoding
+
+        $em2 = $this->_emsa_pkcs1_v1_5_encode($m, $this->k);
+        if ($em2 === false) {
+            user_error('RSA modulus too short');
+            return false;
+        }
+
+        // Compare
+        return $this->_equals($em, $em2);
+    }
+
+    /**
+     * Set Encryption Mode
+     *
+     * Valid values include CRYPT_RSA_ENCRYPTION_OAEP and CRYPT_RSA_ENCRYPTION_PKCS1.
+     *
+     * @access public
+     * @param Integer $mode
+     */
+    function setEncryptionMode($mode)
+    {
+        $this->encryptionMode = $mode;
+    }
+
+    /**
+     * Set Signature Mode
+     *
+     * Valid values include CRYPT_RSA_SIGNATURE_PSS and CRYPT_RSA_SIGNATURE_PKCS1
+     *
+     * @access public
+     * @param Integer $mode
+     */
+    function setSignatureMode($mode)
+    {
+        $this->signatureMode = $mode;
+    }
+
+    /**
+     * Encryption
+     *
+     * Both CRYPT_RSA_ENCRYPTION_OAEP and CRYPT_RSA_ENCRYPTION_PKCS1 both place limits on how long $plaintext can be.
+     * If $plaintext exceeds those limits it will be broken up so that it does and the resultant ciphertext's will
+     * be concatenated together.
+     *
+     * @see decrypt()
+     * @access public
+     * @param String $plaintext
+     * @return String
+     */
+    function encrypt($plaintext)
+    {
+        switch ($this->encryptionMode) {
+            case CRYPT_RSA_ENCRYPTION_PKCS1:
+                $length = $this->k - 11;
+                if ($length <= 0) {
+                    return false;
+                }
+
+                $plaintext = str_split($plaintext, $length);
+                $ciphertext = '';
+                foreach ($plaintext as $m) {
+                    $ciphertext.= $this->_rsaes_pkcs1_v1_5_encrypt($m);
+                }
+                return $ciphertext;
+            //case CRYPT_RSA_ENCRYPTION_OAEP:
+            default:
+                $length = $this->k - 2 * $this->hLen - 2;
+                if ($length <= 0) {
+                    return false;
+                }
+
+                $plaintext = str_split($plaintext, $length);
+                $ciphertext = '';
+                foreach ($plaintext as $m) {
+                    $ciphertext.= $this->_rsaes_oaep_encrypt($m);
+                }
+                return $ciphertext;
+        }
+    }
+
+    /**
+     * Decryption
+     *
+     * @see encrypt()
+     * @access public
+     * @param String $plaintext
+     * @return String
+     */
+    function decrypt($ciphertext)
+    {
+        if ($this->k <= 0) {
+            return false;
+        }
+
+        $ciphertext = str_split($ciphertext, $this->k);
+        $ciphertext[count($ciphertext) - 1] = str_pad($ciphertext[count($ciphertext) - 1], $this->k, chr(0), STR_PAD_LEFT);
+
+        $plaintext = '';
+
+        switch ($this->encryptionMode) {
+            case CRYPT_RSA_ENCRYPTION_PKCS1:
+                $decrypt = '_rsaes_pkcs1_v1_5_decrypt';
+                break;
+            //case CRYPT_RSA_ENCRYPTION_OAEP:
+            default:
+                $decrypt = '_rsaes_oaep_decrypt';
+        }
+
+        foreach ($ciphertext as $c) {
+            $temp = $this->$decrypt($c);
+            if ($temp === false) {
+                return false;
+            }
+            $plaintext.= $temp;
+        }
+
+        return $plaintext;
+    }
+
+    /**
+     * Create a signature
+     *
+     * @see verify()
+     * @access public
+     * @param String $message
+     * @return String
+     */
+    function sign($message)
+    {
+        if (empty($this->modulus) || empty($this->exponent)) {
+            return false;
+        }
+
+        switch ($this->signatureMode) {
+            case CRYPT_RSA_SIGNATURE_PKCS1:
+                return $this->_rsassa_pkcs1_v1_5_sign($message);
+            //case CRYPT_RSA_SIGNATURE_PSS:
+            default:
+                return $this->_rsassa_pss_sign($message);
+        }
+    }
+
+    /**
+     * Verifies a signature
+     *
+     * @see sign()
+     * @access public
+     * @param String $message
+     * @param String $signature
+     * @return Boolean
+     */
+    function verify($message, $signature)
+    {
+        if (empty($this->modulus) || empty($this->exponent)) {
+            return false;
+        }
+
+        switch ($this->signatureMode) {
+            case CRYPT_RSA_SIGNATURE_PKCS1:
+                return $this->_rsassa_pkcs1_v1_5_verify($message, $signature);
+            //case CRYPT_RSA_SIGNATURE_PSS:
+            default:
+                return $this->_rsassa_pss_verify($message, $signature);
+        }
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Random.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Random.php
new file mode 100644
index 0000000000000000000000000000000000000000..a60857df95ddf12870d91934822cb4aaad3cd330
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Random.php
@@ -0,0 +1,243 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Random Number Generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/Random.php');
+ *
+ *    echo bin2hex(crypt_random_string(8));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_Random
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: Random.php,v 1.9 2010/04/24 06:40:48 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Generate a random string.
+ *
+ * Although microoptimizations are generally discouraged as they impair readability this function is ripe with
+ * microoptimizations because this function has the potential of being called a huge number of times.
+ * eg. for RSA key generation.
+ *
+ * @param Integer $length
+ * @return String
+ * @access public
+ */
+function crypt_random_string($length) {
+    // PHP_OS & "\xDF\xDF\xDF" == strtoupper(substr(PHP_OS, 0, 3)), but a lot faster
+    if ((PHP_OS & "\xDF\xDF\xDF") === 'WIN') {
+        // method 1. prior to PHP 5.3 this would call rand() on windows hence the function_exists('class_alias') call.
+        // ie. class_alias is a function that was introduced in PHP 5.3
+        if (function_exists('mcrypt_create_iv') && function_exists('class_alias')) {
+            return mcrypt_create_iv($length);
+        }
+        // method 2. openssl_random_pseudo_bytes was introduced in PHP 5.3.0 but prior to PHP 5.3.4 there was,
+        // to quote <http://php.net/ChangeLog-5.php#5.3.4>, "possible blocking behavior". as of 5.3.4
+        // openssl_random_pseudo_bytes and mcrypt_create_iv do the exact same thing on Windows. ie. they both
+        // call php_win32_get_random_bytes():
+        //
+        // https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/ext/openssl/openssl.c#L5008
+        // https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/ext/mcrypt/mcrypt.c#L1392
+        //
+        // php_win32_get_random_bytes() is defined thusly:
+        //
+        // https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/win32/winutil.c#L80
+        //
+        // we're calling it, all the same, in the off chance that the mcrypt extension is not available
+        if (function_exists('openssl_random_pseudo_bytes') && version_compare(PHP_VERSION, '5.3.4', '>=')) {
+            return openssl_random_pseudo_bytes($length);
+        }
+    } else {
+        // method 1. the fastest
+        if (function_exists('openssl_random_pseudo_bytes')) {
+            return openssl_random_pseudo_bytes($length);
+        }
+        // method 2
+        static $fp = true;
+        if ($fp === true) {
+            // warning's will be output unles the error suppression operator is used. errors such as
+            // "open_basedir restriction in effect", "Permission denied", "No such file or directory", etc.
+            $fp = @fopen('/dev/urandom', 'rb');
+        }
+        if ($fp !== true && $fp !== false) { // surprisingly faster than !is_bool() or is_resource()
+            return fread($fp, $length);
+        }
+        // method 3. pretty much does the same thing as method 2 per the following url:
+        // https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/ext/mcrypt/mcrypt.c#L1391
+        // surprisingly slower than method 2. maybe that's because mcrypt_create_iv does a bunch of error checking that we're
+        // not doing. regardless, this'll only be called if this PHP script couldn't open /dev/urandom due to open_basedir
+        // restrictions or some such
+        if (function_exists('mcrypt_create_iv')) {
+            return mcrypt_create_iv($length, MCRYPT_DEV_URANDOM);
+        }
+    }
+    // at this point we have no choice but to use a pure-PHP CSPRNG
+
+    // cascade entropy across multiple PHP instances by fixing the session and collecting all
+    // environmental variables, including the previous session data and the current session
+    // data.
+    //
+    // mt_rand seeds itself by looking at the PID and the time, both of which are (relatively)
+    // easy to guess at. linux uses mouse clicks, keyboard timings, etc, as entropy sources, but
+    // PHP isn't low level to be able to use those as sources and on a web server there's not likely
+    // going to be a ton of keyboard or mouse action. web servers do have one thing that we can use
+    // however. a ton of people visiting the website. obviously you don't want to base your seeding
+    // soley on parameters a potential attacker sends but (1) not everything in $_SERVER is controlled
+    // by the user and (2) this isn't just looking at the data sent by the current user - it's based
+    // on the data sent by all users. one user requests the page and a hash of their info is saved.
+    // another user visits the page and the serialization of their data is utilized along with the
+    // server envirnment stuff and a hash of the previous http request data (which itself utilizes
+    // a hash of the session data before that). certainly an attacker should be assumed to have
+    // full control over his own http requests. he, however, is not going to have control over
+    // everyone's http requests.
+    static $crypto = false, $v;
+    if ($crypto === false) {
+        // save old session data
+        $old_session_id = session_id();
+        $old_use_cookies = ini_get('session.use_cookies');
+        $old_session_cache_limiter = session_cache_limiter();
+        if (isset($_SESSION)) {
+            $_OLD_SESSION = $_SESSION;
+        }
+        if ($old_session_id != '') {
+            session_write_close();
+        }
+
+        session_id(1);
+        ini_set('session.use_cookies', 0);
+        session_cache_limiter('');
+        session_start();
+
+        $v = $seed = $_SESSION['seed'] = pack('H*', sha1(
+            serialize($_SERVER) .
+            serialize($_POST) .
+            serialize($_GET) .
+            serialize($_COOKIE) .
+            serialize($_GLOBAL) .
+            serialize($_SESSION) .
+            serialize($_OLD_SESSION)
+        ));
+        if (!isset($_SESSION['count'])) {
+            $_SESSION['count'] = 0;
+        }
+        $_SESSION['count']++;
+
+        session_write_close();
+
+        // restore old session data
+        if ($old_session_id != '') {
+            session_id($old_session_id);
+            session_start();
+            ini_set('session.use_cookies', $old_use_cookies);
+            session_cache_limiter($old_session_cache_limiter);
+        } else {
+           if (isset($_OLD_SESSION)) {
+               $_SESSION = $_OLD_SESSION;
+               unset($_OLD_SESSION);
+            } else {
+                unset($_SESSION);
+            }
+        }
+
+        // in SSH2 a shared secret and an exchange hash are generated through the key exchange process.
+        // the IV client to server is the hash of that "nonce" with the letter A and for the encryption key it's the letter C.
+        // if the hash doesn't produce enough a key or an IV that's long enough concat successive hashes of the
+        // original hash and the current hash. we'll be emulating that. for more info see the following URL:
+        //
+        // http://tools.ietf.org/html/rfc4253#section-7.2
+        //
+        // see the is_string($crypto) part for an example of how to expand the keys
+        $key = pack('H*', sha1($seed . 'A'));
+        $iv = pack('H*', sha1($seed . 'C'));
+
+        // ciphers are used as per the nist.gov link below. also, see this link:
+        //
+        // http://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator#Designs_based_on_cryptographic_primitives
+        switch (true) {
+            case class_exists('Crypt_AES'):
+                $crypto = new Crypt_AES(CRYPT_AES_MODE_CTR);
+                break;
+            case class_exists('Crypt_TripleDES'):
+                $crypto = new Crypt_TripleDES(CRYPT_DES_MODE_CTR);
+                break;
+            case class_exists('Crypt_DES'):
+                $crypto = new Crypt_DES(CRYPT_DES_MODE_CTR);
+                break;
+            case class_exists('Crypt_RC4'):
+                $crypto = new Crypt_RC4();
+                break;
+            default:
+                $crypto = $seed;
+                return crypt_random_string($length);
+        }
+
+        $crypto->setKey($key);
+        $crypto->setIV($iv);
+        $crypto->enableContinuousBuffer();
+    }
+
+    if (is_string($crypto)) {
+        // the following is based off of ANSI X9.31:
+        //
+        // http://csrc.nist.gov/groups/STM/cavp/documents/rng/931rngext.pdf
+        //
+        // OpenSSL uses that same standard for it's random numbers:
+        //
+        // http://www.opensource.apple.com/source/OpenSSL/OpenSSL-38/openssl/fips-1.0/rand/fips_rand.c
+        // (do a search for "ANS X9.31 A.2.4")
+        //
+        // ANSI X9.31 recommends ciphers be used and phpseclib does use them if they're available (see
+        // later on in the code) but if they're not we'll use sha1
+        $result = '';
+        while (strlen($result) < $length) { // each loop adds 20 bytes
+            // microtime() isn't packed as "densely" as it could be but then neither is that the idea.
+            // the idea is simply to ensure that each "block" has a unique element to it.
+            $i = pack('H*', sha1(microtime()));
+            $r = pack('H*', sha1($i ^ $v));
+            $v = pack('H*', sha1($r ^ $i));
+            $result.= $r;
+        }
+        return substr($result, 0, $length);
+    }
+
+    //return $crypto->encrypt(str_repeat("\0", $length));
+
+    $result = '';
+    while (strlen($result) < $length) {
+        $i = $crypto->encrypt(microtime());
+        $r = $crypto->encrypt($i ^ $v);
+        $v = $crypto->encrypt($r ^ $i);
+        $result.= $r;
+    }
+    return substr($result, 0, $length);
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Rijndael.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Rijndael.php
new file mode 100644
index 0000000000000000000000000000000000000000..335d5233c4d6c537d4cdf72c16a02f5ce6c4f58a
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Rijndael.php
@@ -0,0 +1,1525 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of Rijndael.
+ *
+ * Does not use mcrypt, even when available, for reasons that are explained below.
+ *
+ * PHP versions 4 and 5
+ *
+ * If {@link Crypt_Rijndael::setBlockLength() setBlockLength()} isn't called, it'll be assumed to be 128 bits.  If 
+ * {@link Crypt_Rijndael::setKeyLength() setKeyLength()} isn't called, it'll be calculated from 
+ * {@link Crypt_Rijndael::setKey() setKey()}.  ie. if the key is 128-bits, the key length will be 128-bits.  If it's 
+ * 136-bits it'll be null-padded to 160-bits and 160 bits will be the key length until 
+ * {@link Crypt_Rijndael::setKey() setKey()} is called, again, at which point, it'll be recalculated.
+ *
+ * Not all Rijndael implementations may support 160-bits or 224-bits as the block length / key length.  mcrypt, for example,
+ * does not.  AES, itself, only supports block lengths of 128 and key lengths of 128, 192, and 256.
+ * {@link http://csrc.nist.gov/archive/aes/rijndael/Rijndael-ammended.pdf#page=10 Rijndael-ammended.pdf#page=10} defines the
+ * algorithm for block lengths of 192 and 256 but not for block lengths / key lengths of 160 and 224.  Indeed, 160 and 224
+ * are first defined as valid key / block lengths in 
+ * {@link http://csrc.nist.gov/archive/aes/rijndael/Rijndael-ammended.pdf#page=44 Rijndael-ammended.pdf#page=44}: 
+ * Extensions: Other block and Cipher Key lengths.
+ *
+ * {@internal The variable names are the same as those in 
+ * {@link http://www.csrc.nist.gov/publications/fips/fips197/fips-197.pdf#page=10 fips-197.pdf#page=10}.}}
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/Rijndael.php');
+ *
+ *    $rijndael = new Crypt_Rijndael();
+ *
+ *    $rijndael->setKey('abcdefghijklmnop');
+ *
+ *    $size = 10 * 1024;
+ *    $plaintext = '';
+ *    for ($i = 0; $i < $size; $i++) {
+ *        $plaintext.= 'a';
+ *    }
+ *
+ *    echo $rijndael->decrypt($rijndael->encrypt($plaintext));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_Rijndael
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVIII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: Rijndael.php,v 1.12 2010/02/09 06:10:26 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**#@+
+ * @access public
+ * @see Crypt_Rijndael::encrypt()
+ * @see Crypt_Rijndael::decrypt()
+ */
+/**
+ * Encrypt / decrypt using the Counter mode.
+ *
+ * Set to -1 since that's what Crypt/Random.php uses to index the CTR mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Counter_.28CTR.29
+ */
+define('CRYPT_RIJNDAEL_MODE_CTR', -1);
+/**
+ * Encrypt / decrypt using the Electronic Code Book mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Electronic_codebook_.28ECB.29
+ */
+define('CRYPT_RIJNDAEL_MODE_ECB', 1);
+/**
+ * Encrypt / decrypt using the Code Book Chaining mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher-block_chaining_.28CBC.29
+ */
+define('CRYPT_RIJNDAEL_MODE_CBC', 2);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher_feedback_.28CFB.29
+ */
+define('CRYPT_RIJNDAEL_MODE_CFB', 3);
+/**
+ * Encrypt / decrypt using the Cipher Feedback mode.
+ *
+ * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Output_feedback_.28OFB.29
+ */
+define('CRYPT_RIJNDAEL_MODE_OFB', 4);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Crypt_Rijndael::Crypt_Rijndael()
+ */
+/**
+ * Toggles the internal implementation
+ */
+define('CRYPT_RIJNDAEL_MODE_INTERNAL', 1);
+/**
+ * Toggles the mcrypt implementation
+ */
+define('CRYPT_RIJNDAEL_MODE_MCRYPT', 2);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of Rijndael.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_Rijndael
+ */
+class Crypt_Rijndael {
+    /**
+     * The Encryption Mode
+     *
+     * @see Crypt_Rijndael::Crypt_Rijndael()
+     * @var Integer
+     * @access private
+     */
+    var $mode;
+
+    /**
+     * The Key
+     *
+     * @see Crypt_Rijndael::setKey()
+     * @var String
+     * @access private
+     */
+    var $key = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
+
+    /**
+     * The Initialization Vector
+     *
+     * @see Crypt_Rijndael::setIV()
+     * @var String
+     * @access private
+     */
+    var $iv = '';
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_Rijndael::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $encryptIV = '';
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_Rijndael::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $decryptIV = '';
+
+    /**
+     * Continuous Buffer status
+     *
+     * @see Crypt_Rijndael::enableContinuousBuffer()
+     * @var Boolean
+     * @access private
+     */
+    var $continuousBuffer = false;
+
+    /**
+     * Padding status
+     *
+     * @see Crypt_Rijndael::enablePadding()
+     * @var Boolean
+     * @access private
+     */
+    var $padding = true;
+
+    /**
+     * Does the key schedule need to be (re)calculated?
+     *
+     * @see setKey()
+     * @see setBlockLength()
+     * @see setKeyLength()
+     * @var Boolean
+     * @access private
+     */
+    var $changed = true;
+
+    /**
+     * Has the key length explicitly been set or should it be derived from the key, itself?
+     *
+     * @see setKeyLength()
+     * @var Boolean
+     * @access private
+     */
+    var $explicit_key_length = false;
+
+    /**
+     * The Key Schedule
+     *
+     * @see _setup()
+     * @var Array
+     * @access private
+     */
+    var $w;
+
+    /**
+     * The Inverse Key Schedule
+     *
+     * @see _setup()
+     * @var Array
+     * @access private
+     */
+    var $dw;
+
+    /**
+     * The Block Length
+     *
+     * @see setBlockLength()
+     * @var Integer
+     * @access private
+     * @internal The max value is 32, the min value is 16.  All valid values are multiples of 4.  Exists in conjunction with
+     *     $Nb because we need this value and not $Nb to pad strings appropriately.  
+     */
+    var $block_size = 16;
+
+    /**
+     * The Block Length divided by 32
+     *
+     * @see setBlockLength()
+     * @var Integer
+     * @access private
+     * @internal The max value is 256 / 32 = 8, the min value is 128 / 32 = 4.  Exists in conjunction with $block_size 
+     *    because the encryption / decryption / key schedule creation requires this number and not $block_size.  We could 
+     *    derive this from $block_size or vice versa, but that'd mean we'd have to do multiple shift operations, so in lieu
+     *    of that, we'll just precompute it once.
+     *
+     */
+    var $Nb = 4;
+
+    /**
+     * The Key Length
+     *
+     * @see setKeyLength()
+     * @var Integer
+     * @access private
+     * @internal The max value is 256 / 8 = 32, the min value is 128 / 8 = 16.  Exists in conjunction with $key_size
+     *    because the encryption / decryption / key schedule creation requires this number and not $key_size.  We could 
+     *    derive this from $key_size or vice versa, but that'd mean we'd have to do multiple shift operations, so in lieu
+     *    of that, we'll just precompute it once.
+     */
+    var $key_size = 16;
+
+    /**
+     * The Key Length divided by 32
+     *
+     * @see setKeyLength()
+     * @var Integer
+     * @access private
+     * @internal The max value is 256 / 32 = 8, the min value is 128 / 32 = 4
+     */
+    var $Nk = 4;
+
+    /**
+     * The Number of Rounds
+     *
+     * @var Integer
+     * @access private
+     * @internal The max value is 14, the min value is 10.
+     */
+    var $Nr;
+
+    /**
+     * Shift offsets
+     *
+     * @var Array
+     * @access private
+     */
+    var $c;
+
+    /**
+     * Precomputed mixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $t0;
+
+    /**
+     * Precomputed mixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $t1;
+
+    /**
+     * Precomputed mixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $t2;
+
+    /**
+     * Precomputed mixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $t3;
+
+    /**
+     * Precomputed invMixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $dt0;
+
+    /**
+     * Precomputed invMixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $dt1;
+
+    /**
+     * Precomputed invMixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $dt2;
+
+    /**
+     * Precomputed invMixColumns table
+     *
+     * @see Crypt_Rijndael()
+     * @var Array
+     * @access private
+     */
+    var $dt3;
+
+    /**
+     * Is the mode one that is paddable?
+     *
+     * @see Crypt_Rijndael::Crypt_Rijndael()
+     * @var Boolean
+     * @access private
+     */
+    var $paddable = false;
+
+    /**
+     * Encryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_Rijndael::encrypt()
+     * @var String
+     * @access private
+     */
+    var $enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0);
+
+    /**
+     * Decryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_Rijndael::decrypt()
+     * @var String
+     * @access private
+     */
+    var $debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0);
+
+    /**
+     * Default Constructor.
+     *
+     * Determines whether or not the mcrypt extension should be used.  $mode should only, at present, be
+     * CRYPT_RIJNDAEL_MODE_ECB or CRYPT_RIJNDAEL_MODE_CBC.  If not explictly set, CRYPT_RIJNDAEL_MODE_CBC will be used.
+     *
+     * @param optional Integer $mode
+     * @return Crypt_Rijndael
+     * @access public
+     */
+    function Crypt_Rijndael($mode = CRYPT_RIJNDAEL_MODE_CBC)
+    {
+        switch ($mode) {
+            case CRYPT_RIJNDAEL_MODE_ECB:
+            case CRYPT_RIJNDAEL_MODE_CBC:
+                $this->paddable = true;
+                $this->mode = $mode;
+                break;
+            case CRYPT_RIJNDAEL_MODE_CTR:
+            case CRYPT_RIJNDAEL_MODE_CFB:
+            case CRYPT_RIJNDAEL_MODE_OFB:
+                $this->mode = $mode;
+                break;
+            default:
+                $this->paddable = true;
+                $this->mode = CRYPT_RIJNDAEL_MODE_CBC;
+        }
+
+        $t3 = &$this->t3;
+        $t2 = &$this->t2;
+        $t1 = &$this->t1;
+        $t0 = &$this->t0;
+
+        $dt3 = &$this->dt3;
+        $dt2 = &$this->dt2;
+        $dt1 = &$this->dt1;
+        $dt0 = &$this->dt0;
+
+        // according to <http://csrc.nist.gov/archive/aes/rijndael/Rijndael-ammended.pdf#page=19> (section 5.2.1), 
+        // precomputed tables can be used in the mixColumns phase.  in that example, they're assigned t0...t3, so
+        // those are the names we'll use.
+        $t3 = array(
+            0x6363A5C6, 0x7C7C84F8, 0x777799EE, 0x7B7B8DF6, 0xF2F20DFF, 0x6B6BBDD6, 0x6F6FB1DE, 0xC5C55491, 
+            0x30305060, 0x01010302, 0x6767A9CE, 0x2B2B7D56, 0xFEFE19E7, 0xD7D762B5, 0xABABE64D, 0x76769AEC, 
+            0xCACA458F, 0x82829D1F, 0xC9C94089, 0x7D7D87FA, 0xFAFA15EF, 0x5959EBB2, 0x4747C98E, 0xF0F00BFB, 
+            0xADADEC41, 0xD4D467B3, 0xA2A2FD5F, 0xAFAFEA45, 0x9C9CBF23, 0xA4A4F753, 0x727296E4, 0xC0C05B9B, 
+            0xB7B7C275, 0xFDFD1CE1, 0x9393AE3D, 0x26266A4C, 0x36365A6C, 0x3F3F417E, 0xF7F702F5, 0xCCCC4F83, 
+            0x34345C68, 0xA5A5F451, 0xE5E534D1, 0xF1F108F9, 0x717193E2, 0xD8D873AB, 0x31315362, 0x15153F2A, 
+            0x04040C08, 0xC7C75295, 0x23236546, 0xC3C35E9D, 0x18182830, 0x9696A137, 0x05050F0A, 0x9A9AB52F, 
+            0x0707090E, 0x12123624, 0x80809B1B, 0xE2E23DDF, 0xEBEB26CD, 0x2727694E, 0xB2B2CD7F, 0x75759FEA, 
+            0x09091B12, 0x83839E1D, 0x2C2C7458, 0x1A1A2E34, 0x1B1B2D36, 0x6E6EB2DC, 0x5A5AEEB4, 0xA0A0FB5B, 
+            0x5252F6A4, 0x3B3B4D76, 0xD6D661B7, 0xB3B3CE7D, 0x29297B52, 0xE3E33EDD, 0x2F2F715E, 0x84849713, 
+            0x5353F5A6, 0xD1D168B9, 0x00000000, 0xEDED2CC1, 0x20206040, 0xFCFC1FE3, 0xB1B1C879, 0x5B5BEDB6, 
+            0x6A6ABED4, 0xCBCB468D, 0xBEBED967, 0x39394B72, 0x4A4ADE94, 0x4C4CD498, 0x5858E8B0, 0xCFCF4A85, 
+            0xD0D06BBB, 0xEFEF2AC5, 0xAAAAE54F, 0xFBFB16ED, 0x4343C586, 0x4D4DD79A, 0x33335566, 0x85859411, 
+            0x4545CF8A, 0xF9F910E9, 0x02020604, 0x7F7F81FE, 0x5050F0A0, 0x3C3C4478, 0x9F9FBA25, 0xA8A8E34B, 
+            0x5151F3A2, 0xA3A3FE5D, 0x4040C080, 0x8F8F8A05, 0x9292AD3F, 0x9D9DBC21, 0x38384870, 0xF5F504F1, 
+            0xBCBCDF63, 0xB6B6C177, 0xDADA75AF, 0x21216342, 0x10103020, 0xFFFF1AE5, 0xF3F30EFD, 0xD2D26DBF, 
+            0xCDCD4C81, 0x0C0C1418, 0x13133526, 0xECEC2FC3, 0x5F5FE1BE, 0x9797A235, 0x4444CC88, 0x1717392E, 
+            0xC4C45793, 0xA7A7F255, 0x7E7E82FC, 0x3D3D477A, 0x6464ACC8, 0x5D5DE7BA, 0x19192B32, 0x737395E6, 
+            0x6060A0C0, 0x81819819, 0x4F4FD19E, 0xDCDC7FA3, 0x22226644, 0x2A2A7E54, 0x9090AB3B, 0x8888830B, 
+            0x4646CA8C, 0xEEEE29C7, 0xB8B8D36B, 0x14143C28, 0xDEDE79A7, 0x5E5EE2BC, 0x0B0B1D16, 0xDBDB76AD, 
+            0xE0E03BDB, 0x32325664, 0x3A3A4E74, 0x0A0A1E14, 0x4949DB92, 0x06060A0C, 0x24246C48, 0x5C5CE4B8, 
+            0xC2C25D9F, 0xD3D36EBD, 0xACACEF43, 0x6262A6C4, 0x9191A839, 0x9595A431, 0xE4E437D3, 0x79798BF2, 
+            0xE7E732D5, 0xC8C8438B, 0x3737596E, 0x6D6DB7DA, 0x8D8D8C01, 0xD5D564B1, 0x4E4ED29C, 0xA9A9E049, 
+            0x6C6CB4D8, 0x5656FAAC, 0xF4F407F3, 0xEAEA25CF, 0x6565AFCA, 0x7A7A8EF4, 0xAEAEE947, 0x08081810, 
+            0xBABAD56F, 0x787888F0, 0x25256F4A, 0x2E2E725C, 0x1C1C2438, 0xA6A6F157, 0xB4B4C773, 0xC6C65197, 
+            0xE8E823CB, 0xDDDD7CA1, 0x74749CE8, 0x1F1F213E, 0x4B4BDD96, 0xBDBDDC61, 0x8B8B860D, 0x8A8A850F, 
+            0x707090E0, 0x3E3E427C, 0xB5B5C471, 0x6666AACC, 0x4848D890, 0x03030506, 0xF6F601F7, 0x0E0E121C, 
+            0x6161A3C2, 0x35355F6A, 0x5757F9AE, 0xB9B9D069, 0x86869117, 0xC1C15899, 0x1D1D273A, 0x9E9EB927, 
+            0xE1E138D9, 0xF8F813EB, 0x9898B32B, 0x11113322, 0x6969BBD2, 0xD9D970A9, 0x8E8E8907, 0x9494A733, 
+            0x9B9BB62D, 0x1E1E223C, 0x87879215, 0xE9E920C9, 0xCECE4987, 0x5555FFAA, 0x28287850, 0xDFDF7AA5, 
+            0x8C8C8F03, 0xA1A1F859, 0x89898009, 0x0D0D171A, 0xBFBFDA65, 0xE6E631D7, 0x4242C684, 0x6868B8D0, 
+            0x4141C382, 0x9999B029, 0x2D2D775A, 0x0F0F111E, 0xB0B0CB7B, 0x5454FCA8, 0xBBBBD66D, 0x16163A2C
+        );
+
+        $dt3 = array(
+            0xF4A75051, 0x4165537E, 0x17A4C31A, 0x275E963A, 0xAB6BCB3B, 0x9D45F11F, 0xFA58ABAC, 0xE303934B, 
+            0x30FA5520, 0x766DF6AD, 0xCC769188, 0x024C25F5, 0xE5D7FC4F, 0x2ACBD7C5, 0x35448026, 0x62A38FB5, 
+            0xB15A49DE, 0xBA1B6725, 0xEA0E9845, 0xFEC0E15D, 0x2F7502C3, 0x4CF01281, 0x4697A38D, 0xD3F9C66B, 
+            0x8F5FE703, 0x929C9515, 0x6D7AEBBF, 0x5259DA95, 0xBE832DD4, 0x7421D358, 0xE0692949, 0xC9C8448E, 
+            0xC2896A75, 0x8E7978F4, 0x583E6B99, 0xB971DD27, 0xE14FB6BE, 0x88AD17F0, 0x20AC66C9, 0xCE3AB47D, 
+            0xDF4A1863, 0x1A3182E5, 0x51336097, 0x537F4562, 0x6477E0B1, 0x6BAE84BB, 0x81A01CFE, 0x082B94F9, 
+            0x48685870, 0x45FD198F, 0xDE6C8794, 0x7BF8B752, 0x73D323AB, 0x4B02E272, 0x1F8F57E3, 0x55AB2A66, 
+            0xEB2807B2, 0xB5C2032F, 0xC57B9A86, 0x3708A5D3, 0x2887F230, 0xBFA5B223, 0x036ABA02, 0x16825CED, 
+            0xCF1C2B8A, 0x79B492A7, 0x07F2F0F3, 0x69E2A14E, 0xDAF4CD65, 0x05BED506, 0x34621FD1, 0xA6FE8AC4, 
+            0x2E539D34, 0xF355A0A2, 0x8AE13205, 0xF6EB75A4, 0x83EC390B, 0x60EFAA40, 0x719F065E, 0x6E1051BD, 
+            0x218AF93E, 0xDD063D96, 0x3E05AEDD, 0xE6BD464D, 0x548DB591, 0xC45D0571, 0x06D46F04, 0x5015FF60, 
+            0x98FB2419, 0xBDE997D6, 0x4043CC89, 0xD99E7767, 0xE842BDB0, 0x898B8807, 0x195B38E7, 0xC8EEDB79, 
+            0x7C0A47A1, 0x420FE97C, 0x841EC9F8, 0x00000000, 0x80868309, 0x2BED4832, 0x1170AC1E, 0x5A724E6C, 
+            0x0EFFFBFD, 0x8538560F, 0xAED51E3D, 0x2D392736, 0x0FD9640A, 0x5CA62168, 0x5B54D19B, 0x362E3A24, 
+            0x0A67B10C, 0x57E70F93, 0xEE96D2B4, 0x9B919E1B, 0xC0C54F80, 0xDC20A261, 0x774B695A, 0x121A161C, 
+            0x93BA0AE2, 0xA02AE5C0, 0x22E0433C, 0x1B171D12, 0x090D0B0E, 0x8BC7ADF2, 0xB6A8B92D, 0x1EA9C814, 
+            0xF1198557, 0x75074CAF, 0x99DDBBEE, 0x7F60FDA3, 0x01269FF7, 0x72F5BC5C, 0x663BC544, 0xFB7E345B, 
+            0x4329768B, 0x23C6DCCB, 0xEDFC68B6, 0xE4F163B8, 0x31DCCAD7, 0x63851042, 0x97224013, 0xC6112084, 
+            0x4A247D85, 0xBB3DF8D2, 0xF93211AE, 0x29A16DC7, 0x9E2F4B1D, 0xB230F3DC, 0x8652EC0D, 0xC1E3D077, 
+            0xB3166C2B, 0x70B999A9, 0x9448FA11, 0xE9642247, 0xFC8CC4A8, 0xF03F1AA0, 0x7D2CD856, 0x3390EF22, 
+            0x494EC787, 0x38D1C1D9, 0xCAA2FE8C, 0xD40B3698, 0xF581CFA6, 0x7ADE28A5, 0xB78E26DA, 0xADBFA43F, 
+            0x3A9DE42C, 0x78920D50, 0x5FCC9B6A, 0x7E466254, 0x8D13C2F6, 0xD8B8E890, 0x39F75E2E, 0xC3AFF582, 
+            0x5D80BE9F, 0xD0937C69, 0xD52DA96F, 0x2512B3CF, 0xAC993BC8, 0x187DA710, 0x9C636EE8, 0x3BBB7BDB, 
+            0x267809CD, 0x5918F46E, 0x9AB701EC, 0x4F9AA883, 0x956E65E6, 0xFFE67EAA, 0xBCCF0821, 0x15E8E6EF, 
+            0xE79BD9BA, 0x6F36CE4A, 0x9F09D4EA, 0xB07CD629, 0xA4B2AF31, 0x3F23312A, 0xA59430C6, 0xA266C035, 
+            0x4EBC3774, 0x82CAA6FC, 0x90D0B0E0, 0xA7D81533, 0x04984AF1, 0xECDAF741, 0xCD500E7F, 0x91F62F17, 
+            0x4DD68D76, 0xEFB04D43, 0xAA4D54CC, 0x9604DFE4, 0xD1B5E39E, 0x6A881B4C, 0x2C1FB8C1, 0x65517F46, 
+            0x5EEA049D, 0x8C355D01, 0x877473FA, 0x0B412EFB, 0x671D5AB3, 0xDBD25292, 0x105633E9, 0xD647136D, 
+            0xD7618C9A, 0xA10C7A37, 0xF8148E59, 0x133C89EB, 0xA927EECE, 0x61C935B7, 0x1CE5EDE1, 0x47B13C7A, 
+            0xD2DF599C, 0xF2733F55, 0x14CE7918, 0xC737BF73, 0xF7CDEA53, 0xFDAA5B5F, 0x3D6F14DF, 0x44DB8678, 
+            0xAFF381CA, 0x68C43EB9, 0x24342C38, 0xA3405FC2, 0x1DC37216, 0xE2250CBC, 0x3C498B28, 0x0D9541FF, 
+            0xA8017139, 0x0CB3DE08, 0xB4E49CD8, 0x56C19064, 0xCB84617B, 0x32B670D5, 0x6C5C7448, 0xB85742D0
+        );
+
+        for ($i = 0; $i < 256; $i++) {
+            $t2[] = (($t3[$i] <<  8) & 0xFFFFFF00) | (($t3[$i] >> 24) & 0x000000FF);
+            $t1[] = (($t3[$i] << 16) & 0xFFFF0000) | (($t3[$i] >> 16) & 0x0000FFFF);
+            $t0[] = (($t3[$i] << 24) & 0xFF000000) | (($t3[$i] >>  8) & 0x00FFFFFF);
+
+            $dt2[] = (($dt3[$i] <<  8) & 0xFFFFFF00) | (($dt3[$i] >> 24) & 0x000000FF);
+            $dt1[] = (($dt3[$i] << 16) & 0xFFFF0000) | (($dt3[$i] >> 16) & 0x0000FFFF);
+            $dt0[] = (($dt3[$i] << 24) & 0xFF000000) | (($dt3[$i] >>  8) & 0x00FFFFFF);
+        }
+    }
+
+    /**
+     * Sets the key.
+     *
+     * Keys can be of any length.  Rijndael, itself, requires the use of a key that's between 128-bits and 256-bits long and
+     * whose length is a multiple of 32.  If the key is less than 256-bits and the key length isn't set, we round the length
+     * up to the closest valid key length, padding $key with null bytes.  If the key is more than 256-bits, we trim the
+     * excess bits.
+     *
+     * If the key is not explicitly set, it'll be assumed to be all null bytes.
+     *
+     * @access public
+     * @param String $key
+     */
+    function setKey($key)
+    {
+        $this->key = $key;
+        $this->changed = true;
+    }
+
+    /**
+     * Sets the initialization vector. (optional)
+     *
+     * SetIV is not required when CRYPT_RIJNDAEL_MODE_ECB is being used.  If not explictly set, it'll be assumed
+     * to be all zero's.
+     *
+     * @access public
+     * @param String $iv
+     */
+    function setIV($iv)
+    {
+        $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($iv, 0, $this->block_size), $this->block_size, chr(0));
+    }
+
+    /**
+     * Sets the key length
+     *
+     * Valid key lengths are 128, 160, 192, 224, and 256.  If the length is less than 128, it will be rounded up to
+     * 128.  If the length is greater then 128 and invalid, it will be rounded down to the closest valid amount.
+     *
+     * @access public
+     * @param Integer $length
+     */
+    function setKeyLength($length)
+    {
+        $length >>= 5;
+        if ($length > 8) {
+            $length = 8;
+        } else if ($length < 4) {
+            $length = 4;
+        }
+        $this->Nk = $length;
+        $this->key_size = $length << 2;
+
+        $this->explicit_key_length = true;
+        $this->changed = true;
+    }
+
+    /**
+     * Sets the password.
+     *
+     * Depending on what $method is set to, setPassword()'s (optional) parameters are as follows:
+     *     {@link http://en.wikipedia.org/wiki/PBKDF2 pbkdf2}:
+     *         $hash, $salt, $method
+     *     Set $dkLen by calling setKeyLength()
+     *
+     * @param String $password
+     * @param optional String $method
+     * @access public
+     */
+    function setPassword($password, $method = 'pbkdf2')
+    {
+        $key = '';
+
+        switch ($method) {
+            default: // 'pbkdf2'
+                list(, , $hash, $salt, $count) = func_get_args();
+                if (!isset($hash)) {
+                    $hash = 'sha1';
+                }
+                // WPA and WPA2 use the SSID as the salt
+                if (!isset($salt)) {
+                    $salt = 'phpseclib';
+                }
+                // RFC2898#section-4.2 uses 1,000 iterations by default
+                // WPA and WPA2 use 4,096.
+                if (!isset($count)) {
+                    $count = 1000;
+                }
+
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+
+                $i = 1;
+                while (strlen($key) < $this->key_size) { // $dkLen == $this->key_size
+                    //$dk.= $this->_pbkdf($password, $salt, $count, $i++);
+                    $hmac = new Crypt_Hash();
+                    $hmac->setHash($hash);
+                    $hmac->setKey($password);
+                    $f = $u = $hmac->hash($salt . pack('N', $i++));
+                    for ($j = 2; $j <= $count; $j++) {
+                        $u = $hmac->hash($u);
+                        $f^= $u;
+                    }
+                    $key.= $f;
+                }
+        }
+
+        $this->setKey(substr($key, 0, $this->key_size));
+    }
+
+    /**
+     * Sets the block length
+     *
+     * Valid block lengths are 128, 160, 192, 224, and 256.  If the length is less than 128, it will be rounded up to
+     * 128.  If the length is greater then 128 and invalid, it will be rounded down to the closest valid amount.
+     *
+     * @access public
+     * @param Integer $length
+     */
+    function setBlockLength($length)
+    {
+        $length >>= 5;
+        if ($length > 8) {
+            $length = 8;
+        } else if ($length < 4) {
+            $length = 4;
+        }
+        $this->Nb = $length;
+        $this->block_size = $length << 2;
+        $this->changed = true;
+    }
+
+    /**
+     * Generate CTR XOR encryption key
+     *
+     * Encrypt the output of this and XOR it against the ciphertext / plaintext to get the
+     * plaintext / ciphertext in CTR mode.
+     *
+     * @see Crypt_Rijndael::decrypt()
+     * @see Crypt_Rijndael::encrypt()
+     * @access public
+     * @param Integer $length
+     * @param String $iv
+     */
+    function _generate_xor($length, &$iv)
+    {
+        $xor = '';
+        $block_size = $this->block_size;
+        $num_blocks = floor(($length + ($block_size - 1)) / $block_size);
+        for ($i = 0; $i < $num_blocks; $i++) {
+            $xor.= $iv;
+            for ($j = 4; $j <= $block_size; $j+=4) {
+                $temp = substr($iv, -$j, 4);
+                switch ($temp) {
+                    case "\xFF\xFF\xFF\xFF":
+                        $iv = substr_replace($iv, "\x00\x00\x00\x00", -$j, 4);
+                        break;
+                    case "\x7F\xFF\xFF\xFF":
+                        $iv = substr_replace($iv, "\x80\x00\x00\x00", -$j, 4);
+                        break 2;
+                    default:
+                        extract(unpack('Ncount', $temp));
+                        $iv = substr_replace($iv, pack('N', $count + 1), -$j, 4);
+                        break 2;
+                }
+            }
+        }
+
+        return $xor;
+    }
+
+    /**
+     * Encrypts a message.
+     *
+     * $plaintext will be padded with additional bytes such that it's length is a multiple of the block size.  Other Rjindael
+     * implementations may or may not pad in the same manner.  Other common approaches to padding and the reasons why it's
+     * necessary are discussed in the following
+     * URL:
+     *
+     * {@link http://www.di-mgt.com.au/cryptopad.html http://www.di-mgt.com.au/cryptopad.html}
+     *
+     * An alternative to padding is to, separately, send the length of the file.  This is what SSH, in fact, does.
+     * strlen($plaintext) will still need to be a multiple of 8, however, arbitrary values can be added to make it that
+     * length.
+     *
+     * @see Crypt_Rijndael::decrypt()
+     * @access public
+     * @param String $plaintext
+     */
+    function encrypt($plaintext)
+    {
+        $this->_setup();
+        if ($this->paddable) {
+            $plaintext = $this->_pad($plaintext);
+        }
+
+        $block_size = $this->block_size;
+        $buffer = &$this->enbuffer;
+        $ciphertext = '';
+        switch ($this->mode) {
+            case CRYPT_RIJNDAEL_MODE_ECB:
+                for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                    $ciphertext.= $this->_encryptBlock(substr($plaintext, $i, $block_size));
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CBC:
+                $xor = $this->encryptIV;
+                for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                    $block = substr($plaintext, $i, $block_size);
+                    $block = $this->_encryptBlock($block ^ $xor);
+                    $xor = $block;
+                    $ciphertext.= $block;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CTR:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['encrypted'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                        $block = substr($plaintext, $i, $block_size);
+                        $buffer['encrypted'].= $this->_encryptBlock($this->_generate_xor($block_size, $xor));
+                        $key = $this->_string_shift($buffer['encrypted'], $block_size);
+                        $ciphertext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                        $block = substr($plaintext, $i, $block_size);
+                        $key = $this->_encryptBlock($this->_generate_xor($block_size, $xor));
+                        $ciphertext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) % $block_size) {
+                        $buffer['encrypted'] = substr($key, $start) . $buffer['encrypted'];
+                    }
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CFB:
+                // cfb loosely routines inspired by openssl's:
+                // http://cvs.openssl.org/fileview?f=openssl/crypto/modes/cfb128.c&v=1.3.2.2.2.1
+                if ($this->continuousBuffer) {
+                    $iv = &$this->encryptIV;
+                    $pos = &$buffer['pos'];
+                } else {
+                    $iv = $this->encryptIV;
+                    $pos = 0;
+                }
+                $len = strlen($plaintext);
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = $block_size - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    // ie. $i = min($max, $len), $len-= $i, $pos+= $i, $pos%= $blocksize
+                    $ciphertext = substr($iv, $orig_pos) ^ $plaintext;
+                    $iv = substr_replace($iv, $ciphertext, $orig_pos, $i);
+                }
+                while ($len >= $block_size) {
+                    $iv = $this->_encryptBlock($iv) ^ substr($plaintext, $i, $block_size);
+                    $ciphertext.= $iv;
+                    $len-= $block_size;
+                    $i+= $block_size;
+                }
+                if ($len) {
+                    $iv = $this->_encryptBlock($iv);
+                    $block = $iv ^ substr($plaintext, $i);
+                    $iv = substr_replace($iv, $block, 0, $len);
+                    $ciphertext.= $block;
+                    $pos = $len;
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_OFB:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                        $xor = $this->_encryptBlock($xor);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], $block_size);
+                        $ciphertext.= substr($plaintext, $i, $block_size) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
+                        $xor = $this->_encryptBlock($xor);
+                        $ciphertext.= substr($plaintext, $i, $block_size) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) % $block_size) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $ciphertext;
+    }
+
+    /**
+     * Decrypts a message.
+     *
+     * If strlen($ciphertext) is not a multiple of the block size, null bytes will be added to the end of the string until
+     * it is.
+     *
+     * @see Crypt_Rijndael::encrypt()
+     * @access public
+     * @param String $ciphertext
+     */
+    function decrypt($ciphertext)
+    {
+        $this->_setup();
+
+        if ($this->paddable) {
+            // we pad with chr(0) since that's what mcrypt_generic does.  to quote from http://php.net/function.mcrypt-generic :
+            // "The data is padded with "\0" to make sure the length of the data is n * blocksize."
+            $ciphertext = str_pad($ciphertext, strlen($ciphertext) + ($this->block_size - strlen($ciphertext) % $this->block_size) % $this->block_size, chr(0));
+        }
+
+        $block_size = $this->block_size;
+        $buffer = &$this->debuffer;
+        $plaintext = '';
+        switch ($this->mode) {
+            case CRYPT_RIJNDAEL_MODE_ECB:
+                for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                    $plaintext.= $this->_decryptBlock(substr($ciphertext, $i, $block_size));
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CBC:
+                $xor = $this->decryptIV;
+                for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                    $block = substr($ciphertext, $i, $block_size);
+                    $plaintext.= $this->_decryptBlock($block) ^ $xor;
+                    $xor = $block;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CTR:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['ciphertext'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                        $block = substr($ciphertext, $i, $block_size);
+                        $buffer['ciphertext'].= $this->_encryptBlock($this->_generate_xor($block_size, $xor));
+                        $key = $this->_string_shift($buffer['ciphertext'], $block_size);
+                        $plaintext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                        $block = substr($ciphertext, $i, $block_size);
+                        $key = $this->_encryptBlock($this->_generate_xor($block_size, $xor));
+                        $plaintext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($ciphertext) % $block_size) {
+                        $buffer['ciphertext'] = substr($key, $start) . $buffer['ciphertext'];
+                    }
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_CFB:
+                if ($this->continuousBuffer) {
+                    $iv = &$this->decryptIV;
+                    $pos = &$buffer['pos'];
+                } else {
+                    $iv = $this->decryptIV;
+                    $pos = 0;
+                }
+                $len = strlen($ciphertext);
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = $block_size - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    // ie. $i = min($max, $len), $len-= $i, $pos+= $i, $pos%= $blocksize
+                    $plaintext = substr($iv, $orig_pos) ^ $ciphertext;
+                    $iv = substr_replace($iv, substr($ciphertext, 0, $i), $orig_pos, $i);
+                }
+                while ($len >= $block_size) {
+                    $iv = $this->_encryptBlock($iv);
+                    $cb = substr($ciphertext, $i, $block_size);
+                    $plaintext.= $iv ^ $cb;
+                    $iv = $cb;
+                    $len-= $block_size;
+                    $i+= $block_size;
+                }
+                if ($len) {
+                    $iv = $this->_encryptBlock($iv);
+                    $plaintext.= $iv ^ substr($ciphertext, $i);
+                    $iv = substr_replace($iv, substr($ciphertext, $i), 0, $len);
+                    $pos = $len;
+                }
+                break;
+            case CRYPT_RIJNDAEL_MODE_OFB:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                        $xor = $this->_encryptBlock($xor);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], $block_size);
+                        $plaintext.= substr($ciphertext, $i, $block_size) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) {
+                        $xor = $this->_encryptBlock($xor);
+                        $plaintext.= substr($ciphertext, $i, $block_size) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($ciphertext) % $block_size) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+    }
+
+    /**
+     * Encrypts a block
+     *
+     * @access private
+     * @param String $in
+     * @return String
+     */
+    function _encryptBlock($in)
+    {
+        $state = array();
+        $words = unpack('N*word', $in);
+
+        $w = $this->w;
+        $t0 = $this->t0;
+        $t1 = $this->t1;
+        $t2 = $this->t2;
+        $t3 = $this->t3;
+        $Nb = $this->Nb;
+        $Nr = $this->Nr;
+        $c = $this->c;
+
+        // addRoundKey
+        $i = -1;
+        foreach ($words as $word) {
+            $state[] = $word ^ $w[0][++$i];
+        }
+
+        // fips-197.pdf#page=19, "Figure 5. Pseudo Code for the Cipher", states that this loop has four components - 
+        // subBytes, shiftRows, mixColumns, and addRoundKey. fips-197.pdf#page=30, "Implementation Suggestions Regarding 
+        // Various Platforms" suggests that performs enhanced implementations are described in Rijndael-ammended.pdf.
+        // Rijndael-ammended.pdf#page=20, "Implementation aspects / 32-bit processor", discusses such an optimization.
+        // Unfortunately, the description given there is not quite correct.  Per aes.spec.v316.pdf#page=19 [1], 
+        // equation (7.4.7) is supposed to use addition instead of subtraction, so we'll do that here, as well.
+
+        // [1] http://fp.gladman.plus.com/cryptography_technology/rijndael/aes.spec.v316.pdf
+        $temp = array();
+        for ($round = 1; $round < $Nr; ++$round) {
+            $i = 0; // $c[0] == 0
+            $j = $c[1];
+            $k = $c[2];
+            $l = $c[3];
+
+            while ($i < $Nb) {
+                $temp[$i] = $t0[$state[$i] >> 24 & 0x000000FF] ^
+                            $t1[$state[$j] >> 16 & 0x000000FF] ^
+                            $t2[$state[$k] >>  8 & 0x000000FF] ^
+                            $t3[$state[$l]       & 0x000000FF] ^
+                            $w[$round][$i];
+                ++$i;
+                $j = ($j + 1) % $Nb;
+                $k = ($k + 1) % $Nb;
+                $l = ($l + 1) % $Nb;
+            }
+            $state = $temp;
+        }
+
+        // subWord
+        for ($i = 0; $i < $Nb; ++$i) {
+            $state[$i] = $this->_subWord($state[$i]);
+        }
+
+        // shiftRows + addRoundKey
+        $i = 0; // $c[0] == 0
+        $j = $c[1];
+        $k = $c[2];
+        $l = $c[3];
+        while ($i < $Nb) {
+            $temp[$i] = ($state[$i] & 0xFF000000) ^
+                        ($state[$j] & 0x00FF0000) ^
+                        ($state[$k] & 0x0000FF00) ^
+                        ($state[$l] & 0x000000FF) ^
+                         $w[$Nr][$i];
+            ++$i;
+            $j = ($j + 1) % $Nb;
+            $k = ($k + 1) % $Nb;
+            $l = ($l + 1) % $Nb;
+        }
+
+        // 100% ugly switch/case code... but ~5% faster (meaning: ~half second faster de/encrypting 1MB text, tested with php5.4.9 on linux/32bit with an AMD Athlon II P360 CPU) then the commented smart code below. Don't know it's worth or not
+        switch ($Nb) {
+            case 8:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5], $temp[6], $temp[7]);
+            case 7:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5], $temp[6]);
+            case 6:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5]);
+            case 5:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4]);
+            default:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3]);
+        }
+        /*
+        $state = $temp;
+
+        array_unshift($state, 'N*');
+
+        return call_user_func_array('pack', $state);
+        */
+    }
+
+    /**
+     * Decrypts a block
+     *
+     * @access private
+     * @param String $in
+     * @return String
+     */
+    function _decryptBlock($in)
+    {
+        $state = array();
+        $words = unpack('N*word', $in);
+
+        $dw = $this->dw;
+        $dt0 = $this->dt0;
+        $dt1 = $this->dt1;
+        $dt2 = $this->dt2;
+        $dt3 = $this->dt3;
+        $Nb = $this->Nb;
+        $Nr = $this->Nr;
+        $c = $this->c;
+
+        // addRoundKey
+        $i = -1;
+        foreach ($words as $word) {
+            $state[] = $word ^ $dw[$Nr][++$i];
+        }
+
+        $temp = array();
+        for ($round = $Nr - 1; $round > 0; --$round) {
+            $i = 0; // $c[0] == 0
+            $j = $Nb - $c[1];
+            $k = $Nb - $c[2];
+            $l = $Nb - $c[3];
+
+            while ($i < $Nb) {
+                $temp[$i] = $dt0[$state[$i] >> 24 & 0x000000FF] ^
+                            $dt1[$state[$j] >> 16 & 0x000000FF] ^
+                            $dt2[$state[$k] >>  8 & 0x000000FF] ^
+                            $dt3[$state[$l]       & 0x000000FF] ^
+                            $dw[$round][$i];
+                ++$i;
+                $j = ($j + 1) % $Nb;
+                $k = ($k + 1) % $Nb;
+                $l = ($l + 1) % $Nb;
+            }
+            $state = $temp;
+        }
+
+        // invShiftRows + invSubWord + addRoundKey
+        $i = 0; // $c[0] == 0
+        $j = $Nb - $c[1];
+        $k = $Nb - $c[2];
+        $l = $Nb - $c[3];
+
+        while ($i < $Nb) {
+            $temp[$i] = $dw[0][$i] ^ 
+                        $this->_invSubWord(($state[$i] & 0xFF000000) | 
+                                           ($state[$j] & 0x00FF0000) | 
+                                           ($state[$k] & 0x0000FF00) | 
+                                           ($state[$l] & 0x000000FF));
+            ++$i;
+            $j = ($j + 1) % $Nb;
+            $k = ($k + 1) % $Nb;
+            $l = ($l + 1) % $Nb;
+        }
+
+        switch ($Nb) {
+            case 8:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5], $temp[6], $temp[7]);
+            case 7:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5], $temp[6]);
+            case 6:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4], $temp[5]);
+            case 5:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3], $temp[4]);
+            default:
+                return pack('N*', $temp[0], $temp[1], $temp[2], $temp[3]);
+        }
+        /*
+        $state = $temp;
+
+        array_unshift($state, 'N*');
+
+        return call_user_func_array('pack', $state);
+        */
+    }
+
+    /**
+     * Setup Rijndael
+     *
+     * Validates all the variables and calculates $Nr - the number of rounds that need to be performed - and $w - the key
+     * key schedule.
+     *
+     * @access private
+     */
+    function _setup()
+    {
+        // Each number in $rcon is equal to the previous number multiplied by two in Rijndael's finite field.
+        // See http://en.wikipedia.org/wiki/Finite_field_arithmetic#Multiplicative_inverse
+        static $rcon = array(0,
+            0x01000000, 0x02000000, 0x04000000, 0x08000000, 0x10000000,
+            0x20000000, 0x40000000, 0x80000000, 0x1B000000, 0x36000000,
+            0x6C000000, 0xD8000000, 0xAB000000, 0x4D000000, 0x9A000000,
+            0x2F000000, 0x5E000000, 0xBC000000, 0x63000000, 0xC6000000,
+            0x97000000, 0x35000000, 0x6A000000, 0xD4000000, 0xB3000000,
+            0x7D000000, 0xFA000000, 0xEF000000, 0xC5000000, 0x91000000
+        );
+
+        if (!$this->changed) {
+            return;
+        }
+
+        if (!$this->explicit_key_length) {
+            // we do >> 2, here, and not >> 5, as we do above, since strlen($this->key) tells us the number of bytes - not bits
+            $length = strlen($this->key) >> 2;
+            if ($length > 8) {
+                $length = 8;
+            } else if ($length < 4) {
+                $length = 4;
+            }
+            $this->Nk = $length;
+            $this->key_size = $length << 2;
+        }
+
+        $this->key = str_pad(substr($this->key, 0, $this->key_size), $this->key_size, chr(0));
+        $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($this->iv, 0, $this->block_size), $this->block_size, chr(0));
+
+        // see Rijndael-ammended.pdf#page=44
+        $this->Nr = max($this->Nk, $this->Nb) + 6;
+
+        // shift offsets for Nb = 5, 7 are defined in Rijndael-ammended.pdf#page=44,
+        //     "Table 8: Shift offsets in Shiftrow for the alternative block lengths"
+        // shift offsets for Nb = 4, 6, 8 are defined in Rijndael-ammended.pdf#page=14,
+        //     "Table 2: Shift offsets for different block lengths"
+        switch ($this->Nb) {
+            case 4:
+            case 5:
+            case 6:
+                $this->c = array(0, 1, 2, 3);
+                break;
+            case 7:
+                $this->c = array(0, 1, 2, 4);
+                break;
+            case 8:
+                $this->c = array(0, 1, 3, 4);
+        }
+
+        $key = $this->key;
+
+        $w = array_values(unpack('N*words', $key));
+
+        $length = $this->Nb * ($this->Nr + 1);
+        for ($i = $this->Nk; $i < $length; $i++) {
+            $temp = $w[$i - 1];
+            if ($i % $this->Nk == 0) {
+                // according to <http://php.net/language.types.integer>, "the size of an integer is platform-dependent".
+                // on a 32-bit machine, it's 32-bits, and on a 64-bit machine, it's 64-bits. on a 32-bit machine,
+                // 0xFFFFFFFF << 8 == 0xFFFFFF00, but on a 64-bit machine, it equals 0xFFFFFFFF00. as such, doing 'and'
+                // with 0xFFFFFFFF (or 0xFFFFFF00) on a 32-bit machine is unnecessary, but on a 64-bit machine, it is.
+                $temp = (($temp << 8) & 0xFFFFFF00) | (($temp >> 24) & 0x000000FF); // rotWord
+                $temp = $this->_subWord($temp) ^ $rcon[$i / $this->Nk];
+            } else if ($this->Nk > 6 && $i % $this->Nk == 4) {
+                $temp = $this->_subWord($temp);
+            }
+            $w[$i] = $w[$i - $this->Nk] ^ $temp;
+        }
+
+        // convert the key schedule from a vector of $Nb * ($Nr + 1) length to a matrix with $Nr + 1 rows and $Nb columns
+        // and generate the inverse key schedule.  more specifically,
+        // according to <http://csrc.nist.gov/archive/aes/rijndael/Rijndael-ammended.pdf#page=23> (section 5.3.3), 
+        // "The key expansion for the Inverse Cipher is defined as follows:
+        //        1. Apply the Key Expansion.
+        //        2. Apply InvMixColumn to all Round Keys except the first and the last one."
+        // also, see fips-197.pdf#page=27, "5.3.5 Equivalent Inverse Cipher"
+        $temp = array();
+        for ($i = $row = $col = 0; $i < $length; $i++, $col++) {
+            if ($col == $this->Nb) {
+                if ($row == 0) {
+                    $this->dw[0] = $this->w[0];
+                } else {
+                    // subWord + invMixColumn + invSubWord = invMixColumn
+                    $j = 0;
+                    while ($j < $this->Nb) {
+                        $dw = $this->_subWord($this->w[$row][$j]);
+                        $temp[$j] = $this->dt0[$dw >> 24 & 0x000000FF] ^ 
+                                    $this->dt1[$dw >> 16 & 0x000000FF] ^ 
+                                    $this->dt2[$dw >>  8 & 0x000000FF] ^ 
+                                    $this->dt3[$dw       & 0x000000FF];
+                        $j++;
+                    }
+                    $this->dw[$row] = $temp;
+                }
+
+                $col = 0;
+                $row++;
+            }
+            $this->w[$row][$col] = $w[$i];
+        }
+
+        $this->dw[$row] = $this->w[$row];
+
+        $this->changed = false;
+    }
+
+    /**
+     * Performs S-Box substitutions
+     *
+     * @access private
+     */
+    function _subWord($word)
+    {
+        static $sbox0, $sbox1, $sbox2, $sbox3;
+
+        if (empty($sbox0)) {
+            $sbox0 = array(
+                0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B, 0xFE, 0xD7, 0xAB, 0x76,
+                0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0, 0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0xA4, 0x72, 0xC0,
+                0xB7, 0xFD, 0x93, 0x26, 0x36, 0x3F, 0xF7, 0xCC, 0x34, 0xA5, 0xE5, 0xF1, 0x71, 0xD8, 0x31, 0x15,
+                0x04, 0xC7, 0x23, 0xC3, 0x18, 0x96, 0x05, 0x9A, 0x07, 0x12, 0x80, 0xE2, 0xEB, 0x27, 0xB2, 0x75,
+                0x09, 0x83, 0x2C, 0x1A, 0x1B, 0x6E, 0x5A, 0xA0, 0x52, 0x3B, 0xD6, 0xB3, 0x29, 0xE3, 0x2F, 0x84,
+                0x53, 0xD1, 0x00, 0xED, 0x20, 0xFC, 0xB1, 0x5B, 0x6A, 0xCB, 0xBE, 0x39, 0x4A, 0x4C, 0x58, 0xCF,
+                0xD0, 0xEF, 0xAA, 0xFB, 0x43, 0x4D, 0x33, 0x85, 0x45, 0xF9, 0x02, 0x7F, 0x50, 0x3C, 0x9F, 0xA8,
+                0x51, 0xA3, 0x40, 0x8F, 0x92, 0x9D, 0x38, 0xF5, 0xBC, 0xB6, 0xDA, 0x21, 0x10, 0xFF, 0xF3, 0xD2,
+                0xCD, 0x0C, 0x13, 0xEC, 0x5F, 0x97, 0x44, 0x17, 0xC4, 0xA7, 0x7E, 0x3D, 0x64, 0x5D, 0x19, 0x73,
+                0x60, 0x81, 0x4F, 0xDC, 0x22, 0x2A, 0x90, 0x88, 0x46, 0xEE, 0xB8, 0x14, 0xDE, 0x5E, 0x0B, 0xDB,
+                0xE0, 0x32, 0x3A, 0x0A, 0x49, 0x06, 0x24, 0x5C, 0xC2, 0xD3, 0xAC, 0x62, 0x91, 0x95, 0xE4, 0x79,
+                0xE7, 0xC8, 0x37, 0x6D, 0x8D, 0xD5, 0x4E, 0xA9, 0x6C, 0x56, 0xF4, 0xEA, 0x65, 0x7A, 0xAE, 0x08,
+                0xBA, 0x78, 0x25, 0x2E, 0x1C, 0xA6, 0xB4, 0xC6, 0xE8, 0xDD, 0x74, 0x1F, 0x4B, 0xBD, 0x8B, 0x8A,
+                0x70, 0x3E, 0xB5, 0x66, 0x48, 0x03, 0xF6, 0x0E, 0x61, 0x35, 0x57, 0xB9, 0x86, 0xC1, 0x1D, 0x9E,
+                0xE1, 0xF8, 0x98, 0x11, 0x69, 0xD9, 0x8E, 0x94, 0x9B, 0x1E, 0x87, 0xE9, 0xCE, 0x55, 0x28, 0xDF,
+                0x8C, 0xA1, 0x89, 0x0D, 0xBF, 0xE6, 0x42, 0x68, 0x41, 0x99, 0x2D, 0x0F, 0xB0, 0x54, 0xBB, 0x16
+            );
+
+            $sbox1 = array();
+            $sbox2 = array();
+            $sbox3 = array();
+
+            for ($i = 0; $i < 256; $i++) {
+                $sbox1[] = $sbox0[$i] <<  8;
+                $sbox2[] = $sbox0[$i] << 16;
+                $sbox3[] = $sbox0[$i] << 24;
+            }
+        }
+
+        return $sbox0[$word       & 0x000000FF] |
+               $sbox1[$word >>  8 & 0x000000FF] |
+               $sbox2[$word >> 16 & 0x000000FF] |
+               $sbox3[$word >> 24 & 0x000000FF];
+    }
+    
+
+    /**
+     * Performs inverse S-Box substitutions
+     *
+     * @access private
+     */
+    function _invSubWord($word)
+    {
+        static $sbox0, $sbox1, $sbox2, $sbox3;
+
+        if (empty($sbox0)) {
+            $sbox0 = array(
+                0x52, 0x09, 0x6A, 0xD5, 0x30, 0x36, 0xA5, 0x38, 0xBF, 0x40, 0xA3, 0x9E, 0x81, 0xF3, 0xD7, 0xFB,
+                0x7C, 0xE3, 0x39, 0x82, 0x9B, 0x2F, 0xFF, 0x87, 0x34, 0x8E, 0x43, 0x44, 0xC4, 0xDE, 0xE9, 0xCB,
+                0x54, 0x7B, 0x94, 0x32, 0xA6, 0xC2, 0x23, 0x3D, 0xEE, 0x4C, 0x95, 0x0B, 0x42, 0xFA, 0xC3, 0x4E,
+                0x08, 0x2E, 0xA1, 0x66, 0x28, 0xD9, 0x24, 0xB2, 0x76, 0x5B, 0xA2, 0x49, 0x6D, 0x8B, 0xD1, 0x25,
+                0x72, 0xF8, 0xF6, 0x64, 0x86, 0x68, 0x98, 0x16, 0xD4, 0xA4, 0x5C, 0xCC, 0x5D, 0x65, 0xB6, 0x92,
+                0x6C, 0x70, 0x48, 0x50, 0xFD, 0xED, 0xB9, 0xDA, 0x5E, 0x15, 0x46, 0x57, 0xA7, 0x8D, 0x9D, 0x84,
+                0x90, 0xD8, 0xAB, 0x00, 0x8C, 0xBC, 0xD3, 0x0A, 0xF7, 0xE4, 0x58, 0x05, 0xB8, 0xB3, 0x45, 0x06,
+                0xD0, 0x2C, 0x1E, 0x8F, 0xCA, 0x3F, 0x0F, 0x02, 0xC1, 0xAF, 0xBD, 0x03, 0x01, 0x13, 0x8A, 0x6B,
+                0x3A, 0x91, 0x11, 0x41, 0x4F, 0x67, 0xDC, 0xEA, 0x97, 0xF2, 0xCF, 0xCE, 0xF0, 0xB4, 0xE6, 0x73,
+                0x96, 0xAC, 0x74, 0x22, 0xE7, 0xAD, 0x35, 0x85, 0xE2, 0xF9, 0x37, 0xE8, 0x1C, 0x75, 0xDF, 0x6E,
+                0x47, 0xF1, 0x1A, 0x71, 0x1D, 0x29, 0xC5, 0x89, 0x6F, 0xB7, 0x62, 0x0E, 0xAA, 0x18, 0xBE, 0x1B,
+                0xFC, 0x56, 0x3E, 0x4B, 0xC6, 0xD2, 0x79, 0x20, 0x9A, 0xDB, 0xC0, 0xFE, 0x78, 0xCD, 0x5A, 0xF4,
+                0x1F, 0xDD, 0xA8, 0x33, 0x88, 0x07, 0xC7, 0x31, 0xB1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xEC, 0x5F,
+                0x60, 0x51, 0x7F, 0xA9, 0x19, 0xB5, 0x4A, 0x0D, 0x2D, 0xE5, 0x7A, 0x9F, 0x93, 0xC9, 0x9C, 0xEF,
+                0xA0, 0xE0, 0x3B, 0x4D, 0xAE, 0x2A, 0xF5, 0xB0, 0xC8, 0xEB, 0xBB, 0x3C, 0x83, 0x53, 0x99, 0x61,
+                0x17, 0x2B, 0x04, 0x7E, 0xBA, 0x77, 0xD6, 0x26, 0xE1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0C, 0x7D
+            );
+
+            $sbox1 = array();
+            $sbox2 = array();
+            $sbox3 = array();
+
+            for ($i = 0; $i < 256; $i++) {
+                $sbox1[] = $sbox0[$i] <<  8;
+                $sbox2[] = $sbox0[$i] << 16;
+                $sbox3[] = $sbox0[$i] << 24;
+            }
+        }
+
+        return $sbox0[$word       & 0x000000FF] |
+               $sbox1[$word >>  8 & 0x000000FF] |
+               $sbox2[$word >> 16 & 0x000000FF] |
+               $sbox3[$word >> 24 & 0x000000FF];
+    }
+
+    /**
+     * Pad "packets".
+     *
+     * Rijndael works by encrypting between sixteen and thirty-two bytes at a time, provided that number is also a multiple
+     * of four.  If you ever need to encrypt or decrypt something that isn't of the proper length, it becomes necessary to
+     * pad the input so that it is of the proper length.
+     *
+     * Padding is enabled by default.  Sometimes, however, it is undesirable to pad strings.  Such is the case in SSH,
+     * where "packets" are padded with random bytes before being encrypted.  Unpad these packets and you risk stripping
+     * away characters that shouldn't be stripped away. (SSH knows how many bytes are added because the length is
+     * transmitted separately)
+     *
+     * @see Crypt_Rijndael::disablePadding()
+     * @access public
+     */
+    function enablePadding()
+    {
+        $this->padding = true;
+    }
+
+    /**
+     * Do not pad packets.
+     *
+     * @see Crypt_Rijndael::enablePadding()
+     * @access public
+     */
+    function disablePadding()
+    {
+        $this->padding = false;
+    }
+
+    /**
+     * Pads a string
+     *
+     * Pads a string using the RSA PKCS padding standards so that its length is a multiple of the blocksize.
+     * $block_size - (strlen($text) % $block_size) bytes are added, each of which is equal to 
+     * chr($block_size - (strlen($text) % $block_size)
+     *
+     * If padding is disabled and $text is not a multiple of the blocksize, the string will be padded regardless
+     * and padding will, hence forth, be enabled.
+     *
+     * @see Crypt_Rijndael::_unpad()
+     * @access private
+     */
+    function _pad($text)
+    {
+        $length = strlen($text);
+
+        if (!$this->padding) {
+            if ($length % $this->block_size == 0) {
+                return $text;
+            } else {
+                user_error("The plaintext's length ($length) is not a multiple of the block size ({$this->block_size})");
+                $this->padding = true;
+            }
+        }
+
+        $pad = $this->block_size - ($length % $this->block_size);
+
+        return str_pad($text, $length + $pad, chr($pad));
+    }
+
+    /**
+     * Unpads a string.
+     *
+     * If padding is enabled and the reported padding length is invalid the encryption key will be assumed to be wrong
+     * and false will be returned.
+     *
+     * @see Crypt_Rijndael::_pad()
+     * @access private
+     */
+    function _unpad($text)
+    {
+        if (!$this->padding) {
+            return $text;
+        }
+
+        $length = ord($text[strlen($text) - 1]);
+
+        if (!$length || $length > $this->block_size) {
+            return false;
+        }
+
+        return substr($text, 0, -$length);
+    }
+
+    /**
+     * Treat consecutive "packets" as if they are a continuous buffer.
+     *
+     * Say you have a 32-byte plaintext $plaintext.  Using the default behavior, the two following code snippets
+     * will yield different outputs:
+     *
+     * <code>
+     *    echo $rijndael->encrypt(substr($plaintext,  0, 16));
+     *    echo $rijndael->encrypt(substr($plaintext, 16, 16));
+     * </code>
+     * <code>
+     *    echo $rijndael->encrypt($plaintext);
+     * </code>
+     *
+     * The solution is to enable the continuous buffer.  Although this will resolve the above discrepancy, it creates
+     * another, as demonstrated with the following:
+     *
+     * <code>
+     *    $rijndael->encrypt(substr($plaintext, 0, 16));
+     *    echo $rijndael->decrypt($des->encrypt(substr($plaintext, 16, 16)));
+     * </code>
+     * <code>
+     *    echo $rijndael->decrypt($des->encrypt(substr($plaintext, 16, 16)));
+     * </code>
+     *
+     * With the continuous buffer disabled, these would yield the same output.  With it enabled, they yield different
+     * outputs.  The reason is due to the fact that the initialization vector's change after every encryption /
+     * decryption round when the continuous buffer is enabled.  When it's disabled, they remain constant.
+     *
+     * Put another way, when the continuous buffer is enabled, the state of the Crypt_Rijndael() object changes after each
+     * encryption / decryption round, whereas otherwise, it'd remain constant.  For this reason, it's recommended that
+     * continuous buffers not be used.  They do offer better security and are, in fact, sometimes required (SSH uses them),
+     * however, they are also less intuitive and more likely to cause you problems.
+     *
+     * @see Crypt_Rijndael::disableContinuousBuffer()
+     * @access public
+     */
+    function enableContinuousBuffer()
+    {
+        $this->continuousBuffer = true;
+    }
+
+    /**
+     * Treat consecutive packets as if they are a discontinuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_Rijndael::enableContinuousBuffer()
+     * @access public
+     */
+    function disableContinuousBuffer()
+    {
+        $this->continuousBuffer = false;
+        $this->encryptIV = $this->iv;
+        $this->decryptIV = $this->iv;
+        $this->enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0);
+        $this->debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0);
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+}
+
+// vim: ts=4:sw=4:et:
+// vim6: fdl=1:
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/TripleDES.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/TripleDES.php
new file mode 100644
index 0000000000000000000000000000000000000000..3b4c8c3622fdd4e275b24c50543cf03cd72c6ccd
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/TripleDES.php
@@ -0,0 +1,1080 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of Triple DES.
+ *
+ * Uses mcrypt, if available, and an internal implementation, otherwise.  Operates in the EDE3 mode (encrypt-decrypt-encrypt).
+ *
+ * PHP versions 4 and 5
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Crypt/TripleDES.php');
+ *
+ *    $des = new Crypt_TripleDES();
+ *
+ *    $des->setKey('abcdefghijklmnopqrstuvwx');
+ *
+ *    $size = 10 * 1024;
+ *    $plaintext = '';
+ *    for ($i = 0; $i < $size; $i++) {
+ *        $plaintext.= 'a';
+ *    }
+ *
+ *    echo $des->decrypt($des->encrypt($plaintext));
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Crypt
+ * @package    Crypt_TripleDES
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: TripleDES.php,v 1.13 2010/02/26 03:40:25 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Crypt_DES
+ */
+if (!class_exists('Crypt_DES')) {
+    require_once('DES.php');
+}
+
+/**
+ * Encrypt / decrypt using inner chaining
+ *
+ * Inner chaining is used by SSH-1 and is generally considered to be less secure then outer chaining (CRYPT_DES_MODE_CBC3).
+ */
+define('CRYPT_DES_MODE_3CBC', -2);
+
+/**
+ * Encrypt / decrypt using outer chaining
+ *
+ * Outer chaining is used by SSH-2 and when the mode is set to CRYPT_DES_MODE_CBC.
+ */
+define('CRYPT_DES_MODE_CBC3', CRYPT_DES_MODE_CBC);
+
+/**
+ * Pure-PHP implementation of Triple DES.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Crypt_TerraDES
+ */
+class Crypt_TripleDES {
+    /**
+     * The Three Keys
+     *
+     * @see Crypt_TripleDES::setKey()
+     * @var String
+     * @access private
+     */
+    var $key = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * The Encryption Mode
+     *
+     * @see Crypt_TripleDES::Crypt_TripleDES()
+     * @var Integer
+     * @access private
+     */
+    var $mode = CRYPT_DES_MODE_CBC;
+
+    /**
+     * Continuous Buffer status
+     *
+     * @see Crypt_TripleDES::enableContinuousBuffer()
+     * @var Boolean
+     * @access private
+     */
+    var $continuousBuffer = false;
+
+    /**
+     * Padding status
+     *
+     * @see Crypt_TripleDES::enablePadding()
+     * @var Boolean
+     * @access private
+     */
+    var $padding = true;
+
+    /**
+     * The Initialization Vector
+     *
+     * @see Crypt_TripleDES::setIV()
+     * @var String
+     * @access private
+     */
+    var $iv = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_TripleDES::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $encryptIV = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * A "sliding" Initialization Vector
+     *
+     * @see Crypt_TripleDES::enableContinuousBuffer()
+     * @var String
+     * @access private
+     */
+    var $decryptIV = "\0\0\0\0\0\0\0\0";
+
+    /**
+     * The Crypt_DES objects
+     *
+     * @var Array
+     * @access private
+     */
+    var $des;
+
+    /**
+     * mcrypt resource for encryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_TripleDES::encrypt()
+     * @var String
+     * @access private
+     */
+    var $enmcrypt;
+
+    /**
+     * mcrypt resource for decryption
+     *
+     * The mcrypt resource can be recreated every time something needs to be created or it can be created just once.
+     * Since mcrypt operates in continuous mode, by default, it'll need to be recreated when in non-continuous mode.
+     *
+     * @see Crypt_TripleDES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $demcrypt;
+
+    /**
+     * Does the enmcrypt resource need to be (re)initialized?
+     *
+     * @see Crypt_TripleDES::setKey()
+     * @see Crypt_TripleDES::setIV()
+     * @var Boolean
+     * @access private
+     */
+    var $enchanged = true;
+
+    /**
+     * Does the demcrypt resource need to be (re)initialized?
+     *
+     * @see Crypt_TripleDES::setKey()
+     * @see Crypt_TripleDES::setIV()
+     * @var Boolean
+     * @access private
+     */
+    var $dechanged = true;
+
+    /**
+     * Is the mode one that is paddable?
+     *
+     * @see Crypt_TripleDES::Crypt_TripleDES()
+     * @var Boolean
+     * @access private
+     */
+    var $paddable = false;
+
+    /**
+     * Encryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_TripleDES::encrypt()
+     * @var Array
+     * @access private
+     */
+    var $enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0, 'enmcrypt_init' => true);
+
+    /**
+     * Decryption buffer for CTR, OFB and CFB modes
+     *
+     * @see Crypt_TripleDES::decrypt()
+     * @var Array
+     * @access private
+     */
+    var $debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0, 'demcrypt_init' => true);
+
+    /**
+     * mcrypt resource for CFB mode
+     *
+     * @see Crypt_TripleDES::encrypt()
+     * @see Crypt_TripleDES::decrypt()
+     * @var String
+     * @access private
+     */
+    var $ecb;
+
+    /**
+     * Default Constructor.
+     *
+     * Determines whether or not the mcrypt extension should be used.  $mode should only, at present, be
+     * CRYPT_DES_MODE_ECB or CRYPT_DES_MODE_CBC.  If not explictly set, CRYPT_DES_MODE_CBC will be used.
+     *
+     * @param optional Integer $mode
+     * @return Crypt_TripleDES
+     * @access public
+     */
+    function Crypt_TripleDES($mode = CRYPT_DES_MODE_CBC)
+    {
+        if ( !defined('CRYPT_DES_MODE') ) {
+            switch (true) {
+                case extension_loaded('mcrypt') && in_array('tripledes', mcrypt_list_algorithms()):
+                    define('CRYPT_DES_MODE', CRYPT_DES_MODE_MCRYPT);
+                    break;
+                default:
+                    define('CRYPT_DES_MODE', CRYPT_DES_MODE_INTERNAL);
+            }
+        }
+
+        if ( $mode == CRYPT_DES_MODE_3CBC ) {
+            $this->mode = CRYPT_DES_MODE_3CBC;
+            $this->des = array(
+                new Crypt_DES(CRYPT_DES_MODE_CBC),
+                new Crypt_DES(CRYPT_DES_MODE_CBC),
+                new Crypt_DES(CRYPT_DES_MODE_CBC)
+            );
+            $this->paddable = true;
+
+            // we're going to be doing the padding, ourselves, so disable it in the Crypt_DES objects
+            $this->des[0]->disablePadding();
+            $this->des[1]->disablePadding();
+            $this->des[2]->disablePadding();
+
+            return;
+        }
+
+        switch ( CRYPT_DES_MODE ) {
+            case CRYPT_DES_MODE_MCRYPT:
+                switch ($mode) {
+                    case CRYPT_DES_MODE_ECB:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_ECB;
+                        break;
+                    case CRYPT_DES_MODE_CTR:
+                        $this->mode = 'ctr';
+                        break;
+                    case CRYPT_DES_MODE_CFB:
+                        $this->mode = 'ncfb';
+                        $this->ecb = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_ECB, '');
+                        break;
+                    case CRYPT_DES_MODE_OFB:
+                        $this->mode = MCRYPT_MODE_NOFB;
+                        break;
+                    case CRYPT_DES_MODE_CBC:
+                    default:
+                        $this->paddable = true;
+                        $this->mode = MCRYPT_MODE_CBC;
+                }
+                $this->enmcrypt = mcrypt_module_open(MCRYPT_3DES, '', $this->mode, '');
+                $this->demcrypt = mcrypt_module_open(MCRYPT_3DES, '', $this->mode, '');
+
+                break;
+            default:
+                $this->des = array(
+                    new Crypt_DES(CRYPT_DES_MODE_ECB),
+                    new Crypt_DES(CRYPT_DES_MODE_ECB),
+                    new Crypt_DES(CRYPT_DES_MODE_ECB)
+                );
+ 
+                // we're going to be doing the padding, ourselves, so disable it in the Crypt_DES objects
+                $this->des[0]->disablePadding();
+                $this->des[1]->disablePadding();
+                $this->des[2]->disablePadding();
+
+                switch ($mode) {
+                    case CRYPT_DES_MODE_ECB:
+                    case CRYPT_DES_MODE_CBC:
+                        $this->paddable = true;
+                        $this->mode = $mode;
+                        break;
+                    case CRYPT_DES_MODE_CTR:
+                    case CRYPT_DES_MODE_CFB:
+                    case CRYPT_DES_MODE_OFB:
+                        $this->mode = $mode;
+                        break;
+                    default:
+                        $this->paddable = true;
+                        $this->mode = CRYPT_DES_MODE_CBC;
+                }
+        }
+    }
+
+    /**
+     * Sets the key.
+     *
+     * Keys can be of any length.  Triple DES, itself, can use 128-bit (eg. strlen($key) == 16) or
+     * 192-bit (eg. strlen($key) == 24) keys.  This function pads and truncates $key as appropriate.
+     *
+     * DES also requires that every eighth bit be a parity bit, however, we'll ignore that.
+     *
+     * If the key is not explicitly set, it'll be assumed to be all zero's.
+     *
+     * @access public
+     * @param String $key
+     */
+    function setKey($key)
+    {
+        $length = strlen($key);
+        if ($length > 8) {
+            $key = str_pad($key, 24, chr(0));
+            // if $key is between 64 and 128-bits, use the first 64-bits as the last, per this:
+            // http://php.net/function.mcrypt-encrypt#47973
+            //$key = $length <= 16 ? substr_replace($key, substr($key, 0, 8), 16) : substr($key, 0, 24);
+        } else {
+            $key = str_pad($key, 8, chr(0));
+        }
+        $this->key = $key;
+        switch (true) {
+            case CRYPT_DES_MODE == CRYPT_DES_MODE_INTERNAL:
+            case $this->mode == CRYPT_DES_MODE_3CBC:
+                $this->des[0]->setKey(substr($key,  0, 8));
+                $this->des[1]->setKey(substr($key,  8, 8));
+                $this->des[2]->setKey(substr($key, 16, 8));
+        }
+        $this->enchanged = $this->dechanged = true;
+    }
+
+    /**
+     * Sets the password.
+     *
+     * Depending on what $method is set to, setPassword()'s (optional) parameters are as follows:
+     *     {@link http://en.wikipedia.org/wiki/PBKDF2 pbkdf2}:
+     *         $hash, $salt, $method
+     *
+     * @param String $password
+     * @param optional String $method
+     * @access public
+     */
+    function setPassword($password, $method = 'pbkdf2')
+    {
+        $key = '';
+
+        switch ($method) {
+            default: // 'pbkdf2'
+                list(, , $hash, $salt, $count) = func_get_args();
+                if (!isset($hash)) {
+                    $hash = 'sha1';
+                }
+                // WPA and WPA2 use the SSID as the salt
+                if (!isset($salt)) {
+                    $salt = 'phpseclib';
+                }
+                // RFC2898#section-4.2 uses 1,000 iterations by default
+                // WPA and WPA2 use 4,096.
+                if (!isset($count)) {
+                    $count = 1000;
+                }
+
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+
+                $i = 1;
+                while (strlen($key) < 24) { // $dkLen == 24
+                    $hmac = new Crypt_Hash();
+                    $hmac->setHash($hash);
+                    $hmac->setKey($password);
+                    $f = $u = $hmac->hash($salt . pack('N', $i++));
+                    for ($j = 2; $j <= $count; $j++) {
+                        $u = $hmac->hash($u);
+                        $f^= $u;
+                    }
+                    $key.= $f;
+                }
+        }
+
+        $this->setKey($key);
+    }
+
+    /**
+     * Sets the initialization vector. (optional)
+     *
+     * SetIV is not required when CRYPT_DES_MODE_ECB is being used.  If not explictly set, it'll be assumed
+     * to be all zero's.
+     *
+     * @access public
+     * @param String $iv
+     */
+    function setIV($iv)
+    {
+        $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($iv, 0, 8), 8, chr(0));
+        if ($this->mode == CRYPT_DES_MODE_3CBC) {
+            $this->des[0]->setIV($iv);
+            $this->des[1]->setIV($iv);
+            $this->des[2]->setIV($iv);
+        }
+        $this->enchanged = $this->dechanged = true;
+    }
+
+    /**
+     * Generate CTR XOR encryption key
+     *
+     * Encrypt the output of this and XOR it against the ciphertext / plaintext to get the
+     * plaintext / ciphertext in CTR mode.
+     *
+     * @see Crypt_TripleDES::decrypt()
+     * @see Crypt_TripleDES::encrypt()
+     * @access private
+     * @param String $iv
+     */
+    function _generate_xor(&$iv)
+    {
+        $xor = $iv;
+        for ($j = 4; $j <= 8; $j+=4) {
+            $temp = substr($iv, -$j, 4);
+            switch ($temp) {
+                case "\xFF\xFF\xFF\xFF":
+                    $iv = substr_replace($iv, "\x00\x00\x00\x00", -$j, 4);
+                    break;
+                case "\x7F\xFF\xFF\xFF":
+                    $iv = substr_replace($iv, "\x80\x00\x00\x00", -$j, 4);
+                    break 2;
+                default:
+                    extract(unpack('Ncount', $temp));
+                    $iv = substr_replace($iv, pack('N', $count + 1), -$j, 4);
+                    break 2;
+            }
+        }
+
+        return $xor;
+    }
+
+    /**
+     * Encrypts a message.
+     *
+     * @access public
+     * @param String $plaintext
+     */
+    function encrypt($plaintext)
+    {
+        if ($this->paddable) {
+            $plaintext = $this->_pad($plaintext);
+        }
+
+        // if the key is smaller then 8, do what we'd normally do
+        if ($this->mode == CRYPT_DES_MODE_3CBC && strlen($this->key) > 8) {
+            $ciphertext = $this->des[2]->encrypt($this->des[1]->decrypt($this->des[0]->encrypt($plaintext)));
+
+            return $ciphertext;
+        }
+
+        if ( CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT ) {
+            if ($this->enchanged) {
+                mcrypt_generic_init($this->enmcrypt, $this->key, $this->encryptIV);
+                if ($this->mode == 'ncfb') {
+                    mcrypt_generic_init($this->ecb, $this->key, "\0\0\0\0\0\0\0\0");
+                }
+                $this->enchanged = false;
+            }
+
+            if ($this->mode != 'ncfb' || !$this->continuousBuffer) {
+                $ciphertext = mcrypt_generic($this->enmcrypt, $plaintext);
+            } else {
+                $iv = &$this->encryptIV;
+                $pos = &$this->enbuffer['pos'];
+                $len = strlen($plaintext);
+                $ciphertext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $ciphertext = substr($iv, $orig_pos) ^ $plaintext;
+                    $iv = substr_replace($iv, $ciphertext, $orig_pos, $i);
+                    $this->enbuffer['enmcrypt_init'] = true;
+                }
+                if ($len >= 8) {
+                    if ($this->enbuffer['enmcrypt_init'] === false || $len > 950) {
+                        if ($this->enbuffer['enmcrypt_init'] === true) {
+                            mcrypt_generic_init($this->enmcrypt, $this->key, $iv);
+                            $this->enbuffer['enmcrypt_init'] = false;
+                        }
+                        $ciphertext.= mcrypt_generic($this->enmcrypt, substr($plaintext, $i, $len - $len % 8));
+                        $iv = substr($ciphertext, -8);
+                        $i = strlen($ciphertext);
+                        $len%= 8;
+                    } else {
+                        while ($len >= 8) {
+                            $iv = mcrypt_generic($this->ecb, $iv) ^ substr($plaintext, $i, 8);
+                            $ciphertext.= $iv;
+                            $len-= 8;
+                            $i+= 8;
+                        }
+                    }
+                } 
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $block = $iv ^ substr($plaintext, $i);
+                    $iv = substr_replace($iv, $block, 0, $len);
+                    $ciphertext.= $block;
+                    $pos = $len;
+                }
+                return $ciphertext;
+            }
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->enmcrypt, $this->key, $this->encryptIV);
+            }
+
+            return $ciphertext;
+        }
+
+        if (strlen($this->key) <= 8) {
+            $this->des[0]->mode = $this->mode;
+
+            return $this->des[0]->encrypt($plaintext);
+        }
+
+        $des = $this->des;
+
+        $buffer = &$this->enbuffer;
+        $continuousBuffer = $this->continuousBuffer;
+        $ciphertext = '';
+        switch ($this->mode) {
+            case CRYPT_DES_MODE_ECB:
+                for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                    $block = substr($plaintext, $i, 8);
+                    // all of these _processBlock calls could, in theory, be put in a function - say Crypt_TripleDES::_ede_encrypt() or something.
+                    // only problem with that: it would slow encryption and decryption down.  $this->des would have to be called every time that
+                    // function is called, instead of once for the whole string of text that's being encrypted, which would, in turn, make 
+                    // encryption and decryption take more time, per this:
+                    //
+                    // http://blog.libssh2.org/index.php?/archives/21-Compiled-Variables.html
+                    $block = $des[0]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $block = $des[1]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $block = $des[2]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $ciphertext.= $block;
+                }
+                break;
+            case CRYPT_DES_MODE_CBC:
+                $xor = $this->encryptIV;
+                for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                    $block = substr($plaintext, $i, 8) ^ $xor;
+                    $block = $des[0]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $block = $des[1]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $block = $des[2]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $xor = $block;
+                    $ciphertext.= $block;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                }
+                break;
+            case CRYPT_DES_MODE_CTR:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['encrypted'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $block = substr($plaintext, $i, 8);
+                        $key = $this->_generate_xor($xor);
+                        $key = $des[0]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $key = $des[1]->_processBlock($key, CRYPT_DES_DECRYPT);
+                        $key = $des[2]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $buffer['encrypted'].= $key;
+                        $key = $this->_string_shift($buffer['encrypted'], 8);
+                        $ciphertext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $block = substr($plaintext, $i, 8);
+                        $key = $this->_generate_xor($xor);
+                        $key = $des[0]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $key = $des[1]->_processBlock($key, CRYPT_DES_DECRYPT);
+                        $key = $des[2]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $ciphertext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) & 7) {
+                        $buffer['encrypted'] = substr($key, $start) . $buffer['encrypted'];
+                    }
+                }
+                break;
+            case CRYPT_DES_MODE_CFB:
+                if (strlen($buffer['xor'])) {
+                    $ciphertext = $plaintext ^ $buffer['xor'];
+                    $iv = $buffer['encrypted'] . $ciphertext;
+                    $start = strlen($ciphertext);
+                    $buffer['encrypted'].= $ciphertext;
+                    $buffer['xor'] = substr($buffer['xor'], strlen($ciphertext));
+                } else {
+                    $ciphertext = '';
+                    $iv = $this->encryptIV;
+                    $start = 0;
+                }
+
+                for ($i = $start; $i < strlen($plaintext); $i+=8) {
+                    $block = substr($plaintext, $i, 8);
+                    $iv = $des[0]->_processBlock($iv, CRYPT_DES_ENCRYPT);
+                    $iv = $des[1]->_processBlock($iv, CRYPT_DES_DECRYPT);
+                    $xor= $des[2]->_processBlock($iv, CRYPT_DES_ENCRYPT);
+
+                    $iv = $block ^ $xor;
+                    if ($continuousBuffer && strlen($iv) != 8) {
+                        $buffer = array(
+                            'encrypted' => $iv,
+                            'xor' => substr($xor, strlen($iv))
+                        );
+                    }
+                    $ciphertext.= $iv;
+                }
+
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $iv;
+                }
+                break;
+            case CRYPT_DES_MODE_OFB:
+                $xor = $this->encryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $xor = $des[0]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], 8);
+                        $ciphertext.= substr($plaintext, $i, 8) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($plaintext); $i+=8) {
+                        $xor = $des[0]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $ciphertext.= substr($plaintext, $i, 8) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->encryptIV = $xor;
+                    if ($start = strlen($plaintext) & 7) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $ciphertext;
+    }
+
+    /**
+     * Decrypts a message.
+     *
+     * @access public
+     * @param String $ciphertext
+     */
+    function decrypt($ciphertext)
+    {
+        if ($this->mode == CRYPT_DES_MODE_3CBC && strlen($this->key) > 8) {
+            $plaintext = $this->des[0]->decrypt($this->des[1]->encrypt($this->des[2]->decrypt($ciphertext)));
+
+            return $this->_unpad($plaintext);
+        }
+
+        if ($this->paddable) {
+            // we pad with chr(0) since that's what mcrypt_generic does.  to quote from http://php.net/function.mcrypt-generic :
+            // "The data is padded with "\0" to make sure the length of the data is n * blocksize."
+            $ciphertext = str_pad($ciphertext, (strlen($ciphertext) + 7) & 0xFFFFFFF8, chr(0));
+        }
+
+        if ( CRYPT_DES_MODE == CRYPT_DES_MODE_MCRYPT ) {
+            if ($this->dechanged) {
+                mcrypt_generic_init($this->demcrypt, $this->key, $this->decryptIV);
+                if ($this->mode == 'ncfb') {
+                    mcrypt_generic_init($this->ecb, $this->key, "\0\0\0\0\0\0\0\0");
+                }
+                $this->dechanged = false;
+            }
+
+            if ($this->mode != 'ncfb' || !$this->continuousBuffer) {
+                $plaintext = mdecrypt_generic($this->demcrypt, $ciphertext);
+            } else {
+                $iv = &$this->decryptIV;
+                $pos = &$this->debuffer['pos'];
+                $len = strlen($ciphertext);
+                $plaintext = '';
+                $i = 0;
+                if ($pos) {
+                    $orig_pos = $pos;
+                    $max = 8 - $pos;
+                    if ($len >= $max) {
+                        $i = $max;
+                        $len-= $max;
+                        $pos = 0;
+                    } else {
+                        $i = $len;
+                        $pos+= $len;
+                        $len = 0;
+                    }
+                    $plaintext = substr($iv, $orig_pos) ^ $ciphertext;
+                    $iv = substr_replace($iv, substr($ciphertext, 0, $i), $orig_pos, $i);
+                }
+                if ($len >= 8) {
+                    $cb = substr($ciphertext, $i, $len - $len % 8);
+                    $plaintext.= mcrypt_generic($this->ecb, $iv . $cb) ^ $cb;
+                    $iv = substr($cb, -8);
+                    $len%= 8;
+                }
+                if ($len) {
+                    $iv = mcrypt_generic($this->ecb, $iv);
+                    $cb = substr($ciphertext, -$len);
+                    $plaintext.= $iv ^ $cb;
+                    $iv = substr_replace($iv, $cb, 0, $len);
+                    $pos = $len;
+                }
+                return $plaintext;
+            }
+
+            if (!$this->continuousBuffer) {
+                mcrypt_generic_init($this->demcrypt, $this->key, $this->decryptIV);
+            }
+
+            return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+        }
+
+        if (strlen($this->key) <= 8) {
+            $this->des[0]->mode = $this->mode;
+            $plaintext = $this->des[0]->decrypt($ciphertext);
+            return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+        }
+
+        $des = $this->des;
+
+        $buffer = &$this->debuffer;
+        $continuousBuffer = $this->continuousBuffer;
+        $plaintext = '';
+        switch ($this->mode) {
+            case CRYPT_DES_MODE_ECB:
+                for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                    $block = substr($ciphertext, $i, 8);
+                    $block = $des[2]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $block = $des[1]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $block = $des[0]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $plaintext.= $block;
+                }
+                break;
+            case CRYPT_DES_MODE_CBC:
+                $xor = $this->decryptIV;
+                for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                    $orig = $block = substr($ciphertext, $i, 8);
+                    $block = $des[2]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $block = $des[1]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                    $block = $des[0]->_processBlock($block, CRYPT_DES_DECRYPT);
+                    $plaintext.= $block ^ $xor;
+                    $xor = $orig;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                }
+                break;
+            case CRYPT_DES_MODE_CTR:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['ciphertext'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $block = substr($ciphertext, $i, 8);
+                        $key = $this->_generate_xor($xor);
+                        $key = $des[0]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $key = $des[1]->_processBlock($key, CRYPT_DES_DECRYPT);
+                        $key = $des[2]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $buffer['ciphertext'].= $key;
+                        $key = $this->_string_shift($buffer['ciphertext'], 8);
+                        $plaintext.= $block ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $block = substr($ciphertext, $i, 8);
+                        $key = $this->_generate_xor($xor);
+                        $key = $des[0]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $key = $des[1]->_processBlock($key, CRYPT_DES_DECRYPT);
+                        $key = $des[2]->_processBlock($key, CRYPT_DES_ENCRYPT);
+                        $plaintext.= $block ^ $key;
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($plaintext) & 7) {
+                        $buffer['ciphertext'] = substr($key, $start) . $buffer['ciphertext'];
+                    }
+                }
+                break;
+            case CRYPT_DES_MODE_CFB:
+                if (strlen($buffer['ciphertext'])) {
+                    $plaintext = $ciphertext ^ substr($this->decryptIV, strlen($buffer['ciphertext']));
+                    $buffer['ciphertext'].= substr($ciphertext, 0, strlen($plaintext));
+                    if (strlen($buffer['ciphertext']) != 8) {
+                        $block = $this->decryptIV;
+                    } else {
+                        $block = $buffer['ciphertext'];
+                        $xor = $des[0]->_processBlock($buffer['ciphertext'], CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $buffer['ciphertext'] = '';
+                    }
+                    $start = strlen($plaintext);
+                } else {
+                    $plaintext = '';
+                    $xor = $des[0]->_processBlock($this->decryptIV, CRYPT_DES_ENCRYPT);
+                    $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                    $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                    $start = 0;
+                }
+
+                for ($i = $start; $i < strlen($ciphertext); $i+=8) {
+                    $block = substr($ciphertext, $i, 8);
+                    $plaintext.= $block ^ $xor;
+                    if ($continuousBuffer && strlen($block) != 8) {
+                        $buffer['ciphertext'].= $block;
+                        $block = $xor;
+                    } else if (strlen($block) == 8) {
+                        $xor = $des[0]->_processBlock($block, CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                    }
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $block;
+                }
+                break;
+            case CRYPT_DES_MODE_OFB:
+                $xor = $this->decryptIV;
+                if (strlen($buffer['xor'])) {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $xor = $des[0]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $buffer['xor'].= $xor;
+                        $key = $this->_string_shift($buffer['xor'], 8);
+                        $plaintext.= substr($ciphertext, $i, 8) ^ $key;
+                    }
+                } else {
+                    for ($i = 0; $i < strlen($ciphertext); $i+=8) {
+                        $xor = $des[0]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $xor = $des[1]->_processBlock($xor, CRYPT_DES_DECRYPT);
+                        $xor = $des[2]->_processBlock($xor, CRYPT_DES_ENCRYPT);
+                        $plaintext.= substr($ciphertext, $i, 8) ^ $xor;
+                    }
+                    $key = $xor;
+                }
+                if ($this->continuousBuffer) {
+                    $this->decryptIV = $xor;
+                    if ($start = strlen($ciphertext) & 7) {
+                         $buffer['xor'] = substr($key, $start) . $buffer['xor'];
+                    }
+                }
+        }
+
+        return $this->paddable ? $this->_unpad($plaintext) : $plaintext;
+    }
+
+    /**
+     * Treat consecutive "packets" as if they are a continuous buffer.
+     *
+     * Say you have a 16-byte plaintext $plaintext.  Using the default behavior, the two following code snippets
+     * will yield different outputs:
+     *
+     * <code>
+     *    echo $des->encrypt(substr($plaintext, 0, 8));
+     *    echo $des->encrypt(substr($plaintext, 8, 8));
+     * </code>
+     * <code>
+     *    echo $des->encrypt($plaintext);
+     * </code>
+     *
+     * The solution is to enable the continuous buffer.  Although this will resolve the above discrepancy, it creates
+     * another, as demonstrated with the following:
+     *
+     * <code>
+     *    $des->encrypt(substr($plaintext, 0, 8));
+     *    echo $des->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     * <code>
+     *    echo $des->decrypt($des->encrypt(substr($plaintext, 8, 8)));
+     * </code>
+     *
+     * With the continuous buffer disabled, these would yield the same output.  With it enabled, they yield different
+     * outputs.  The reason is due to the fact that the initialization vector's change after every encryption /
+     * decryption round when the continuous buffer is enabled.  When it's disabled, they remain constant.
+     *
+     * Put another way, when the continuous buffer is enabled, the state of the Crypt_DES() object changes after each
+     * encryption / decryption round, whereas otherwise, it'd remain constant.  For this reason, it's recommended that
+     * continuous buffers not be used.  They do offer better security and are, in fact, sometimes required (SSH uses them),
+     * however, they are also less intuitive and more likely to cause you problems.
+     *
+     * @see Crypt_TripleDES::disableContinuousBuffer()
+     * @access public
+     */
+    function enableContinuousBuffer()
+    {
+        $this->continuousBuffer = true;
+        if ($this->mode == CRYPT_DES_MODE_3CBC) {
+            $this->des[0]->enableContinuousBuffer();
+            $this->des[1]->enableContinuousBuffer();
+            $this->des[2]->enableContinuousBuffer();
+        }
+    }
+
+    /**
+     * Treat consecutive packets as if they are a discontinuous buffer.
+     *
+     * The default behavior.
+     *
+     * @see Crypt_TripleDES::enableContinuousBuffer()
+     * @access public
+     */
+    function disableContinuousBuffer()
+    {
+        $this->continuousBuffer = false;
+        $this->encryptIV = $this->iv;
+        $this->decryptIV = $this->iv;
+        $this->enchanged = true;
+        $this->dechanged = true;
+        $this->enbuffer = array('encrypted' => '', 'xor' => '', 'pos' => 0, 'enmcrypt_init' => true);
+        $this->debuffer = array('ciphertext' => '', 'xor' => '', 'pos' => 0, 'demcrypt_init' => true);
+
+        if ($this->mode == CRYPT_DES_MODE_3CBC) {
+            $this->des[0]->disableContinuousBuffer();
+            $this->des[1]->disableContinuousBuffer();
+            $this->des[2]->disableContinuousBuffer();
+        }
+    }
+
+    /**
+     * Pad "packets".
+     *
+     * DES works by encrypting eight bytes at a time.  If you ever need to encrypt or decrypt something that's not
+     * a multiple of eight, it becomes necessary to pad the input so that it's length is a multiple of eight.
+     *
+     * Padding is enabled by default.  Sometimes, however, it is undesirable to pad strings.  Such is the case in SSH1,
+     * where "packets" are padded with random bytes before being encrypted.  Unpad these packets and you risk stripping
+     * away characters that shouldn't be stripped away. (SSH knows how many bytes are added because the length is
+     * transmitted separately)
+     *
+     * @see Crypt_TripleDES::disablePadding()
+     * @access public
+     */
+    function enablePadding()
+    {
+        $this->padding = true;
+    }
+
+    /**
+     * Do not pad packets.
+     *
+     * @see Crypt_TripleDES::enablePadding()
+     * @access public
+     */
+    function disablePadding()
+    {
+        $this->padding = false;
+    }
+
+    /**
+     * Pads a string
+     *
+     * Pads a string using the RSA PKCS padding standards so that its length is a multiple of the blocksize (8).
+     * 8 - (strlen($text) & 7) bytes are added, each of which is equal to chr(8 - (strlen($text) & 7)
+     *
+     * If padding is disabled and $text is not a multiple of the blocksize, the string will be padded regardless
+     * and padding will, hence forth, be enabled.
+     *
+     * @see Crypt_TripleDES::_unpad()
+     * @access private
+     */
+    function _pad($text)
+    {
+        $length = strlen($text);
+
+        if (!$this->padding) {
+            if (($length & 7) == 0) {
+                return $text;
+            } else {
+                user_error("The plaintext's length ($length) is not a multiple of the block size (8)", E_USER_NOTICE);
+                $this->padding = true;
+            }
+        }
+
+        $pad = 8 - ($length & 7);
+        return str_pad($text, $length + $pad, chr($pad));
+    }
+
+    /**
+     * Unpads a string
+     *
+     * If padding is enabled and the reported padding length is invalid the encryption key will be assumed to be wrong
+     * and false will be returned.
+     *
+     * @see Crypt_TripleDES::_pad()
+     * @access private
+     */
+    function _unpad($text)
+    {
+        if (!$this->padding) {
+            return $text;
+        }
+
+        $length = ord($text[strlen($text) - 1]);
+
+        if (!$length || $length > 8) {
+            return false;
+        }
+
+        return substr($text, 0, -$length);
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+}
+
+// vim: ts=4:sw=4:et:
+// vim6: fdl=1:
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/File/ANSI.php b/apps/files_external/3rdparty/phpseclib/phpseclib/File/ANSI.php
new file mode 100644
index 0000000000000000000000000000000000000000..29ad949e104061604c75a3c1ae91b134f12c4f56
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/File/ANSI.php
@@ -0,0 +1,540 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP ANSI Decoder
+ *
+ * PHP versions 4 and 5
+ *
+ * If you call read() in Net_SSH2 you may get {@link http://en.wikipedia.org/wiki/ANSI_escape_code ANSI escape codes} back.
+ * They'd look like chr(0x1B) . '[00m' or whatever (0x1B = ESC).  They tell a
+ * {@link http://en.wikipedia.org/wiki/Terminal_emulator terminal emulator} how to format the characters, what
+ * color to display them in, etc. File_ANSI is a {@link http://en.wikipedia.org/wiki/VT100 VT100} terminal emulator.
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   File
+ * @package    File_ANSI
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMXII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id$
+ * @link       htp://phpseclib.sourceforge.net
+ */
+
+/**
+ * Pure-PHP ANSI Decoder
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.3.0
+ * @access  public
+ * @package File_ANSI
+ */
+class File_ANSI {
+    /**
+     * Max Width
+     *
+     * @var Integer
+     * @access private
+     */
+    var $max_x;
+
+    /**
+     * Max Height
+     *
+     * @var Integer
+     * @access private
+     */
+    var $max_y;
+
+    /**
+     * Max History
+     *
+     * @var Integer
+     * @access private
+     */
+    var $max_history;
+
+    /**
+     * History
+     *
+     * @var Array
+     * @access private
+     */
+    var $history;
+
+    /**
+     * History Attributes
+     *
+     * @var Array
+     * @access private
+     */
+    var $history_attrs;
+
+    /**
+     * Current Column
+     *
+     * @var Integer
+     * @access private
+     */
+    var $x;
+
+    /**
+     * Current Row
+     *
+     * @var Integer
+     * @access private
+     */
+    var $y;
+
+    /**
+     * Old Column
+     *
+     * @var Integer
+     * @access private
+     */
+    var $old_x;
+
+    /**
+     * Old Row
+     *
+     * @var Integer
+     * @access private
+     */
+    var $old_y;
+
+    /**
+     * An empty attribute row
+     *
+     * @var Array
+     * @access private
+     */
+    var $attr_row;
+
+    /**
+     * The current screen text
+     *
+     * @var Array
+     * @access private
+     */
+    var $screen;
+
+    /**
+     * The current screen attributes
+     *
+     * @var Array
+     * @access private
+     */
+    var $attrs;
+
+    /**
+     * The current foreground color
+     *
+     * @var String
+     * @access private
+     */
+    var $foreground;
+
+    /**
+     * The current background color
+     *
+     * @var String
+     * @access private
+     */
+    var $background;
+
+    /**
+     * Bold flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $bold;
+
+    /**
+     * Underline flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $underline;
+
+    /**
+     * Blink flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $blink;
+
+    /**
+     * Reverse flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $reverse;
+
+    /**
+     * Color flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $color;
+
+    /**
+     * Current ANSI code
+     *
+     * @var String
+     * @access private
+     */
+    var $ansi;
+
+    /**
+     * Default Constructor.
+     *
+     * @return File_ANSI
+     * @access public
+     */
+    function File_ANSI()
+    {
+        $this->setHistory(200);
+        $this->setDimensions(80, 24);
+    }
+
+    /**
+     * Set terminal width and height
+     *
+     * Resets the screen as well
+     *
+     * @param Integer $x
+     * @param Integer $y
+     * @access public
+     */
+    function setDimensions($x, $y)
+    {
+        $this->max_x = $x - 1;
+        $this->max_y = $y - 1;
+        $this->x = $this->y = 0;
+        $this->history = $this->history_attrs = array();
+        $this->attr_row = array_fill(0, $this->max_x + 1, '');
+        $this->screen = array_fill(0, $this->max_y + 1, '');
+        $this->attrs = array_fill(0, $this->max_y + 1, $this->attr_row);
+        $this->foreground = 'white';
+        $this->background = 'black';
+        $this->bold = false;
+        $this->underline = false;
+        $this->blink = false;
+        $this->reverse = false;
+        $this->color = false;
+
+        $this->ansi = '';
+    }
+
+    /**
+     * Set the number of lines that should be logged past the terminal height
+     *
+     * @param Integer $x
+     * @param Integer $y
+     * @access public
+     */
+    function setHistory($history)
+    {
+        $this->max_history = $history;
+    }
+
+    /**
+     * Load a string
+     *
+     * @param String $source
+     * @access public
+     */
+    function loadString($source)
+    {
+        $this->setDimensions($this->max_x + 1, $this->max_y + 1);
+        $this->appendString($source);
+    }
+
+    /**
+     * Appdend a string
+     *
+     * @param String $source
+     * @access public
+     */
+    function appendString($source)
+    {
+        for ($i = 0; $i < strlen($source); $i++) {
+            if (strlen($this->ansi)) {
+                $this->ansi.= $source[$i];
+                $chr = ord($source[$i]);
+                // http://en.wikipedia.org/wiki/ANSI_escape_code#Sequence_elements
+                // single character CSI's not currently supported
+                switch (true) {
+                    case $this->ansi == "\x1B=":
+                        $this->ansi = '';
+                        continue 2;
+                    case strlen($this->ansi) == 2 && $chr >= 64 && $chr <= 95 && $chr != ord('['):
+                    case strlen($this->ansi) > 2 && $chr >= 64 && $chr <= 126:
+                        break;
+                    default:
+                        continue 2;
+                }
+                // http://ascii-table.com/ansi-escape-sequences-vt-100.php
+                switch ($this->ansi) {
+                    case "\x1B[H":
+                        $this->old_x = $this->x;
+                        $this->old_y = $this->y;
+                        $this->x = $this->y = 0;
+                        break;
+                    case "\x1B[J":
+                        $this->history = array_merge($this->history, array_slice(array_splice($this->screen, $this->y + 1), 0, $this->old_y));
+                        $this->screen = array_merge($this->screen, array_fill($this->y, $this->max_y, ''));
+
+                        $this->history_attrs = array_merge($this->history_attrs, array_slice(array_splice($this->attrs, $this->y + 1), 0, $this->old_y));
+                        $this->attrs = array_merge($this->attrs, array_fill($this->y, $this->max_y, $this->attr_row));
+
+                        if (count($this->history) == $this->max_history) {
+                            array_shift($this->history);
+                            array_shift($this->history_attrs);
+                        }
+                    case "\x1B[K":
+                        $this->screen[$this->y] = substr($this->screen[$this->y], 0, $this->x);
+
+                        array_splice($this->attrs[$this->y], $this->x + 1);
+                        break;
+                    case "\x1B[?1h": // set cursor key to application
+                        break;
+                    default:
+                        switch (true) {
+                            case preg_match('#\x1B\[(\d+);(\d+)H#', $this->ansi, $match):
+                                $this->old_x = $this->x;
+                                $this->old_y = $this->y;
+                                $this->x = $match[2] - 1;
+                                $this->y = $match[1] - 1;
+                                break;
+                            case preg_match('#\x1B\[(\d+)C#', $this->ansi, $match):
+                                $this->old_x = $this->x;
+                                $x = $match[1] - 1;
+                                break;
+                            case preg_match('#\x1B\[(\d+);(\d+)r#', $this->ansi, $match): // Set top and bottom lines of a window
+                                break;
+                            case preg_match('#\x1B\[(\d*(?:;\d*)*)m#', $this->ansi, $match):
+                                $mods = explode(';', $match[1]);
+                                foreach ($mods as $mod) {
+                                    switch ($mod) {
+                                        case 0:
+                                            $this->attrs[$this->y][$this->x] = '';
+
+                                            if ($this->bold) $this->attrs[$this->y][$this->x].= '</b>';
+                                            if ($this->underline) $this->attrs[$this->y][$this->x].= '</underline>';
+                                            if ($this->blink) $this->attrs[$this->y][$this->x].= '</blink>';
+                                            if ($this->color) $this->attrs[$this->y][$this->x].= '</span>';
+
+                                            if ($this->reverse) {
+                                                $temp = $this->background;
+                                                $this->background = $this->foreground;
+                                                $this->foreground = $temp;
+                                            }
+
+                                            $this->bold = $this->underline = $this->blink = $this->color = $this->reverse = false;
+                                            break;
+                                        case 1:
+                                            if (!$this->bold) {
+                                                $this->attrs[$this->y][$this->x] = '<b>';
+                                                $this->bold = true;
+                                            }
+                                            break;
+                                        case 4:
+                                            if (!$this->underline) {
+                                                $this->attrs[$this->y][$this->x] = '<u>';
+                                                $this->underline = true;
+                                            }
+                                            break;
+                                        case 5:
+                                            if (!$this->blink) {
+                                                $this->attrs[$this->y][$this->x] = '<blink>';
+                                                $this->blink = true;
+                                            }
+                                            break;
+                                        case 7:
+                                            $this->reverse = !$this->reverse;
+                                            $temp = $this->background;
+                                            $this->background = $this->foreground;
+                                            $this->foreground = $temp;
+                                            $this->attrs[$this->y][$this->x] = '<span style="color: ' . $this->foreground . '; background: ' . $this->background . '">';
+                                            if ($this->color) {
+                                                $this->attrs[$this->y][$this->x] = '</span>' . $this->attrs[$this->y][$this->x];
+                                            }
+                                            $this->color = true;
+                                            break;
+                                        default:
+                                            //$front = $this->reverse ? &$this->background : &$this->foreground;
+                                            $front = &$this->{ $this->reverse ? 'background' : 'foreground' };
+                                            //$back = $this->reverse ? &$this->foreground : &$this->background;
+                                            $back = &$this->{ $this->reverse ? 'foreground' : 'background' };
+                                            switch ($mod) {
+                                                case 30: $front = 'black'; break;
+                                                case 31: $front = 'red'; break;
+                                                case 32: $front = 'green'; break;
+                                                case 33: $front = 'yellow'; break;
+                                                case 34: $front = 'blue'; break;
+                                                case 35: $front = 'magenta'; break;
+                                                case 36: $front = 'cyan'; break;
+                                                case 37: $front = 'white'; break;
+
+                                                case 40: $back = 'black'; break;
+                                                case 41: $back = 'red'; break;
+                                                case 42: $back = 'green'; break;
+                                                case 43: $back = 'yellow'; break;
+                                                case 44: $back = 'blue'; break;
+                                                case 45: $back = 'magenta'; break;
+                                                case 46: $back = 'cyan'; break;
+                                                case 47: $back = 'white'; break;
+
+                                                default:
+                                                    user_error('Unsupported attribute: ' . $mod);
+                                                    $this->ansi = '';
+                                                    break 2;
+                                            }
+
+                                            unset($temp);
+                                            $this->attrs[$this->y][$this->x] = '<span style="color: ' . $this->foreground . '; background: ' . $this->background . '">';
+                                            if ($this->color) {
+                                                $this->attrs[$this->y][$this->x] = '</span>' . $this->attrs[$this->y][$this->x];
+                                            }
+                                            $this->color = true;
+                                    }
+                                }
+                                break;
+                            default:
+                                echo "{$this->ansi} unsupported\r\n";
+                        }
+                }
+                $this->ansi = '';
+                continue;
+            }
+
+            switch ($source[$i]) {
+                case "\r":
+                    $this->x = 0;
+                    break;
+                case "\n":
+                    //if ($this->y < $this->max_y) {
+                    //    $this->y++;
+                    //}
+
+                    while ($this->y >= $this->max_y) {
+                        $this->history = array_merge($this->history, array(array_shift($this->screen)));
+                        $this->screen[] = '';
+
+                        $this->history_attrs = array_merge($this->history_attrs, array(array_shift($this->attrs)));
+                        $this->attrs[] = $this->attr_row;
+
+                        if (count($this->history) >= $this->max_history) {
+                            array_shift($this->history);
+                            array_shift($this->history_attrs);
+                        }
+
+                        $this->y--;
+                    }
+                    $this->y++;
+                    break;
+                case "\x0F": // shift
+                    break;
+                case "\x1B": // start ANSI escape code
+                    $this->ansi.= "\x1B";
+                    break;
+                default:
+                    $this->screen[$this->y] = substr_replace(
+                        $this->screen[$this->y],
+                        $source[$i],
+                        $this->x,
+                        1
+                    );
+
+                    if ($this->x > $this->max_x) {
+                        $this->x = 0;
+                        $this->y++;
+                    } else {
+                        $this->x++;
+                    }
+            }
+        }
+    }
+
+    /**
+     * Returns the current screen without preformating
+     *
+     * @access private
+     * @return String
+     */
+    function _getScreen()
+    {
+        $output = '';
+        for ($i = 0; $i <= $this->max_y; $i++) {
+            for ($j = 0; $j <= $this->max_x + 1; $j++) {
+                if (isset($this->attrs[$i][$j])) {
+                    $output.= $this->attrs[$i][$j];
+                }
+                if (isset($this->screen[$i][$j])) {
+                    $output.= htmlspecialchars($this->screen[$i][$j]);
+                }
+            }
+            $output.= "\r\n";
+        }
+        return rtrim($output);
+    }
+
+    /**
+     * Returns the current screen
+     *
+     * @access public
+     * @return String
+     */
+    function getScreen()
+    {
+        return '<pre style="color: white; background: black" width="' . ($this->max_x + 1) . '">' . $this->_getScreen() . '</pre>';
+    }
+
+    /**
+     * Returns the current screen and the x previous lines
+     *
+     * @access public
+     * @return String
+     */
+    function getHistory()
+    {
+        $scrollback = '';
+        for ($i = 0; $i < count($this->history); $i++) {
+            for ($j = 0; $j <= $this->max_x + 1; $j++) {
+                if (isset($this->history_attrs[$i][$j])) {
+                    $scrollback.= $this->history_attrs[$i][$j];
+                }
+                if (isset($this->history[$i][$j])) {
+                    $scrollback.= htmlspecialchars($this->history[$i][$j]);
+                }
+            }
+            $scrollback.= "\r\n";
+        }
+        $scrollback.= $this->_getScreen();
+
+        return '<pre style="color: white; background: black" width="' . ($this->max_x + 1) . '">' . $scrollback . '</pre>';
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/File/ASN1.php b/apps/files_external/3rdparty/phpseclib/phpseclib/File/ASN1.php
new file mode 100644
index 0000000000000000000000000000000000000000..766c6e7ebf448f14abcb4c471191fd7018acbb58
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/File/ASN1.php
@@ -0,0 +1,1277 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP ASN.1 Parser
+ *
+ * PHP versions 4 and 5
+ *
+ * ASN.1 provides the semantics for data encoded using various schemes.  The most commonly
+ * utilized scheme is DER or the "Distinguished Encoding Rules".  PEM's are base64 encoded
+ * DER blobs.
+ *
+ * File_ASN1 decodes and encodes DER formatted messages and places them in a semantic context.
+ *
+ * Uses the 1988 ASN.1 syntax.
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   File
+ * @package    File_ASN1
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMXII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id$
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Math_BigInteger
+ */
+if (!class_exists('Math_BigInteger')) {
+    require_once('Math/BigInteger.php');
+}
+
+/**#@+
+ * Tag Classes
+ *
+ * @access private
+ * @link http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#page=12
+ */
+define('FILE_ASN1_CLASS_UNIVERSAL',        0);
+define('FILE_ASN1_CLASS_APPLICATION',      1);
+define('FILE_ASN1_CLASS_CONTEXT_SPECIFIC', 2);
+define('FILE_ASN1_CLASS_PRIVATE',          3);
+/**#@-*/
+
+/**#@+
+ * Tag Classes
+ *
+ * @access private
+ * @link http://www.obj-sys.com/asn1tutorial/node124.html
+ */
+define('FILE_ASN1_TYPE_BOOLEAN',          1);
+define('FILE_ASN1_TYPE_INTEGER',          2);
+define('FILE_ASN1_TYPE_BIT_STRING',       3);
+define('FILE_ASN1_TYPE_OCTET_STRING',     4);
+define('FILE_ASN1_TYPE_NULL',             5);
+define('FILE_ASN1_TYPE_OBJECT_IDENTIFIER',6);
+//define('FILE_ASN1_TYPE_OBJECT_DESCRIPTOR',7);
+//define('FILE_ASN1_TYPE_INSTANCE_OF',      8); // EXTERNAL
+define('FILE_ASN1_TYPE_REAL',             9);
+define('FILE_ASN1_TYPE_ENUMERATED',      10);
+//define('FILE_ASN1_TYPE_EMBEDDED',        11);
+define('FILE_ASN1_TYPE_UTF8_STRING',     12);
+//define('FILE_ASN1_TYPE_RELATIVE_OID',    13);
+define('FILE_ASN1_TYPE_SEQUENCE',        16); // SEQUENCE OF
+define('FILE_ASN1_TYPE_SET',             17); // SET OF
+/**#@-*/
+/**#@+
+ * More Tag Classes
+ *
+ * @access private
+ * @link http://www.obj-sys.com/asn1tutorial/node10.html
+ */
+define('FILE_ASN1_TYPE_NUMERIC_STRING',  18);
+define('FILE_ASN1_TYPE_PRINTABLE_STRING',19);
+define('FILE_ASN1_TYPE_TELETEX_STRING',  20); // T61String
+define('FILE_ASN1_TYPE_VIDEOTEX_STRING', 21);
+define('FILE_ASN1_TYPE_IA5_STRING',      22);
+define('FILE_ASN1_TYPE_UTC_TIME',        23);
+define('FILE_ASN1_TYPE_GENERALIZED_TIME',24);
+define('FILE_ASN1_TYPE_GRAPHIC_STRING',  25);
+define('FILE_ASN1_TYPE_VISIBLE_STRING',  26); // ISO646String
+define('FILE_ASN1_TYPE_GENERAL_STRING',  27);
+define('FILE_ASN1_TYPE_UNIVERSAL_STRING',28);
+//define('FILE_ASN1_TYPE_CHARACTER_STRING',29);
+define('FILE_ASN1_TYPE_BMP_STRING',      30);
+/**#@-*/
+
+/**#@+
+ * Tag Aliases
+ *
+ * These tags are kinda place holders for other tags.
+ *
+ * @access private
+ */
+define('FILE_ASN1_TYPE_CHOICE',          -1);
+define('FILE_ASN1_TYPE_ANY',             -2);
+/**#@-*/
+
+/**
+ * ASN.1 Element
+ *
+ * Bypass normal encoding rules in File_ASN1::encodeDER()
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.3.0
+ * @access  public
+ * @package File_ASN1
+ */
+class File_ASN1_Element {
+    /**
+     * Raw element value
+     *
+     * @var String
+     * @access private
+     */
+    var $element;
+
+    /**
+     * Constructor
+     *
+     * @param String $encoded
+     * @return File_ASN1_Element
+     * @access public
+     */
+    function File_ASN1_Element($encoded)
+    {
+        $this->element = $encoded;
+    }
+}
+
+/**
+ * Pure-PHP ASN.1 Parser
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.3.0
+ * @access  public
+ * @package File_ASN1
+ */
+class File_ASN1 {
+    /**
+     * ASN.1 object identifier
+     *
+     * @var Array
+     * @access private
+     * @link http://en.wikipedia.org/wiki/Object_identifier
+     */
+    var $oids = array();
+
+    /**
+     * Default date format
+     *
+     * @var String
+     * @access private
+     * @link http://php.net/class.datetime
+     */
+    var $format = 'D, d M y H:i:s O';
+
+    /**
+     * Default date format
+     *
+     * @var Array
+     * @access private
+     * @see File_ASN1::setTimeFormat()
+     * @see File_ASN1::asn1map()
+     * @link http://php.net/class.datetime
+     */
+    var $encoded;
+
+    /**
+     * Filters
+     *
+     * If the mapping type is FILE_ASN1_TYPE_ANY what do we actually encode it as?
+     *
+     * @var Array
+     * @access private
+     * @see File_ASN1::_encode_der()
+     */
+    var $filters;
+
+    /**
+     * Type mapping table for the ANY type.
+     *
+     * Structured or unknown types are mapped to a FILE_ASN1_Element.
+     * Unambiguous types get the direct mapping (int/real/bool).
+     * Others are mapped as a choice, with an extra indexing level.
+     *
+     * @var Array
+     * @access public
+     */
+    var $ANYmap = array(
+        FILE_ASN1_TYPE_BOOLEAN              => true,
+        FILE_ASN1_TYPE_INTEGER              => true,
+        FILE_ASN1_TYPE_BIT_STRING           => 'bitString',
+        FILE_ASN1_TYPE_OCTET_STRING         => 'octetString',
+        FILE_ASN1_TYPE_NULL                 => 'null',
+        FILE_ASN1_TYPE_OBJECT_IDENTIFIER    => 'objectIdentifier',
+        FILE_ASN1_TYPE_REAL                 => true,
+        FILE_ASN1_TYPE_ENUMERATED           => 'enumerated',
+        FILE_ASN1_TYPE_UTF8_STRING          => 'utf8String',
+        FILE_ASN1_TYPE_NUMERIC_STRING       => 'numericString',
+        FILE_ASN1_TYPE_PRINTABLE_STRING     => 'printableString',
+        FILE_ASN1_TYPE_TELETEX_STRING       => 'teletexString',
+        FILE_ASN1_TYPE_VIDEOTEX_STRING      => 'videotexString',
+        FILE_ASN1_TYPE_IA5_STRING           => 'ia5String',
+        FILE_ASN1_TYPE_UTC_TIME             => 'utcTime',
+        FILE_ASN1_TYPE_GENERALIZED_TIME     => 'generalTime',
+        FILE_ASN1_TYPE_GRAPHIC_STRING       => 'graphicString',
+        FILE_ASN1_TYPE_VISIBLE_STRING       => 'visibleString',
+        FILE_ASN1_TYPE_GENERAL_STRING       => 'generalString',
+        FILE_ASN1_TYPE_UNIVERSAL_STRING     => 'universalString',
+        //FILE_ASN1_TYPE_CHARACTER_STRING     => 'characterString',
+        FILE_ASN1_TYPE_BMP_STRING           => 'bmpString'
+    );
+
+    /**
+     * String type to character size mapping table.
+     *
+     * Non-convertable types are absent from this table.
+     * size == 0 indicates variable length encoding.
+     *
+     * @var Array
+     * @access public
+     */
+    var $stringTypeSize = array(
+        FILE_ASN1_TYPE_UTF8_STRING      => 0,
+        FILE_ASN1_TYPE_BMP_STRING       => 2,
+        FILE_ASN1_TYPE_UNIVERSAL_STRING => 4,
+        FILE_ASN1_TYPE_PRINTABLE_STRING => 1,
+        FILE_ASN1_TYPE_TELETEX_STRING   => 1,
+        FILE_ASN1_TYPE_IA5_STRING       => 1,
+        FILE_ASN1_TYPE_VISIBLE_STRING   => 1,
+    );
+
+    /**
+     * Parse BER-encoding
+     *
+     * Serves a similar purpose to openssl's asn1parse
+     *
+     * @param String $encoded
+     * @return Array
+     * @access public
+     */
+    function decodeBER($encoded)
+    {
+        if (is_object($encoded) && strtolower(get_class($encoded)) == 'file_asn1_element') {
+            $encoded = $encoded->element;
+        }
+
+        $this->encoded = $encoded;
+        return $this->_decode_ber($encoded);
+    }
+
+    /**
+     * Parse BER-encoding (Helper function)
+     *
+     * Sometimes we want to get the BER encoding of a particular tag.  $start lets us do that without having to reencode.
+     * $encoded is passed by reference for the recursive calls done for FILE_ASN1_TYPE_BIT_STRING and
+     * FILE_ASN1_TYPE_OCTET_STRING. In those cases, the indefinite length is used.
+     *
+     * @param String $encoded
+     * @param Integer $start
+     * @return Array
+     * @access private
+     */
+    function _decode_ber(&$encoded, $start = 0)
+    {
+        $decoded = array();
+
+        while ( strlen($encoded) ) {
+            $current = array('start' => $start);
+
+            $type = ord($this->_string_shift($encoded));
+            $start++;
+
+            $constructed = ($type >> 5) & 1;
+
+            $tag = $type & 0x1F;
+            if ($tag == 0x1F) {
+                $tag = 0;
+                // process septets (since the eighth bit is ignored, it's not an octet)
+                do {
+                    $loop = ord($encoded[0]) >> 7;
+                    $tag <<= 7;
+                    $tag |= ord($this->_string_shift($encoded)) & 0x7F;
+                    $start++;
+                } while ( $loop );
+            }
+
+            // Length, as discussed in � 8.1.3 of X.690-0207.pdf#page=13
+            $length = ord($this->_string_shift($encoded));
+            $start++;
+            if ( $length == 0x80 ) { // indefinite length
+                // "[A sender shall] use the indefinite form (see 8.1.3.6) if the encoding is constructed and is not all 
+                //  immediately available." -- � 8.1.3.2.c
+                //if ( !$constructed ) {
+                //    return false;
+                //}
+                $length = strlen($encoded);
+            } elseif ( $length & 0x80 ) { // definite length, long form
+                // technically, the long form of the length can be represented by up to 126 octets (bytes), but we'll only
+                // support it up to four.
+                $length&= 0x7F;
+                $temp = $this->_string_shift($encoded, $length);
+                $start+= $length;
+                extract(unpack('Nlength', substr(str_pad($temp, 4, chr(0), STR_PAD_LEFT), -4)));
+            }
+
+            // End-of-content, see �� 8.1.1.3, 8.1.3.2, 8.1.3.6, 8.1.5, and (for an example) 8.6.4.2
+            if (!$type && !$length) {
+                return $decoded;
+            }
+            $content = $this->_string_shift($encoded, $length);
+
+            /* Class is UNIVERSAL, APPLICATION, PRIVATE, or CONTEXT-SPECIFIC. The UNIVERSAL class is restricted to the ASN.1
+               built-in types. It defines an application-independent data type that must be distinguishable from all other
+               data types. The other three classes are user defined. The APPLICATION class distinguishes data types that
+               have a wide, scattered use within a particular presentation context. PRIVATE distinguishes data types within
+               a particular organization or country. CONTEXT-SPECIFIC distinguishes members of a sequence or set, the
+               alternatives of a CHOICE, or universally tagged set members. Only the class number appears in braces for this
+               data type; the term CONTEXT-SPECIFIC does not appear.
+
+                 -- http://www.obj-sys.com/asn1tutorial/node12.html */
+            $class = ($type >> 6) & 3;
+            switch ($class) {
+                case FILE_ASN1_CLASS_APPLICATION:
+                case FILE_ASN1_CLASS_PRIVATE:
+                case FILE_ASN1_CLASS_CONTEXT_SPECIFIC:
+                    $decoded[] = array(
+                        'type'     => $class,
+                        'constant' => $tag,
+                        'content'  => $constructed ? $this->_decode_ber($content, $start) : $content,
+                        'length'   => $length + $start - $current['start']
+                    ) + $current;
+                    continue 2;
+            }
+
+            $current+= array('type' => $tag);
+
+            // decode UNIVERSAL tags
+            switch ($tag) {
+                case FILE_ASN1_TYPE_BOOLEAN:
+                    // "The contents octets shall consist of a single octet." -- � 8.2.1
+                    //if (strlen($content) != 1) {
+                    //    return false;
+                    //}
+                    $current['content'] = (bool) ord($content[0]);
+                    break;
+                case FILE_ASN1_TYPE_INTEGER:
+                case FILE_ASN1_TYPE_ENUMERATED:
+                    $current['content'] = new Math_BigInteger($content, -256);
+                    break;
+                case FILE_ASN1_TYPE_REAL: // not currently supported
+                    return false;
+                case FILE_ASN1_TYPE_BIT_STRING:
+                    // The initial octet shall encode, as an unsigned binary integer with bit 1 as the least significant bit,
+                    // the number of unused bits in the final subsequent octet. The number shall be in the range zero to
+                    // seven.
+                    if (!$constructed) {
+                        $current['content'] = $content;
+                    } else {
+                        $temp = $this->_decode_ber($content, $start);
+                        $length-= strlen($content);
+                        $last = count($temp) - 1;
+                        for ($i = 0; $i < $last; $i++) {
+                            // all subtags should be bit strings
+                            //if ($temp[$i]['type'] != FILE_ASN1_TYPE_BIT_STRING) {
+                            //    return false;
+                            //}
+                            $current['content'].= substr($temp[$i]['content'], 1);
+                        }
+                        // all subtags should be bit strings
+                        //if ($temp[$last]['type'] != FILE_ASN1_TYPE_BIT_STRING) {
+                        //    return false;
+                        //}
+                        $current['content'] = $temp[$last]['content'][0] . $current['content'] . substr($temp[$i]['content'], 1);
+                    }
+                    break;
+                case FILE_ASN1_TYPE_OCTET_STRING:
+                    if (!$constructed) {
+                        $current['content'] = $content;
+                    } else {
+                        $temp = $this->_decode_ber($content, $start);
+                        $length-= strlen($content);
+                        for ($i = 0, $size = count($temp); $i < $size; $i++) {
+                            // all subtags should be octet strings
+                            //if ($temp[$i]['type'] != FILE_ASN1_TYPE_OCTET_STRING) {
+                            //    return false;
+                            //}
+                            $current['content'].= $temp[$i]['content'];
+                        }
+                        // $length = 
+                    }
+                    break;
+                case FILE_ASN1_TYPE_NULL:
+                    // "The contents octets shall not contain any octets." -- � 8.8.2
+                    //if (strlen($content)) {
+                    //    return false;
+                    //}
+                    break;
+                case FILE_ASN1_TYPE_SEQUENCE:
+                case FILE_ASN1_TYPE_SET:
+                    $current['content'] = $this->_decode_ber($content, $start);
+                    break;
+                case FILE_ASN1_TYPE_OBJECT_IDENTIFIER:
+                    $temp = ord($this->_string_shift($content));
+                    $current['content'] = sprintf('%d.%d', floor($temp / 40), $temp % 40);
+                    $valuen = 0;
+                    // process septets
+                    while (strlen($content)) {
+                        $temp = ord($this->_string_shift($content));
+                        $valuen <<= 7;
+                        $valuen |= $temp & 0x7F;
+                        if (~$temp & 0x80) {
+                            $current['content'].= ".$valuen";
+                            $valuen = 0;
+                        }
+                    }
+                    // the eighth bit of the last byte should not be 1
+                    //if ($temp >> 7) {
+                    //    return false;
+                    //}
+                    break;
+                /* Each character string type shall be encoded as if it had been declared:
+                   [UNIVERSAL x] IMPLICIT OCTET STRING
+
+                     -- X.690-0207.pdf#page=23 (� 8.21.3)
+
+                   Per that, we're not going to do any validation.  If there are any illegal characters in the string, 
+                   we don't really care */
+                case FILE_ASN1_TYPE_NUMERIC_STRING:
+                    // 0,1,2,3,4,5,6,7,8,9, and space
+                case FILE_ASN1_TYPE_PRINTABLE_STRING:
+                    // Upper and lower case letters, digits, space, apostrophe, left/right parenthesis, plus sign, comma,
+                    // hyphen, full stop, solidus, colon, equal sign, question mark
+                case FILE_ASN1_TYPE_TELETEX_STRING:
+                    // The Teletex character set in CCITT's T61, space, and delete
+                    // see http://en.wikipedia.org/wiki/Teletex#Character_sets
+                case FILE_ASN1_TYPE_VIDEOTEX_STRING:
+                    // The Videotex character set in CCITT's T.100 and T.101, space, and delete
+                case FILE_ASN1_TYPE_VISIBLE_STRING:
+                    // Printing character sets of international ASCII, and space
+                case FILE_ASN1_TYPE_IA5_STRING:
+                    // International Alphabet 5 (International ASCII)
+                case FILE_ASN1_TYPE_GRAPHIC_STRING:
+                    // All registered G sets, and space
+                case FILE_ASN1_TYPE_GENERAL_STRING:
+                    // All registered C and G sets, space and delete
+                case FILE_ASN1_TYPE_UTF8_STRING:
+                    // ????
+                case FILE_ASN1_TYPE_BMP_STRING:
+                    $current['content'] = $content;
+                    break;
+                case FILE_ASN1_TYPE_UTC_TIME:
+                case FILE_ASN1_TYPE_GENERALIZED_TIME:
+                    $current['content'] = $this->_decodeTime($content, $tag);
+                default:
+
+            }
+
+            $start+= $length;
+            $decoded[] = $current + array('length' => $start - $current['start']);
+        }
+
+        return $decoded;
+    }
+
+    /**
+     * ASN.1 Decode
+     *
+     * Provides an ASN.1 semantic mapping ($mapping) from a parsed BER-encoding to a human readable format.
+     *
+     * @param Array $decoded
+     * @param Array $mapping
+     * @return Array
+     * @access public
+     */
+    function asn1map($decoded, $mapping)
+    {
+        if (isset($mapping['explicit'])) {
+            $decoded = $decoded['content'][0];
+        }
+
+        switch (true) {
+            case $mapping['type'] == FILE_ASN1_TYPE_ANY:
+                $intype = $decoded['type'];
+                if (isset($decoded['constant']) || !isset($this->ANYmap[$intype]) || ($this->encoded[$decoded['start']] & 0x20)) {
+                    return new File_ASN1_Element(substr($this->encoded, $decoded['start'], $decoded['length']));
+                }
+                $inmap = $this->ANYmap[$intype];
+                if (is_string($inmap)) {
+                    return array($inmap => $this->asn1map($decoded, array('type' => $intype) + $mapping));
+                }
+                break;
+            case $mapping['type'] == FILE_ASN1_TYPE_CHOICE:
+                foreach ($mapping['children'] as $key => $option) {
+                    switch (true) {
+                        case isset($option['constant']) && $option['constant'] == $decoded['constant']:
+                        case !isset($option['constant']) && $option['type'] == $decoded['type']:
+                            $value = $this->asn1map($decoded, $option);
+                            break;
+                        case !isset($option['constant']) && $option['type'] == FILE_ASN1_TYPE_CHOICE:
+                            $v = $this->asn1map($decoded, $option);
+                            if (isset($v)) {
+                                $value = $v;
+                            }
+                    }
+                    if (isset($value)) {
+                        return array($key => $value);
+                    }
+                }
+                return NULL;
+            case isset($mapping['implicit']):
+            case isset($mapping['explicit']):
+            case $decoded['type'] == $mapping['type']:
+                break;
+            default:
+                return NULL;
+        }
+
+        if (isset($mapping['implicit'])) {
+            $decoded['type'] = $mapping['type'];
+        }
+
+        switch ($decoded['type']) {
+            case FILE_ASN1_TYPE_SEQUENCE:
+                $map = array();
+
+                // ignore the min and max
+                if (isset($mapping['min']) && isset($mapping['max'])) {
+                    $child = $mapping['children'];
+                    foreach ($decoded['content'] as $content) {
+                        if (($map[] = $this->asn1map($content, $child)) === NULL) {
+                            return NULL;
+                        }
+                    }
+
+                    return $map;
+                }
+
+                $n = count($decoded['content']);
+                $i = 0;
+
+                foreach ($mapping['children'] as $key => $child) {
+                    $maymatch = $i < $n; // Match only existing input.
+                    if ($maymatch) {
+                        $temp = $decoded['content'][$i];
+
+                        if ($child['type'] != FILE_ASN1_TYPE_CHOICE) {
+                            // Get the mapping and input class & constant.
+                            $childClass = $tempClass = FILE_ASN1_CLASS_UNIVERSAL;
+                            $constant = NULL;
+                            if (isset($temp['constant'])) {
+                                $tempClass = isset($temp['class']) ? $temp['class'] : FILE_ASN1_CLASS_CONTEXT_SPECIFIC;
+                            }
+                            if (isset($child['class'])) {
+                                $childClass = $child['class'];
+                                $constant = $child['cast'];
+                            }
+                            elseif (isset($child['constant'])) {
+                                $childClass = FILE_ASN1_CLASS_CONTEXT_SPECIFIC;
+                                $constant = $child['constant'];
+                            }
+
+                            if (isset($constant) && isset($temp['constant'])) {
+                                // Can only match if constants and class match.
+                                $maymatch = $constant == $temp['constant'] && $childClass == $tempClass;
+                            } else {
+                                // Can only match if no constant expected and type matches or is generic.
+                                $maymatch = !isset($child['constant']) && array_search($child['type'], array($temp['type'], FILE_ASN1_TYPE_ANY, FILE_ASN1_TYPE_CHOICE)) !== false;
+                            }
+                        }
+                    }
+
+                    if ($maymatch) {
+                        // Attempt submapping.
+                        $candidate = $this->asn1map($temp, $child);
+                        $maymatch = $candidate !== NULL;
+                    }
+
+                    if ($maymatch) {
+                        // Got the match: use it.
+                        $map[$key] = $candidate;
+                        $i++;
+                    } elseif (isset($child['default'])) {
+                        $map[$key] = $child['default']; // Use default.
+                    } elseif (!isset($child['optional'])) {
+                        return NULL; // Syntax error.
+                    }
+                }
+
+                // Fail mapping if all input items have not been consumed.
+                return $i < $n? NULL: $map;
+
+            // the main diff between sets and sequences is the encapsulation of the foreach in another for loop
+            case FILE_ASN1_TYPE_SET:
+                $map = array();
+
+                // ignore the min and max
+                if (isset($mapping['min']) && isset($mapping['max'])) {
+                    $child = $mapping['children'];
+                    foreach ($decoded['content'] as $content) {
+                        if (($map[] = $this->asn1map($content, $child)) === NULL) {
+                            return NULL;
+                        }
+                    }
+
+                    return $map;
+                }
+
+                for ($i = 0; $i < count($decoded['content']); $i++) {
+                    $temp = $decoded['content'][$i];
+                    $tempClass = FILE_ASN1_CLASS_UNIVERSAL;
+                    if (isset($temp['constant'])) {
+                        $tempClass = isset($temp['class']) ? $temp['class'] : FILE_ASN1_CLASS_CONTEXT_SPECIFIC;
+                    }
+
+                    foreach ($mapping['children'] as $key => $child) {
+                        if (isset($map[$key])) {
+                            continue;
+                        }
+                        $maymatch = true;
+                        if ($child['type'] != FILE_ASN1_TYPE_CHOICE) {
+                            $childClass = FILE_ASN1_CLASS_UNIVERSAL;
+                            $constant = NULL;
+                            if (isset($child['class'])) {
+                                $childClass = $child['class'];
+                                $constant = $child['cast'];
+                            }
+                            elseif (isset($child['constant'])) {
+                                $childClass = FILE_ASN1_CLASS_CONTEXT_SPECIFIC;
+                                $constant = $child['constant'];
+                            }
+
+                            if (isset($constant) && isset($temp['constant'])) {
+                                // Can only match if constants and class match.
+                                $maymatch = $constant == $temp['constant'] && $childClass == $tempClass;
+                            } else {
+                                // Can only match if no constant expected and type matches or is generic.
+                                $maymatch = !isset($child['constant']) && array_search($child['type'], array($temp['type'], FILE_ASN1_TYPE_ANY, FILE_ASN1_TYPE_CHOICE)) !== false;
+                            }
+                        }
+
+                        if ($maymatch) {
+                            // Attempt submapping.
+                            $candidate = $this->asn1map($temp, $child);
+                            $maymatch = $candidate !== NULL;
+                        }
+
+                        if (!$maymatch) {
+                            break;
+                        }
+
+                        // Got the match: use it.
+                        $map[$key] = $candidate;
+                        break;
+                    }
+                }
+
+                foreach ($mapping['children'] as $key => $child) {
+                    if (!isset($map[$key])) {
+                        if (isset($child['default'])) {
+                            $map[$key] = $child['default'];
+                        } elseif (!isset($child['optional'])) {
+                            return NULL;
+                        }
+                    }
+                }
+                return $map;
+            case FILE_ASN1_TYPE_OBJECT_IDENTIFIER:
+                return isset($this->oids[$decoded['content']]) ? $this->oids[$decoded['content']] : $decoded['content'];
+            case FILE_ASN1_TYPE_UTC_TIME:
+            case FILE_ASN1_TYPE_GENERALIZED_TIME:
+                if (isset($mapping['implicit'])) {
+                    $decoded['content'] = $this->_decodeTime($decoded['content'], $decoded['type']);
+                }
+                return @date($this->format, $decoded['content']);
+            case FILE_ASN1_TYPE_BIT_STRING:
+                if (isset($mapping['mapping'])) {
+                    $offset = ord($decoded['content'][0]);
+                    $size = (strlen($decoded['content']) - 1) * 8 - $offset;
+                    /*
+                       From X.680-0207.pdf#page=46 (21.7):
+
+                       "When a "NamedBitList" is used in defining a bitstring type ASN.1 encoding rules are free to add (or remove)
+                        arbitrarily any trailing 0 bits to (or from) values that are being encoded or decoded. Application designers should
+                        therefore ensure that different semantics are not associated with such values which differ only in the number of trailing
+                        0 bits."
+                    */
+                    $bits = count($mapping['mapping']) == $size ? array() : array_fill(0, count($mapping['mapping']) - $size, false);
+                    for ($i = strlen($decoded['content']) - 1; $i > 0; $i--) {
+                        $current = ord($decoded['content'][$i]);
+                        for ($j = $offset; $j < 8; $j++) {
+                            $bits[] = (bool) ($current & (1 << $j));
+                        }
+                        $offset = 0;
+                    }
+                    $values = array();
+                    $map = array_reverse($mapping['mapping']);
+                    foreach ($map as $i => $value) {
+                        if ($bits[$i]) {
+                            $values[] = $value;
+                        }
+                    }
+                    return $values;
+                }
+            case FILE_ASN1_TYPE_OCTET_STRING:
+                return base64_encode($decoded['content']);
+            case FILE_ASN1_TYPE_NULL:
+                return '';
+            case FILE_ASN1_TYPE_BOOLEAN:
+                return $decoded['content'];
+            case FILE_ASN1_TYPE_NUMERIC_STRING:
+            case FILE_ASN1_TYPE_PRINTABLE_STRING:
+            case FILE_ASN1_TYPE_TELETEX_STRING:
+            case FILE_ASN1_TYPE_VIDEOTEX_STRING:
+            case FILE_ASN1_TYPE_IA5_STRING:
+            case FILE_ASN1_TYPE_GRAPHIC_STRING:
+            case FILE_ASN1_TYPE_VISIBLE_STRING:
+            case FILE_ASN1_TYPE_GENERAL_STRING:
+            case FILE_ASN1_TYPE_UNIVERSAL_STRING:
+            case FILE_ASN1_TYPE_UTF8_STRING:
+            case FILE_ASN1_TYPE_BMP_STRING:
+                return $decoded['content'];
+            case FILE_ASN1_TYPE_INTEGER:
+            case FILE_ASN1_TYPE_ENUMERATED:
+                $temp = $decoded['content'];
+                if (isset($mapping['implicit'])) {
+                    $temp = new Math_BigInteger($decoded['content'], -256);
+                }
+                if (isset($mapping['mapping'])) {
+                    $temp = (int) $temp->toString();
+                    return isset($mapping['mapping'][$temp]) ?
+                        $mapping['mapping'][$temp] :
+                        false;
+                }
+                return $temp;
+        }
+    }
+
+    /**
+     * ASN.1 Encode
+     *
+     * DER-encodes an ASN.1 semantic mapping ($mapping).  Some libraries would probably call this function
+     * an ASN.1 compiler.
+     *
+     * @param String $source
+     * @param String $mapping
+     * @param Integer $idx
+     * @return String
+     * @access public
+     */
+    function encodeDER($source, $mapping)
+    {
+        $this->location = array();
+        return $this->_encode_der($source, $mapping);
+    }
+
+    /**
+     * ASN.1 Encode (Helper function)
+     *
+     * @param String $source
+     * @param String $mapping
+     * @param Integer $idx
+     * @return String
+     * @access private
+     */
+    function _encode_der($source, $mapping, $idx = NULL)
+    {
+        if (is_object($source) && strtolower(get_class($source)) == 'file_asn1_element') {
+            return $source->element;
+        }
+
+        // do not encode (implicitly optional) fields with value set to default
+        if (isset($mapping['default']) && $source === $mapping['default']) {
+            return '';
+        }
+
+        if (isset($idx)) {
+            $this->location[] = $idx;
+        }
+
+        $tag = $mapping['type'];
+
+        switch ($tag) {
+            case FILE_ASN1_TYPE_SET:    // Children order is not important, thus process in sequence.
+            case FILE_ASN1_TYPE_SEQUENCE:
+                $tag|= 0x20; // set the constructed bit
+                $value = '';
+
+                // ignore the min and max
+                if (isset($mapping['min']) && isset($mapping['max'])) {
+                    $child = $mapping['children'];
+
+                    foreach ($source as $content) {
+                        $temp = $this->_encode_der($content, $child);
+                        if ($temp === false) {
+                            return false;
+                        }
+                        $value.= $temp;
+                    }
+                    break;
+                }
+
+                foreach ($mapping['children'] as $key => $child) {
+                    if (!isset($source[$key])) {
+                        if (!isset($child['optional'])) {
+                            return false;
+                        }
+                        continue;
+                    }
+
+                    $temp = $this->_encode_der($source[$key], $child, $key);
+                    if ($temp === false) {
+                        return false;
+                    }
+
+                    // An empty child encoding means it has been optimized out.
+                    // Else we should have at least one tag byte.
+                    if ($temp === '') {
+                        continue;
+                    }
+
+                    // if isset($child['constant']) is true then isset($child['optional']) should be true as well
+                    if (isset($child['constant'])) {
+                        /*
+                           From X.680-0207.pdf#page=58 (30.6):
+
+                           "The tagging construction specifies explicit tagging if any of the following holds:
+                            ...
+                            c) the "Tag Type" alternative is used and the value of "TagDefault" for the module is IMPLICIT TAGS or
+                            AUTOMATIC TAGS, but the type defined by "Type" is an untagged choice type, an untagged open type, or
+                            an untagged "DummyReference" (see ITU-T Rec. X.683 | ISO/IEC 8824-4, 8.3)."
+                         */
+                        if (isset($child['explicit']) || $child['type'] == FILE_ASN1_TYPE_CHOICE) {
+                            $subtag = chr((FILE_ASN1_CLASS_CONTEXT_SPECIFIC << 6) | 0x20 | $child['constant']);
+                            $temp = $subtag . $this->_encodeLength(strlen($temp)) . $temp;
+                        } else {
+                            $subtag = chr((FILE_ASN1_CLASS_CONTEXT_SPECIFIC << 6) | (ord($temp[0]) & 0x20) | $child['constant']);
+                            $temp = $subtag . substr($temp, 1);
+                        }
+                    }
+                    $value.= $temp;
+                }
+                break;
+            case FILE_ASN1_TYPE_CHOICE:
+                $temp = false;
+
+                foreach ($mapping['children'] as $key => $child) {
+                    if (!isset($source[$key])) {
+                        continue;
+                    }
+
+                    $temp = $this->_encode_der($source[$key], $child, $key);
+                    if ($temp === false) {
+                        return false;
+                    }
+
+                    // An empty child encoding means it has been optimized out.
+                    // Else we should have at least one tag byte.
+                    if ($temp === '') {
+                        continue;
+                    }
+
+                    $tag = ord($temp[0]);
+
+                    // if isset($child['constant']) is true then isset($child['optional']) should be true as well
+                    if (isset($child['constant'])) {
+                        if (isset($child['explicit']) || $child['type'] == FILE_ASN1_TYPE_CHOICE) {
+                            $subtag = chr((FILE_ASN1_CLASS_CONTEXT_SPECIFIC << 6) | 0x20 | $child['constant']);
+                            $temp = $subtag . $this->_encodeLength(strlen($temp)) . $temp;
+                        } else {
+                            $subtag = chr((FILE_ASN1_CLASS_CONTEXT_SPECIFIC << 6) | (ord($temp[0]) & 0x20) | $child['constant']);
+                            $temp = $subtag . substr($temp, 1);
+                        }
+                    }
+                }
+
+                if (isset($idx)) {
+                    array_pop($this->location);
+                }
+
+                if ($temp && isset($mapping['cast'])) {
+                    $temp[0] = chr(($mapping['class'] << 6) | ($tag & 0x20) | $mapping['cast']);
+                }
+
+                return $temp;
+            case FILE_ASN1_TYPE_INTEGER:
+            case FILE_ASN1_TYPE_ENUMERATED:
+                if (!isset($mapping['mapping'])) {
+                    $value = $source->toBytes(true);
+                } else {
+                    $value = array_search($source, $mapping['mapping']);
+                    if ($value === false) {
+                        return false;
+                    }
+                    $value = new Math_BigInteger($value);
+                    $value = $value->toBytes(true);
+                }
+                break;
+            case FILE_ASN1_TYPE_UTC_TIME:
+            case FILE_ASN1_TYPE_GENERALIZED_TIME:
+                $format = $mapping['type'] == FILE_ASN1_TYPE_UTC_TIME ? 'y' : 'Y';
+                $format.= 'mdHis';
+                $value = @gmdate($format, strtotime($source)) . 'Z';
+                break;
+            case FILE_ASN1_TYPE_BIT_STRING:
+                if (isset($mapping['mapping'])) {
+                    $bits = array_fill(0, count($mapping['mapping']), 0);
+                    $size = 0;
+                    for ($i = 0; $i < count($mapping['mapping']); $i++) {
+                        if (in_array($mapping['mapping'][$i], $source)) {
+                            $bits[$i] = 1;
+                            $size = $i;
+                        }
+                    }
+
+                    $offset = 8 - (($size + 1) & 7);
+                    $offset = $offset !== 8 ? $offset : 0;
+
+                    $value = chr($offset);
+
+                    for ($i = $size + 1; $i < count($mapping['mapping']); $i++) {
+                        unset($bits[$i]);
+                    }
+
+                    $bits = implode('', array_pad($bits, $size + $offset + 1, 0));
+                    $bytes = explode(' ', rtrim(chunk_split($bits, 8, ' ')));
+                    foreach ($bytes as $byte) {
+                        $value.= chr(bindec($byte));
+                    }
+
+                    break;
+                }
+            case FILE_ASN1_TYPE_OCTET_STRING:
+                /* The initial octet shall encode, as an unsigned binary integer with bit 1 as the least significant bit,
+                   the number of unused bits in the final subsequent octet. The number shall be in the range zero to seven.
+
+                   -- http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#page=16 */
+                $value = base64_decode($source);
+                break;
+            case FILE_ASN1_TYPE_OBJECT_IDENTIFIER:
+                $oid = preg_match('#(?:\d+\.)+#', $source) ? $source : array_search($source, $this->oids);
+                if ($oid === false) {
+                    user_error('Invalid OID');
+                    return false;
+                }
+                $value = '';
+                $parts = explode('.', $oid);
+                $value = chr(40 * $parts[0] + $parts[1]);
+                for ($i = 2; $i < count($parts); $i++) {
+                    $temp = '';
+                    if (!$parts[$i]) {
+                        $temp = "\0";
+                    } else {
+                        while ($parts[$i]) {
+                            $temp = chr(0x80 | ($parts[$i] & 0x7F)) . $temp;
+                            $parts[$i] >>= 7;
+                        }
+                        $temp[strlen($temp) - 1] = $temp[strlen($temp) - 1] & chr(0x7F);
+                    }
+                    $value.= $temp;
+                }
+                break;
+            case FILE_ASN1_TYPE_ANY:
+                $loc = $this->location;
+                if (isset($idx)) {
+                    array_pop($this->location);
+                }
+
+                switch (true) {
+                    case !isset($source):
+                        return $this->_encode_der(NULL, array('type' => FILE_ASN1_TYPE_NULL) + $mapping);
+                    case is_int($source):
+                    case is_object($source) && strtolower(get_class($source)) == 'math_biginteger':
+                        return $this->_encode_der($source, array('type' => FILE_ASN1_TYPE_INTEGER) + $mapping);
+                    case is_float($source):
+                        return $this->_encode_der($source, array('type' => FILE_ASN1_TYPE_REAL) + $mapping);
+                    case is_bool($source):
+                        return $this->_encode_der($source, array('type' => FILE_ASN1_TYPE_BOOLEAN) + $mapping);
+                    case is_array($source) && count($source) == 1:
+                        $typename = implode('', array_keys($source));
+                        $outtype = array_search($typename, $this->ANYmap, true);
+                        if ($outtype !== false) {
+                            return $this->_encode_der($source[$typename], array('type' => $outtype) + $mapping);
+                        }
+                    }
+
+                $filters = $this->filters;
+                foreach ($loc as $part) {
+                    if (!isset($filters[$part])) {
+                        $filters = false;
+                        break;
+                    }
+                    $filters = $filters[$part];
+                }
+                if ($filters === false) {
+                    user_error('No filters defined for ' . implode('/', $loc));
+                    return false;
+                }
+                return $this->_encode_der($source, $filters + $mapping);
+            case FILE_ASN1_TYPE_NULL:
+                $value = '';
+                break;
+            case FILE_ASN1_TYPE_NUMERIC_STRING:
+            case FILE_ASN1_TYPE_TELETEX_STRING:
+            case FILE_ASN1_TYPE_PRINTABLE_STRING:
+            case FILE_ASN1_TYPE_UNIVERSAL_STRING:
+            case FILE_ASN1_TYPE_UTF8_STRING:
+            case FILE_ASN1_TYPE_BMP_STRING:
+            case FILE_ASN1_TYPE_IA5_STRING:
+            case FILE_ASN1_TYPE_VISIBLE_STRING:
+            case FILE_ASN1_TYPE_VIDEOTEX_STRING:
+            case FILE_ASN1_TYPE_GRAPHIC_STRING:
+            case FILE_ASN1_TYPE_GENERAL_STRING:
+                $value = $source;
+                break;
+            case FILE_ASN1_TYPE_BOOLEAN:
+                $value = $source ? "\xFF" : "\x00";
+                break;
+            default:
+                user_error('Mapping provides no type definition for ' . implode('/', $this->location));
+                return false;
+        }
+
+        if (isset($idx)) {
+            array_pop($this->location);
+        }
+
+        if (isset($mapping['cast'])) {
+            $tag = ($mapping['class'] << 6) | ($tag & 0x20) | $mapping['cast'];
+        }
+
+        return chr($tag) . $this->_encodeLength(strlen($value)) . $value;
+    }
+
+    /**
+     * DER-encode the length
+     *
+     * DER supports lengths up to (2**8)**127, however, we'll only support lengths up to (2**8)**4.  See
+     * {@link http://itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#p=13 X.690 � 8.1.3} for more information.
+     *
+     * @access private
+     * @param Integer $length
+     * @return String
+     */
+    function _encodeLength($length)
+    {
+        if ($length <= 0x7F) {
+            return chr($length);
+        }
+
+        $temp = ltrim(pack('N', $length), chr(0));
+        return pack('Ca*', 0x80 | strlen($temp), $temp);
+    }
+
+    /**
+     * BER-decode the time
+     *
+     * Called by _decode_ber() and in the case of implicit tags asn1map().
+     *
+     * @access private
+     * @param String $content
+     * @param Integer $tag
+     * @return String
+     */
+    function _decodeTime($content, $tag)
+    {
+        /* UTCTime:
+           http://tools.ietf.org/html/rfc5280#section-4.1.2.5.1
+           http://www.obj-sys.com/asn1tutorial/node15.html
+
+           GeneralizedTime:
+           http://tools.ietf.org/html/rfc5280#section-4.1.2.5.2
+           http://www.obj-sys.com/asn1tutorial/node14.html */
+
+        $pattern = $tag == FILE_ASN1_TYPE_UTC_TIME ?
+            '#(..)(..)(..)(..)(..)(..)(.*)#' :
+            '#(....)(..)(..)(..)(..)(..).*([Z+-].*)$#';
+
+        preg_match($pattern, $content, $matches);
+
+        list(, $year, $month, $day, $hour, $minute, $second, $timezone) = $matches;
+
+        if ($tag == FILE_ASN1_TYPE_UTC_TIME) {
+            $year = $year >= 50 ? "19$year" : "20$year";
+        }
+
+        if ($timezone == 'Z') {
+            $mktime = 'gmmktime';
+            $timezone = 0;
+        } elseif (preg_match('#([+-])(\d\d)(\d\d)#', $timezone, $matches)) {
+            $mktime = 'gmmktime';
+            $timezone = 60 * $matches[3] + 3600 * $matches[2];
+            if ($matches[1] == '-') {
+                $timezone = -$timezone;
+            }
+        } else {
+            $mktime = 'mktime';
+            $timezone = 0;
+        }
+
+        return @$mktime($hour, $minute, $second, $month, $day, $year) + $timezone;
+    }
+
+    /**
+     * Set the time format
+     *
+     * Sets the time / date format for asn1map().
+     *
+     * @access public
+     * @param String $format
+     */
+    function setTimeFormat($format)
+    {
+        $this->format = $format;
+    }
+
+    /**
+     * Load OIDs
+     *
+     * Load the relevant OIDs for a particular ASN.1 semantic mapping.
+     *
+     * @access public
+     * @param Array $oids
+     */
+    function loadOIDs($oids)
+    {
+        $this->oids = $oids;
+    }
+
+    /**
+     * Load filters
+     *
+     * See File_X509, etc, for an example.
+     *
+     * @access public
+     * @param Array $filters
+     */
+    function loadFilters($filters)
+    {
+        $this->filters = $filters;
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+
+    /**
+     * String type conversion
+     *
+     * This is a lazy conversion, dealing only with character size.
+     * No real conversion table is used.
+     *
+     * @param String $in
+     * @param optional Integer $from
+     * @param optional Integer $to
+     * @return String
+     * @access public
+     */
+    function convert($in, $from = FILE_ASN1_TYPE_UTF8_STRING, $to = FILE_ASN1_TYPE_UTF8_STRING)
+    {
+        if (!isset($this->stringTypeSize[$from]) || !isset($this->stringTypeSize[$to])) {
+            return false;
+        }
+        $insize = $this->stringTypeSize[$from];
+        $outsize = $this->stringTypeSize[$to];
+        $inlength = strlen($in);
+        $out = '';
+
+        for ($i = 0; $i < $inlength;) {
+            if ($inlength - $i < $insize) {
+                return false;
+            }
+
+            // Get an input character as a 32-bit value.
+            $c = ord($in[$i++]);
+            switch (true) {
+                case $insize == 4:
+                    $c = ($c << 8) | ord($in[$i++]);
+                    $c = ($c << 8) | ord($in[$i++]);
+                case $insize == 2:
+                    $c = ($c << 8) | ord($in[$i++]);
+                case $insize == 1:
+                    break;
+                case ($c & 0x80) == 0x00:
+                    break;
+                case ($c & 0x40) == 0x00:
+                    return false;
+                default:
+                    $bit = 6;
+                    do {
+                        if ($bit > 25 || $i >= $inlength || (ord($in[$i]) & 0xC0) != 0x80) {
+                            return false;
+                        }
+                        $c = ($c << 6) | (ord($in[$i++]) & 0x3F);
+                        $bit += 5;
+                        $mask = 1 << $bit;
+                    } while ($c & $bit);
+                    $c &= $mask - 1;
+                    break;
+            }
+
+            // Convert and append the character to output string.
+            $v = '';
+            switch (true) {
+                case $outsize == 4:
+                    $v .= chr($c & 0xFF);
+                    $c >>= 8;
+                    $v .= chr($c & 0xFF);
+                    $c >>= 8;
+                case $outsize == 2:
+                    $v .= chr($c & 0xFF);
+                    $c >>= 8;
+                case $outsize == 1:
+                    $v .= chr($c & 0xFF);
+                    $c >>= 8;
+                    if ($c) {
+                        return false;
+                    }
+                    break;
+                case ($c & 0x80000000) != 0:
+                    return false;
+                case $c >= 0x04000000:
+                    $v .= chr(0x80 | ($c & 0x3F));
+                    $c = ($c >> 6) | 0x04000000;
+                case $c >= 0x00200000:
+                    $v .= chr(0x80 | ($c & 0x3F));
+                    $c = ($c >> 6) | 0x00200000;
+                case $c >= 0x00010000:
+                    $v .= chr(0x80 | ($c & 0x3F));
+                    $c = ($c >> 6) | 0x00010000;
+                case $c >= 0x00000800:
+                    $v .= chr(0x80 | ($c & 0x3F));
+                    $c = ($c >> 6) | 0x00000800;
+                case $c >= 0x00000080:
+                    $v .= chr(0x80 | ($c & 0x3F));
+                    $c = ($c >> 6) | 0x000000C0;
+                default:
+                    $v .= chr($c);
+                    break;
+            }
+            $out .= strrev($v);
+        }
+        return $out;
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/File/X509.php b/apps/files_external/3rdparty/phpseclib/phpseclib/File/X509.php
new file mode 100644
index 0000000000000000000000000000000000000000..278da62e26208c9d1a547040b3479f010ea9029c
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/File/X509.php
@@ -0,0 +1,4323 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP X.509 Parser
+ *
+ * PHP versions 4 and 5
+ *
+ * Encode and decode X.509 certificates.
+ *
+ * The extensions are from {@link http://tools.ietf.org/html/rfc5280 RFC5280} and 
+ * {@link http://web.archive.org/web/19961027104704/http://www3.netscape.com/eng/security/cert-exts.html Netscape Certificate Extensions}.
+ *
+ * Note that loading an X.509 certificate and resaving it may invalidate the signature.  The reason being that the signature is based on a
+ * portion of the certificate that contains optional parameters with default values.  ie. if the parameter isn't there the default value is
+ * used.  Problem is, if the parameter is there and it just so happens to have the default value there are two ways that that parameter can
+ * be encoded.  It can be encoded explicitly or left out all together.  This would effect the signature value and thus may invalidate the
+ * the certificate all together unless the certificate is re-signed.
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   File
+ * @package    File_X509
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMXII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id$
+ * @link       htp://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include File_ASN1
+ */
+if (!class_exists('File_ASN1')) {
+    require_once('File/ASN1.php');
+}
+
+/**
+ * Flag to only accept signatures signed by certificate authorities
+ *
+ * @access public
+ * @see File_X509::validateSignature()
+ */
+define('FILE_X509_VALIDATE_SIGNATURE_BY_CA', 1);
+
+/**#@+
+ * @access public
+ * @see File_X509::getDN()
+ */
+/**
+ * Return internal array representation
+ */
+define('FILE_X509_DN_ARRAY', 0);
+/**
+ * Return string
+ */
+define('FILE_X509_DN_STRING', 1);
+/**
+ * Return ASN.1 name string
+ */
+define('FILE_X509_DN_ASN1', 2);
+/**
+ * Return OpenSSL compatible array
+ */
+define('FILE_X509_DN_OPENSSL', 3);
+/**
+ * Return canonical ASN.1 RDNs string
+ */
+define('FILE_X509_DN_CANON', 4);
+/**
+ * Return name hash for file indexing
+ */
+define('FILE_X509_DN_HASH', 5);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see File_X509::saveX509()
+ * @see File_X509::saveCSR()
+ * @see File_X509::saveCRL()
+ */
+/**
+ * Save as PEM
+ *
+ * ie. a base64-encoded PEM with a header and a footer
+ */
+define('FILE_X509_FORMAT_PEM', 0);
+/**
+ * Save as DER
+ */
+define('FILE_X509_FORMAT_DER', 1);
+/**
+ * Save as a SPKAC
+ *
+ * Only works on CSRs. Not currently supported.
+ */
+define('FILE_X509_FORMAT_SPKAC', 2);
+/**#@-*/
+
+/**
+ * Attribute value disposition.
+ * If disposition is >= 0, this is the index of the target value.
+ */
+define('FILE_X509_ATTR_ALL', -1); // All attribute values (array).
+define('FILE_X509_ATTR_APPEND', -2); // Add a value.
+define('FILE_X509_ATTR_REPLACE', -3); // Clear first, then add a value.
+
+/**
+ * Pure-PHP X.509 Parser
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.3.1
+ * @access  public
+ * @package File_X509
+ */
+class File_X509 {
+    /**
+     * ASN.1 syntax for X.509 certificates
+     *
+     * @var Array
+     * @access private
+     */
+    var $Certificate;
+
+    /**#@+
+     * ASN.1 syntax for various extensions
+     *
+     * @access private
+     */
+    var $DirectoryString;
+    var $PKCS9String;
+    var $AttributeValue;
+    var $Extensions;
+    var $KeyUsage;
+    var $ExtKeyUsageSyntax;
+    var $BasicConstraints;
+    var $KeyIdentifier;
+    var $CRLDistributionPoints;
+    var $AuthorityKeyIdentifier;
+    var $CertificatePolicies;
+    var $AuthorityInfoAccessSyntax;
+    var $SubjectAltName;
+    var $PrivateKeyUsagePeriod;
+    var $IssuerAltName;
+    var $PolicyMappings;
+    var $NameConstraints;
+
+    var $CPSuri;
+    var $UserNotice;
+
+    var $netscape_cert_type;
+    var $netscape_comment;
+    var $netscape_ca_policy_url;
+
+    var $Name;
+    var $RelativeDistinguishedName;
+    var $CRLNumber;
+    var $CRLReason;
+    var $IssuingDistributionPoint;
+    var $InvalidityDate;
+    var $CertificateIssuer;
+    var $HoldInstructionCode;
+    var $SignedPublicKeyAndChallenge;
+    /**#@-*/
+
+    /**
+     * ASN.1 syntax for Certificate Signing Requests (RFC2986)
+     *
+     * @var Array
+     * @access private
+     */
+    var $CertificationRequest;
+
+    /**
+     * ASN.1 syntax for Certificate Revocation Lists (RFC5280)
+     *
+     * @var Array
+     * @access private
+     */
+    var $CertificateList;
+
+    /**
+     * Distinguished Name
+     *
+     * @var Array
+     * @access private
+     */
+    var $dn;
+
+    /**
+     * Public key
+     *
+     * @var String
+     * @access private
+     */
+    var $publicKey;
+
+    /**
+     * Private key
+     *
+     * @var String
+     * @access private
+     */
+    var $privateKey;
+
+    /**
+     * Object identifiers for X.509 certificates
+     *
+     * @var Array
+     * @access private
+     * @link http://en.wikipedia.org/wiki/Object_identifier
+     */
+    var $oids;
+
+    /**
+     * The certificate authorities
+     *
+     * @var Array
+     * @access private
+     */
+    var $CAs;
+
+    /**
+     * The currently loaded certificate
+     *
+     * @var Array
+     * @access private
+     */
+    var $currentCert;
+
+    /**
+     * The signature subject
+     *
+     * There's no guarantee File_X509 is going to reencode an X.509 cert in the same way it was originally
+     * encoded so we take save the portion of the original cert that the signature would have made for. 
+     *
+     * @var String
+     * @access private
+     */
+    var $signatureSubject;
+
+    /**
+     * Certificate Start Date
+     *
+     * @var String
+     * @access private
+     */
+    var $startDate;
+
+    /**
+     * Certificate End Date
+     *
+     * @var String
+     * @access private
+     */
+    var $endDate;
+
+    /**
+     * Serial Number
+     *
+     * @var String
+     * @access private
+     */
+    var $serialNumber;
+
+    /**
+     * Key Identifier
+     *
+     * See {@link http://tools.ietf.org/html/rfc5280#section-4.2.1.1 RFC5280#section-4.2.1.1} and
+     * {@link http://tools.ietf.org/html/rfc5280#section-4.2.1.2 RFC5280#section-4.2.1.2}.
+     *
+     * @var String
+     * @access private
+     */
+    var $currentKeyIdentifier;
+
+    /**
+     * CA Flag
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $caFlag = false;
+
+    /**
+     * Default Constructor.
+     *
+     * @return File_X509
+     * @access public
+     */
+    function File_X509()
+    {
+        // Explicitly Tagged Module, 1988 Syntax
+        // http://tools.ietf.org/html/rfc5280#appendix-A.1
+
+        $this->DirectoryString = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'teletexString'   => array('type' => FILE_ASN1_TYPE_TELETEX_STRING),
+                'printableString' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING),
+                'universalString' => array('type' => FILE_ASN1_TYPE_UNIVERSAL_STRING),
+                'utf8String'      => array('type' => FILE_ASN1_TYPE_UTF8_STRING),
+                'bmpString'       => array('type' => FILE_ASN1_TYPE_BMP_STRING)
+            )
+        );
+
+        $this->PKCS9String = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'ia5String'       => array('type' => FILE_ASN1_TYPE_IA5_STRING),
+                'directoryString' => $this->DirectoryString
+            )
+        );
+
+        $this->AttributeValue = array('type' => FILE_ASN1_TYPE_ANY);
+
+        $AttributeType = array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER);
+
+        $AttributeTypeAndValue = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'type' => $AttributeType,
+                'value'=> $this->AttributeValue
+            )
+        );
+
+        /*
+        In practice, RDNs containing multiple name-value pairs (called "multivalued RDNs") are rare,
+        but they can be useful at times when either there is no unique attribute in the entry or you
+        want to ensure that the entry's DN contains some useful identifying information.
+
+        - https://www.opends.org/wiki/page/DefinitionRelativeDistinguishedName
+        */
+        $this->RelativeDistinguishedName = array(
+            'type'     => FILE_ASN1_TYPE_SET,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $AttributeTypeAndValue
+        );
+
+        // http://tools.ietf.org/html/rfc5280#section-4.1.2.4
+        $RDNSequence = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            // RDNSequence does not define a min or a max, which means it doesn't have one
+            'min'      => 0,
+            'max'      => -1,
+            'children' => $this->RelativeDistinguishedName
+        );
+
+        $this->Name = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'rdnSequence' => $RDNSequence
+            )
+        );
+
+        // http://tools.ietf.org/html/rfc5280#section-4.1.1.2
+        $AlgorithmIdentifier = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'algorithm'  => array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER),
+                'parameters' => array(
+                                    'type'     => FILE_ASN1_TYPE_ANY,
+                                    'optional' => true
+                                )
+            )
+        );
+
+        /*
+           A certificate using system MUST reject the certificate if it encounters
+           a critical extension it does not recognize; however, a non-critical
+           extension may be ignored if it is not recognized.
+
+           http://tools.ietf.org/html/rfc5280#section-4.2
+        */
+        $Extension = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'extnId'   => array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER),
+                'critical' => array(
+                                  'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                  'optional' => true,
+                                  'default'  => false
+                              ),
+                'extnValue' => array('type' => FILE_ASN1_TYPE_OCTET_STRING)
+            )
+        );
+
+        $this->Extensions = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            // technically, it's MAX, but we'll assume anything < 0 is MAX
+            'max'      => -1,
+            // if 'children' isn't an array then 'min' and 'max' must be defined
+            'children' => $Extension
+        );
+
+        $SubjectPublicKeyInfo = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'algorithm'        => $AlgorithmIdentifier,
+                'subjectPublicKey' => array('type' => FILE_ASN1_TYPE_BIT_STRING)
+            )
+        );
+
+        $UniqueIdentifier = array('type' => FILE_ASN1_TYPE_BIT_STRING);
+
+        $Time = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'utcTime'     => array('type' => FILE_ASN1_TYPE_UTC_TIME),
+                'generalTime' => array('type' => FILE_ASN1_TYPE_GENERALIZED_TIME)
+            )
+        );
+
+        // http://tools.ietf.org/html/rfc5280#section-4.1.2.5
+        $Validity = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'notBefore' => $Time,
+                'notAfter'  => $Time
+            )
+        );
+
+        $CertificateSerialNumber = array('type' => FILE_ASN1_TYPE_INTEGER);
+
+        $Version = array(
+            'type'    => FILE_ASN1_TYPE_INTEGER,
+            'mapping' => array('v1', 'v2', 'v3')
+        );
+
+        // assert($TBSCertificate['children']['signature'] == $Certificate['children']['signatureAlgorithm'])
+        $TBSCertificate = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                // technically, default implies optional, but we'll define it as being optional, none-the-less, just to
+                // reenforce that fact
+                'version'             => array(
+                                             'constant' => 0,
+                                             'optional' => true,
+                                             'explicit' => true,
+                                             'default'  => 'v1'
+                                         ) + $Version,
+                'serialNumber'         => $CertificateSerialNumber,
+                'signature'            => $AlgorithmIdentifier,
+                'issuer'               => $this->Name,
+                'validity'             => $Validity,
+                'subject'              => $this->Name,
+                'subjectPublicKeyInfo' => $SubjectPublicKeyInfo,
+                // implicit means that the T in the TLV structure is to be rewritten, regardless of the type
+                'issuerUniqueID'       => array(
+                                               'constant' => 1,
+                                               'optional' => true,
+                                               'implicit' => true
+                                           ) + $UniqueIdentifier,
+                'subjectUniqueID'       => array(
+                                               'constant' => 2,
+                                               'optional' => true,
+                                               'implicit' => true
+                                           ) + $UniqueIdentifier,
+                // <http://tools.ietf.org/html/rfc2459#page-74> doesn't use the EXPLICIT keyword but if
+                // it's not IMPLICIT, it's EXPLICIT
+                'extensions'            => array(
+                                               'constant' => 3,
+                                               'optional' => true,
+                                               'explicit' => true
+                                           ) + $this->Extensions
+            )
+        );
+
+        $this->Certificate = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'tbsCertificate'     => $TBSCertificate,
+                 'signatureAlgorithm' => $AlgorithmIdentifier,
+                 'signature'          => array('type' => FILE_ASN1_TYPE_BIT_STRING)
+            )
+        );
+
+        $this->KeyUsage = array(
+            'type'    => FILE_ASN1_TYPE_BIT_STRING,
+            'mapping' => array(
+                'digitalSignature',
+                'nonRepudiation',
+                'keyEncipherment',
+                'dataEncipherment',
+                'keyAgreement',
+                'keyCertSign',
+                'cRLSign',
+                'encipherOnly',
+                'decipherOnly'
+            )
+        );
+
+        $this->BasicConstraints = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'cA'                => array(
+                                                 'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                                 'optional' => true,
+                                                 'default'  => false
+                                       ),
+                'pathLenConstraint' => array(
+                                                 'type' => FILE_ASN1_TYPE_INTEGER,
+                                                 'optional' => true
+                                       )
+            )
+        );
+
+        $this->KeyIdentifier = array('type' => FILE_ASN1_TYPE_OCTET_STRING);
+
+        $OrganizationalUnitNames = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => 4, // ub-organizational-units
+            'children' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING)
+        );
+
+        $PersonalName = array(
+            'type'     => FILE_ASN1_TYPE_SET,
+            'children' => array(
+                'surname'              => array(
+                                           'type' => FILE_ASN1_TYPE_PRINTABLE_STRING,
+                                           'constant' => 0,
+                                           'optional' => true,
+                                           'implicit' => true
+                                         ),
+                'given-name'           => array(
+                                           'type' => FILE_ASN1_TYPE_PRINTABLE_STRING,
+                                           'constant' => 1,
+                                           'optional' => true,
+                                           'implicit' => true
+                                         ),
+                'initials'             => array(
+                                           'type' => FILE_ASN1_TYPE_PRINTABLE_STRING,
+                                           'constant' => 2,
+                                           'optional' => true,
+                                           'implicit' => true
+                                         ),
+                'generation-qualifier' => array(
+                                           'type' => FILE_ASN1_TYPE_PRINTABLE_STRING,
+                                           'constant' => 3,
+                                           'optional' => true,
+                                           'implicit' => true
+                                         )
+            )
+        );
+
+        $NumericUserIdentifier = array('type' => FILE_ASN1_TYPE_NUMERIC_STRING);
+
+        $OrganizationName = array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING);
+
+        $PrivateDomainName = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'numeric'   => array('type' => FILE_ASN1_TYPE_NUMERIC_STRING),
+                'printable' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING)
+            )
+        );
+
+        $TerminalIdentifier = array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING);
+
+        $NetworkAddress = array('type' => FILE_ASN1_TYPE_NUMERIC_STRING);
+
+        $AdministrationDomainName = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            // if class isn't present it's assumed to be FILE_ASN1_CLASS_UNIVERSAL or
+            // (if constant is present) FILE_ASN1_CLASS_CONTEXT_SPECIFIC
+            'class'    => FILE_ASN1_CLASS_APPLICATION,
+            'cast'     => 2,
+            'children' => array(
+                'numeric'   => array('type' => FILE_ASN1_TYPE_NUMERIC_STRING),
+                'printable' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING)
+            )
+        );
+
+        $CountryName = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            // if class isn't present it's assumed to be FILE_ASN1_CLASS_UNIVERSAL or
+            // (if constant is present) FILE_ASN1_CLASS_CONTEXT_SPECIFIC
+            'class'    => FILE_ASN1_CLASS_APPLICATION,
+            'cast'     => 1,
+            'children' => array(
+                'x121-dcc-code'        => array('type' => FILE_ASN1_TYPE_NUMERIC_STRING),
+                'iso-3166-alpha2-code' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING)
+            )
+        );
+
+        $AnotherName = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'type-id' => array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER),
+                 'value'   => array(
+                                  'type' => FILE_ASN1_TYPE_ANY,
+                                  'constant' => 0,
+                                  'optional' => true,
+                                  'explicit' => true
+                              )
+            )
+        );
+
+        $ExtensionAttribute = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'extension-attribute-type'  => array(
+                                                    'type' => FILE_ASN1_TYPE_PRINTABLE_STRING,
+                                                    'constant' => 0,
+                                                    'optional' => true,
+                                                    'implicit' => true
+                                                ),
+                 'extension-attribute-value' => array(
+                                                    'type' => FILE_ASN1_TYPE_ANY,
+                                                    'constant' => 1,
+                                                    'optional' => true,
+                                                    'explicit' => true
+                                                )
+            )
+        );
+
+        $ExtensionAttributes = array(
+            'type'     => FILE_ASN1_TYPE_SET,
+            'min'      => 1,
+            'max'      => 256, // ub-extension-attributes
+            'children' => $ExtensionAttribute
+        );
+
+        $BuiltInDomainDefinedAttribute = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'type'  => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING),
+                 'value' => array('type' => FILE_ASN1_TYPE_PRINTABLE_STRING)
+            )
+        );
+
+        $BuiltInDomainDefinedAttributes = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => 4, // ub-domain-defined-attributes
+            'children' => $BuiltInDomainDefinedAttribute
+        );
+
+        $BuiltInStandardAttributes =  array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'country-name'               => array('optional' => true) + $CountryName,
+                'administration-domain-name' => array('optional' => true) + $AdministrationDomainName,
+                'network-address'            => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $NetworkAddress,
+                'terminal-identifier'        => array(
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $TerminalIdentifier,
+                'private-domain-name'        => array(
+                                                 'constant' => 2,
+                                                 'optional' => true,
+                                                 'explicit' => true
+                                               ) + $PrivateDomainName,
+                'organization-name'          => array(
+                                                 'constant' => 3,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $OrganizationName,
+                'numeric-user-identifier'    => array(
+                                                 'constant' => 4,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $NumericUserIdentifier,
+                'personal-name'              => array(
+                                                 'constant' => 5,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $PersonalName,
+                'organizational-unit-names'  => array(
+                                                 'constant' => 6,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $OrganizationalUnitNames
+            )
+        );
+
+        $ORAddress = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'built-in-standard-attributes'       => $BuiltInStandardAttributes,
+                 'built-in-domain-defined-attributes' => array('optional' => true) + $BuiltInDomainDefinedAttributes,
+                 'extension-attributes'               => array('optional' => true) + $ExtensionAttributes
+            )
+        );
+
+        $EDIPartyName = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                 'nameAssigner' => array(
+                                    'constant' => 0,
+                                    'optional' => true,
+                                    'implicit' => true
+                                ) + $this->DirectoryString,
+                 // partyName is technically required but File_ASN1 doesn't currently support non-optional constants and
+                 // setting it to optional gets the job done in any event.
+                 'partyName'    => array(
+                                    'constant' => 1,
+                                    'optional' => true,
+                                    'implicit' => true
+                                ) + $this->DirectoryString
+            )
+        );
+
+        $GeneralName = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'otherName'                 => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $AnotherName,
+                'rfc822Name'                => array(
+                                                 'type' => FILE_ASN1_TYPE_IA5_STRING,
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ),
+                'dNSName'                   => array(
+                                                 'type' => FILE_ASN1_TYPE_IA5_STRING,
+                                                 'constant' => 2,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ),
+                'x400Address'               => array(
+                                                 'constant' => 3,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $ORAddress,
+                'directoryName'             => array(
+                                                 'constant' => 4,
+                                                 'optional' => true,
+                                                 'explicit' => true
+                                               ) + $this->Name,
+                'ediPartyName'              => array(
+                                                 'constant' => 5,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $EDIPartyName,
+                'uniformResourceIdentifier' => array(
+                                                 'type' => FILE_ASN1_TYPE_IA5_STRING,
+                                                 'constant' => 6,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ),
+                'iPAddress'                 => array(
+                                                 'type' => FILE_ASN1_TYPE_OCTET_STRING,
+                                                 'constant' => 7,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ),
+                'registeredID'              => array(
+                                                 'type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER,
+                                                 'constant' => 8,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               )
+            )
+        );
+
+        $GeneralNames = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $GeneralName
+        );
+
+        $this->IssuerAltName = $GeneralNames;
+
+        $ReasonFlags = array(
+            'type'    => FILE_ASN1_TYPE_BIT_STRING,
+            'mapping' => array(
+                'unused',
+                'keyCompromise',
+                'cACompromise',
+                'affiliationChanged',
+                'superseded',
+                'cessationOfOperation',
+                'certificateHold',
+                'privilegeWithdrawn',
+                'aACompromise'
+            )
+        );
+
+        $DistributionPointName = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'fullName'                => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                       ) + $GeneralNames,
+                'nameRelativeToCRLIssuer' => array(
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                       ) + $this->RelativeDistinguishedName
+            )
+        );
+
+        $DistributionPoint = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'distributionPoint' => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'explicit' => true
+                                       ) + $DistributionPointName,
+                'reasons'           => array(
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                       ) + $ReasonFlags,
+                'cRLIssuer'         => array(
+                                                 'constant' => 2,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                       ) + $GeneralNames
+            )
+        );
+
+        $this->CRLDistributionPoints = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $DistributionPoint
+        );
+
+        $this->AuthorityKeyIdentifier = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'keyIdentifier'             => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $this->KeyIdentifier,
+                'authorityCertIssuer'       => array(
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $GeneralNames,
+                'authorityCertSerialNumber' => array(
+                                                 'constant' => 2,
+                                                 'optional' => true,
+                                                 'implicit' => true
+                                               ) + $CertificateSerialNumber
+            )
+        );
+
+        $PolicyQualifierId = array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER);
+
+        $PolicyQualifierInfo = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'policyQualifierId' => $PolicyQualifierId,
+                'qualifier'         => array('type' => FILE_ASN1_TYPE_ANY)
+            )
+        );
+
+        $CertPolicyId = array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER);
+
+        $PolicyInformation = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'policyIdentifier' => $CertPolicyId,
+                'policyQualifiers' => array(
+                                          'type'     => FILE_ASN1_TYPE_SEQUENCE,
+                                          'min'      => 0,
+                                          'max'      => -1,
+                                          'optional' => true,
+                                          'children' => $PolicyQualifierInfo
+                                      )
+            )
+        );
+
+        $this->CertificatePolicies = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $PolicyInformation
+        );
+
+        $this->PolicyMappings = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => array(
+                              'type'     => FILE_ASN1_TYPE_SEQUENCE,
+                              'children' => array(
+                                  'issuerDomainPolicy' => $CertPolicyId,
+                                  'subjectDomainPolicy' => $CertPolicyId
+                              )
+                       )
+        );
+
+        $KeyPurposeId = array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER);
+
+        $this->ExtKeyUsageSyntax = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $KeyPurposeId
+        );
+
+        $AccessDescription = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'accessMethod'   => array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER),
+                'accessLocation' => $GeneralName
+            )
+        );
+
+        $this->AuthorityInfoAccessSyntax = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $AccessDescription
+        );
+
+        $this->SubjectAltName = $GeneralNames;
+
+        $this->PrivateKeyUsagePeriod = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'notBefore' => array(
+                                                 'constant' => 0,
+                                                 'optional' => true,
+                                                 'implicit' => true,
+                                                 'type' => FILE_ASN1_TYPE_GENERALIZED_TIME),
+                'notAfter'  => array(
+                                                 'constant' => 1,
+                                                 'optional' => true,
+                                                 'implicit' => true,
+                                                 'type' => FILE_ASN1_TYPE_GENERALIZED_TIME)
+            )
+        );
+
+        $BaseDistance = array('type' => FILE_ASN1_TYPE_INTEGER);
+
+        $GeneralSubtree = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'base'    => $GeneralName,
+                'minimum' => array(
+                                 'constant' => 0,
+                                 'optional' => true,
+                                 'implicit' => true,
+                                 'default' => new Math_BigInteger(0)
+                             ) + $BaseDistance,
+                'maximum' => array(
+                                 'constant' => 1,
+                                 'optional' => true,
+                                 'implicit' => true,
+                             ) + $BaseDistance
+            )
+        );
+
+        $GeneralSubtrees = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $GeneralSubtree
+        );
+
+        $this->NameConstraints = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'permittedSubtrees' => array(
+                                           'constant' => 0,
+                                           'optional' => true,
+                                           'implicit' => true
+                                       ) + $GeneralSubtrees,
+                'excludedSubtrees'  => array(
+                                           'constant' => 1,
+                                           'optional' => true,
+                                           'implicit' => true
+                                       ) + $GeneralSubtrees
+            )
+        );
+
+        $this->CPSuri = array('type' => FILE_ASN1_TYPE_IA5_STRING);
+
+        $DisplayText = array(
+            'type'     => FILE_ASN1_TYPE_CHOICE,
+            'children' => array(
+                'ia5String'     => array('type' => FILE_ASN1_TYPE_IA5_STRING),
+                'visibleString' => array('type' => FILE_ASN1_TYPE_VISIBLE_STRING),
+                'bmpString'     => array('type' => FILE_ASN1_TYPE_BMP_STRING),
+                'utf8String'    => array('type' => FILE_ASN1_TYPE_UTF8_STRING)
+            )
+        );
+
+        $NoticeReference = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'organization'  => $DisplayText,
+                'noticeNumbers' => array(
+                                       'type'     => FILE_ASN1_TYPE_SEQUENCE,
+                                       'min'      => 1,
+                                       'max'      => 200,
+                                       'children' => array('type' => FILE_ASN1_TYPE_INTEGER)
+                                   )
+            )
+        );
+
+        $this->UserNotice = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'noticeRef' => array(
+                                           'optional' => true,
+                                           'implicit' => true
+                                       ) + $NoticeReference,
+                'explicitText'  => array(
+                                           'optional' => true,
+                                           'implicit' => true
+                                       ) + $DisplayText
+            )
+        );
+
+        // mapping is from <http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn3.html>
+        $this->netscape_cert_type = array(
+            'type'    => FILE_ASN1_TYPE_BIT_STRING,
+            'mapping' => array(
+                'SSLClient',
+                'SSLServer',
+                'Email',
+                'ObjectSigning',
+                'Reserved',
+                'SSLCA',
+                'EmailCA',
+                'ObjectSigningCA'
+            )
+        );
+
+        $this->netscape_comment = array('type' => FILE_ASN1_TYPE_IA5_STRING);
+        $this->netscape_ca_policy_url = array('type' => FILE_ASN1_TYPE_IA5_STRING);
+
+        // attribute is used in RFC2986 but we're using the RFC5280 definition
+
+        $Attribute = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'type' => $AttributeType,
+                'value'=> array(
+                              'type'     => FILE_ASN1_TYPE_SET,
+                              'min'      => 1,
+                              'max'      => -1,
+                              'children' => $this->AttributeValue
+                          )
+            )
+        );
+
+        // adapted from <http://tools.ietf.org/html/rfc2986>
+
+        $Attributes = array(
+            'type'     => FILE_ASN1_TYPE_SET,
+            'min'      => 1,
+            'max'      => -1,
+            'children' => $Attribute
+        );
+
+        $CertificationRequestInfo = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'version'       => array(
+                                       'type' => FILE_ASN1_TYPE_INTEGER,
+                                       'mapping' => array('v1')
+                                   ),
+                'subject'       => $this->Name,
+                'subjectPKInfo' => $SubjectPublicKeyInfo,
+                'attributes'    => array(
+                                       'constant' => 0,
+                                       'optional' => true,
+                                       'implicit' => true
+                                   ) + $Attributes,
+            )
+        );
+
+        $this->CertificationRequest = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'certificationRequestInfo' => $CertificationRequestInfo,
+                'signatureAlgorithm'       => $AlgorithmIdentifier,
+                'signature'                => array('type' => FILE_ASN1_TYPE_BIT_STRING)
+            )
+        );
+
+        $RevokedCertificate = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                              'userCertificate'    => $CertificateSerialNumber,
+                              'revocationDate'     => $Time,
+                              'crlEntryExtensions' => array(
+                                                          'optional' => true
+                                                      ) + $this->Extensions
+                          )
+        );
+
+        $TBSCertList = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'version'             => array(
+                                             'optional' => true,
+                                             'default'  => 'v1'
+                                         ) + $Version,
+                'signature'           => $AlgorithmIdentifier,
+                'issuer'              => $this->Name,
+                'thisUpdate'          => $Time,
+                'nextUpdate'          => array(
+                                             'optional' => true
+                                         ) + $Time,
+                'revokedCertificates' => array(
+                                             'type'     => FILE_ASN1_TYPE_SEQUENCE,
+                                             'optional' => true,
+                                             'min'      => 0,
+                                             'max'      => -1,
+                                             'children' => $RevokedCertificate
+                                         ),
+                'crlExtensions'       => array(
+                                             'constant' => 0,
+                                             'optional' => true,
+                                             'explicit' => true
+                                         ) + $this->Extensions
+            )
+        );
+
+        $this->CertificateList = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'tbsCertList'        => $TBSCertList,
+                'signatureAlgorithm' => $AlgorithmIdentifier,
+                'signature'          => array('type' => FILE_ASN1_TYPE_BIT_STRING)
+            )
+        );
+
+        $this->CRLNumber = array('type' => FILE_ASN1_TYPE_INTEGER);
+
+        $this->CRLReason = array('type' => FILE_ASN1_TYPE_ENUMERATED,
+           'mapping' => array(
+                            'unspecified',
+                            'keyCompromise',
+                            'cACompromise',
+                            'affiliationChanged',
+                            'superseded',
+                            'cessationOfOperation',
+                            'certificateHold',
+                            // Value 7 is not used.
+                            8 => 'removeFromCRL',
+                            'privilegeWithdrawn',
+                            'aACompromise'
+            )
+        );
+
+        $this->IssuingDistributionPoint = array('type' => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'distributionPoint'          => array(
+                                                    'constant' => 0,
+                                                    'optional' => true,
+                                                    'explicit' => true
+                                                ) + $DistributionPointName,
+                'onlyContainsUserCerts'      => array(
+                                                    'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                                    'constant' => 1,
+                                                    'optional' => true,
+                                                    'default'  => false,
+                                                    'implicit' => true
+                                                ),
+                'onlyContainsCACerts'        => array(
+                                                    'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                                    'constant' => 2,
+                                                    'optional' => true,
+                                                    'default'  => false,
+                                                    'implicit' => true
+                                                ),
+                'onlySomeReasons'           => array(
+                                                    'constant' => 3,
+                                                    'optional' => true,
+                                                    'implicit' => true
+                                                ) + $ReasonFlags,
+                'indirectCRL'               => array(
+                                                    'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                                    'constant' => 4,
+                                                    'optional' => true,
+                                                    'default'  => false,
+                                                    'implicit' => true
+                                                ),
+                'onlyContainsAttributeCerts' => array(
+                                                    'type'     => FILE_ASN1_TYPE_BOOLEAN,
+                                                    'constant' => 5,
+                                                    'optional' => true,
+                                                    'default'  => false,
+                                                    'implicit' => true
+                                                )
+                          )
+        );
+
+        $this->InvalidityDate = array('type' => FILE_ASN1_TYPE_GENERALIZED_TIME);
+
+        $this->CertificateIssuer = $GeneralNames;
+
+        $this->HoldInstructionCode = array('type' => FILE_ASN1_TYPE_OBJECT_IDENTIFIER);
+
+        $PublicKeyAndChallenge = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'spki'      => $SubjectPublicKeyInfo,
+                'challenge' => array('type' => FILE_ASN1_TYPE_IA5_STRING)
+            )
+        );
+
+        $this->SignedPublicKeyAndChallenge = array(
+            'type'     => FILE_ASN1_TYPE_SEQUENCE,
+            'children' => array(
+                'publicKeyAndChallenge' => $PublicKeyAndChallenge,
+                'signatureAlgorithm'    => $AlgorithmIdentifier,
+                'signature'             => array('type' => FILE_ASN1_TYPE_BIT_STRING)
+            )
+        );
+
+        // OIDs from RFC5280 and those RFCs mentioned in RFC5280#section-4.1.1.2
+        $this->oids = array(
+            '1.3.6.1.5.5.7' => 'id-pkix',
+            '1.3.6.1.5.5.7.1' => 'id-pe',
+            '1.3.6.1.5.5.7.2' => 'id-qt',
+            '1.3.6.1.5.5.7.3' => 'id-kp',
+            '1.3.6.1.5.5.7.48' => 'id-ad',
+            '1.3.6.1.5.5.7.2.1' => 'id-qt-cps',
+            '1.3.6.1.5.5.7.2.2' => 'id-qt-unotice',
+            '1.3.6.1.5.5.7.48.1' =>'id-ad-ocsp',
+            '1.3.6.1.5.5.7.48.2' => 'id-ad-caIssuers',
+            '1.3.6.1.5.5.7.48.3' => 'id-ad-timeStamping',
+            '1.3.6.1.5.5.7.48.5' => 'id-ad-caRepository',
+            '2.5.4' => 'id-at',
+            '2.5.4.41' => 'id-at-name',
+            '2.5.4.4' => 'id-at-surname',
+            '2.5.4.42' => 'id-at-givenName',
+            '2.5.4.43' => 'id-at-initials',
+            '2.5.4.44' => 'id-at-generationQualifier',
+            '2.5.4.3' => 'id-at-commonName',
+            '2.5.4.7' => 'id-at-localityName',
+            '2.5.4.8' => 'id-at-stateOrProvinceName',
+            '2.5.4.10' => 'id-at-organizationName',
+            '2.5.4.11' => 'id-at-organizationalUnitName',
+            '2.5.4.12' => 'id-at-title',
+            '2.5.4.13' => 'id-at-description',
+            '2.5.4.46' => 'id-at-dnQualifier',
+            '2.5.4.6' => 'id-at-countryName',
+            '2.5.4.5' => 'id-at-serialNumber',
+            '2.5.4.65' => 'id-at-pseudonym',
+            '2.5.4.17' => 'id-at-postalCode',
+            '2.5.4.9' => 'id-at-streetAddress',
+            '2.5.4.45' => 'id-at-uniqueIdentifier',
+            '2.5.4.72' => 'id-at-role',
+
+            '0.9.2342.19200300.100.1.25' => 'id-domainComponent',
+            '1.2.840.113549.1.9' => 'pkcs-9',
+            '1.2.840.113549.1.9.1' => 'pkcs-9-at-emailAddress',
+            '2.5.29' => 'id-ce',
+            '2.5.29.35' => 'id-ce-authorityKeyIdentifier',
+            '2.5.29.14' => 'id-ce-subjectKeyIdentifier',
+            '2.5.29.15' => 'id-ce-keyUsage',
+            '2.5.29.16' => 'id-ce-privateKeyUsagePeriod',
+            '2.5.29.32' => 'id-ce-certificatePolicies',
+            '2.5.29.32.0' => 'anyPolicy',
+
+            '2.5.29.33' => 'id-ce-policyMappings',
+            '2.5.29.17' => 'id-ce-subjectAltName',
+            '2.5.29.18' => 'id-ce-issuerAltName',
+            '2.5.29.9' => 'id-ce-subjectDirectoryAttributes',
+            '2.5.29.19' => 'id-ce-basicConstraints',
+            '2.5.29.30' => 'id-ce-nameConstraints',
+            '2.5.29.36' => 'id-ce-policyConstraints',
+            '2.5.29.31' => 'id-ce-cRLDistributionPoints',
+            '2.5.29.37' => 'id-ce-extKeyUsage',
+            '2.5.29.37.0' => 'anyExtendedKeyUsage',
+            '1.3.6.1.5.5.7.3.1' => 'id-kp-serverAuth',
+            '1.3.6.1.5.5.7.3.2' => 'id-kp-clientAuth',
+            '1.3.6.1.5.5.7.3.3' => 'id-kp-codeSigning',
+            '1.3.6.1.5.5.7.3.4' => 'id-kp-emailProtection',
+            '1.3.6.1.5.5.7.3.8' => 'id-kp-timeStamping',
+            '1.3.6.1.5.5.7.3.9' => 'id-kp-OCSPSigning',
+            '2.5.29.54' => 'id-ce-inhibitAnyPolicy',
+            '2.5.29.46' => 'id-ce-freshestCRL',
+            '1.3.6.1.5.5.7.1.1' => 'id-pe-authorityInfoAccess',
+            '1.3.6.1.5.5.7.1.11' => 'id-pe-subjectInfoAccess',
+            '2.5.29.20' => 'id-ce-cRLNumber',
+            '2.5.29.28' => 'id-ce-issuingDistributionPoint',
+            '2.5.29.27' => 'id-ce-deltaCRLIndicator',
+            '2.5.29.21' => 'id-ce-cRLReasons',
+            '2.5.29.29' => 'id-ce-certificateIssuer',
+            '2.5.29.23' => 'id-ce-holdInstructionCode',
+            '1.2.840.10040.2' => 'holdInstruction',
+            '1.2.840.10040.2.1' => 'id-holdinstruction-none',
+            '1.2.840.10040.2.2' => 'id-holdinstruction-callissuer',
+            '1.2.840.10040.2.3' => 'id-holdinstruction-reject',
+            '2.5.29.24' => 'id-ce-invalidityDate',
+
+            '1.2.840.113549.2.2' => 'md2',
+            '1.2.840.113549.2.5' => 'md5',
+            '1.3.14.3.2.26' => 'id-sha1',
+            '1.2.840.10040.4.1' => 'id-dsa',
+            '1.2.840.10040.4.3' => 'id-dsa-with-sha1',
+            '1.2.840.113549.1.1' => 'pkcs-1',
+            '1.2.840.113549.1.1.1' => 'rsaEncryption',
+            '1.2.840.113549.1.1.2' => 'md2WithRSAEncryption',
+            '1.2.840.113549.1.1.4' => 'md5WithRSAEncryption',
+            '1.2.840.113549.1.1.5' => 'sha1WithRSAEncryption',
+            '1.2.840.10046.2.1' => 'dhpublicnumber',
+            '2.16.840.1.101.2.1.1.22' => 'id-keyExchangeAlgorithm',
+            '1.2.840.10045' => 'ansi-X9-62',
+            '1.2.840.10045.4' => 'id-ecSigType',
+            '1.2.840.10045.4.1' => 'ecdsa-with-SHA1',
+            '1.2.840.10045.1' => 'id-fieldType',
+            '1.2.840.10045.1.1' => 'prime-field',
+            '1.2.840.10045.1.2' => 'characteristic-two-field',
+            '1.2.840.10045.1.2.3' => 'id-characteristic-two-basis',
+            '1.2.840.10045.1.2.3.1' => 'gnBasis',
+            '1.2.840.10045.1.2.3.2' => 'tpBasis',
+            '1.2.840.10045.1.2.3.3' => 'ppBasis',
+            '1.2.840.10045.2' => 'id-publicKeyType',
+            '1.2.840.10045.2.1' => 'id-ecPublicKey',
+            '1.2.840.10045.3' => 'ellipticCurve',
+            '1.2.840.10045.3.0' => 'c-TwoCurve',
+            '1.2.840.10045.3.0.1' => 'c2pnb163v1',
+            '1.2.840.10045.3.0.2' => 'c2pnb163v2',
+            '1.2.840.10045.3.0.3' => 'c2pnb163v3',
+            '1.2.840.10045.3.0.4' => 'c2pnb176w1',
+            '1.2.840.10045.3.0.5' => 'c2pnb191v1',
+            '1.2.840.10045.3.0.6' => 'c2pnb191v2',
+            '1.2.840.10045.3.0.7' => 'c2pnb191v3',
+            '1.2.840.10045.3.0.8' => 'c2pnb191v4',
+            '1.2.840.10045.3.0.9' => 'c2pnb191v5',
+            '1.2.840.10045.3.0.10' => 'c2pnb208w1',
+            '1.2.840.10045.3.0.11' => 'c2pnb239v1',
+            '1.2.840.10045.3.0.12' => 'c2pnb239v2',
+            '1.2.840.10045.3.0.13' => 'c2pnb239v3',
+            '1.2.840.10045.3.0.14' => 'c2pnb239v4',
+            '1.2.840.10045.3.0.15' => 'c2pnb239v5',
+            '1.2.840.10045.3.0.16' => 'c2pnb272w1',
+            '1.2.840.10045.3.0.17' => 'c2pnb304w1',
+            '1.2.840.10045.3.0.18' => 'c2pnb359v1',
+            '1.2.840.10045.3.0.19' => 'c2pnb368w1',
+            '1.2.840.10045.3.0.20' => 'c2pnb431r1',
+            '1.2.840.10045.3.1' => 'primeCurve',
+            '1.2.840.10045.3.1.1' => 'prime192v1',
+            '1.2.840.10045.3.1.2' => 'prime192v2',
+            '1.2.840.10045.3.1.3' => 'prime192v3',
+            '1.2.840.10045.3.1.4' => 'prime239v1',
+            '1.2.840.10045.3.1.5' => 'prime239v2',
+            '1.2.840.10045.3.1.6' => 'prime239v3',
+            '1.2.840.10045.3.1.7' => 'prime256v1',
+            '1.2.840.113549.1.1.7' => 'id-RSAES-OAEP',
+            '1.2.840.113549.1.1.9' => 'id-pSpecified',
+            '1.2.840.113549.1.1.10' => 'id-RSASSA-PSS',
+            '1.2.840.113549.1.1.8' => 'id-mgf1',
+            '1.2.840.113549.1.1.14' => 'sha224WithRSAEncryption',
+            '1.2.840.113549.1.1.11' => 'sha256WithRSAEncryption',
+            '1.2.840.113549.1.1.12' => 'sha384WithRSAEncryption',
+            '1.2.840.113549.1.1.13' => 'sha512WithRSAEncryption',
+            '2.16.840.1.101.3.4.2.4' => 'id-sha224',
+            '2.16.840.1.101.3.4.2.1' => 'id-sha256',
+            '2.16.840.1.101.3.4.2.2' => 'id-sha384',
+            '2.16.840.1.101.3.4.2.3' => 'id-sha512',
+            '1.2.643.2.2.4' => 'id-GostR3411-94-with-GostR3410-94',
+            '1.2.643.2.2.3' => 'id-GostR3411-94-with-GostR3410-2001',
+            '1.2.643.2.2.20' => 'id-GostR3410-2001',
+            '1.2.643.2.2.19' => 'id-GostR3410-94',
+            // Netscape Object Identifiers from "Netscape Certificate Extensions"
+            '2.16.840.1.113730' => 'netscape',
+            '2.16.840.1.113730.1' => 'netscape-cert-extension',
+            '2.16.840.1.113730.1.1' => 'netscape-cert-type',
+            '2.16.840.1.113730.1.13' => 'netscape-comment',
+            '2.16.840.1.113730.1.8' => 'netscape-ca-policy-url',
+            // the following are X.509 extensions not supported by phpseclib
+            '1.3.6.1.5.5.7.1.12' => 'id-pe-logotype',
+            '1.2.840.113533.7.65.0' => 'entrustVersInfo',
+            '2.16.840.1.113733.1.6.9' => 'verisignPrivate',
+            // for Certificate Signing Requests
+            // see http://tools.ietf.org/html/rfc2985
+            '1.2.840.113549.1.9.2' => 'pkcs-9-at-unstructuredName', // PKCS #9 unstructured name
+            '1.2.840.113549.1.9.7' => 'pkcs-9-at-challengePassword', // Challenge password for certificate revocations
+            '1.2.840.113549.1.9.14' => 'pkcs-9-at-extensionRequest' // Certificate extension request
+        );
+    }
+
+    /**
+     * Load X.509 certificate
+     *
+     * Returns an associative array describing the X.509 cert or a false if the cert failed to load
+     *
+     * @param String $cert
+     * @access public
+     * @return Mixed
+     */
+    function loadX509($cert)
+    {
+        if (is_array($cert) && isset($cert['tbsCertificate'])) {
+            unset($this->currentCert);
+            unset($this->currentKeyIdentifier);
+            $this->dn = $cert['tbsCertificate']['subject'];
+            if (!isset($this->dn)) {
+                return false;
+            }
+            $this->currentCert = $cert;
+
+            $currentKeyIdentifier = $this->getExtension('id-ce-subjectKeyIdentifier');
+            $this->currentKeyIdentifier = is_string($currentKeyIdentifier) ? $currentKeyIdentifier : NULL;
+
+            unset($this->signatureSubject);
+
+            return $cert;
+        }
+
+        $asn1 = new File_ASN1();
+
+        /*
+            X.509 certs are assumed to be base64 encoded but sometimes they'll have additional things in them above and beyond the ceritificate. ie.
+            some may have the following preceeding the -----BEGIN CERTIFICATE----- line:
+
+            subject=/O=organization/OU=org unit/CN=common name
+            issuer=/O=organization/CN=common name
+        */
+        $temp = preg_replace('#^(?:[^-].+[\r\n]+)+|-.+-|[\r\n]| #', '', $cert);
+        $temp = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $temp) ? base64_decode($temp) : false;
+        if ($temp != false) {
+            $cert = $temp;
+        }
+
+        if ($cert === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $asn1->loadOIDs($this->oids);
+        $decoded = $asn1->decodeBER($cert);
+
+        if (!empty($decoded)) {
+            $x509 = $asn1->asn1map($decoded[0], $this->Certificate);
+        }
+        if (!isset($x509) || $x509 === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $this->signatureSubject = substr($cert, $decoded[0]['content'][0]['start'], $decoded[0]['content'][0]['length']);
+
+        $this->_mapInExtensions($x509, 'tbsCertificate/extensions', $asn1);
+
+        $key = &$x509['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'];
+        $key = $this->_reformatKey($x509['tbsCertificate']['subjectPublicKeyInfo']['algorithm']['algorithm'], $key);
+
+        $this->currentCert = $x509;
+        $this->dn = $x509['tbsCertificate']['subject'];
+
+        $currentKeyIdentifier = $this->getExtension('id-ce-subjectKeyIdentifier');
+        $this->currentKeyIdentifier = is_string($currentKeyIdentifier) ? $currentKeyIdentifier : NULL;
+
+        return $x509;
+    }
+
+    /**
+     * Save X.509 certificate
+     *
+     * @param Array $cert
+     * @param Integer $format optional
+     * @access public
+     * @return String
+     */
+    function saveX509($cert, $format = FILE_X509_FORMAT_PEM)
+    {
+        if (!is_array($cert) || !isset($cert['tbsCertificate'])) {
+            return false;
+        }
+
+        switch (true) {
+            // "case !$a: case !$b: break; default: whatever();" is the same thing as "if ($a && $b) whatever()"
+            case !($algorithm = $this->_subArray($cert, 'tbsCertificate/subjectPublicKeyInfo/algorithm/algorithm')):
+            case is_object($cert['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey']):
+                break;
+            default:
+                switch ($algorithm) {
+                    case 'rsaEncryption':
+                        $cert['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'] = 
+                            base64_encode("\0" . base64_decode(preg_replace('#-.+-|[\r\n]#', '', $cert['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'])));
+                }
+        }
+
+        $asn1 = new File_ASN1();
+
+        $asn1->loadOIDs($this->oids);
+
+        $filters = array();
+        $filters['tbsCertificate']['signature']['parameters'] = 
+        $filters['tbsCertificate']['signature']['issuer']['rdnSequence']['value'] = 
+        $filters['tbsCertificate']['issuer']['rdnSequence']['value'] = 
+        $filters['tbsCertificate']['subject']['rdnSequence']['value'] = 
+        $filters['tbsCertificate']['subjectPublicKeyInfo']['algorithm']['parameters'] = 
+        $filters['signatureAlgorithm']['parameters'] = 
+        $filters['authorityCertIssuer']['directoryName']['rdnSequence']['value'] = 
+        //$filters['policyQualifiers']['qualifier'] = 
+        $filters['distributionPoint']['fullName']['directoryName']['rdnSequence']['value'] = 
+        $filters['directoryName']['rdnSequence']['value'] = 
+            array('type' => FILE_ASN1_TYPE_UTF8_STRING);
+        /* in the case of policyQualifiers/qualifier, the type has to be FILE_ASN1_TYPE_IA5_STRING.
+           FILE_ASN1_TYPE_PRINTABLE_STRING will cause OpenSSL's X.509 parser to spit out random
+           characters.
+         */
+        $filters['policyQualifiers']['qualifier'] = 
+            array('type' => FILE_ASN1_TYPE_IA5_STRING);
+
+        $asn1->loadFilters($filters);
+
+        $this->_mapOutExtensions($cert, 'tbsCertificate/extensions', $asn1);
+
+        $cert = $asn1->encodeDER($cert, $this->Certificate);
+
+        switch ($format) {
+            case FILE_X509_FORMAT_DER:
+                return $cert;
+            // case FILE_X509_FORMAT_PEM:
+            default:
+                return "-----BEGIN CERTIFICATE-----\r\n" . chunk_split(base64_encode($cert), 64) . '-----END CERTIFICATE-----';
+        }
+    }
+
+    /**
+     * Map extension values from octet string to extension-specific internal
+     *   format.
+     *
+     * @param Array ref $root
+     * @param String $path
+     * @param Object $asn1
+     * @access private
+     */
+    function _mapInExtensions(&$root, $path, $asn1)
+    {
+        $extensions = &$this->_subArray($root, $path);
+
+        if (is_array($extensions)) {
+            for ($i = 0; $i < count($extensions); $i++) {
+                $id = $extensions[$i]['extnId'];
+                $value = &$extensions[$i]['extnValue'];
+                $value = base64_decode($value);
+                $decoded = $asn1->decodeBER($value);
+                /* [extnValue] contains the DER encoding of an ASN.1 value
+                   corresponding to the extension type identified by extnID */
+                $map = $this->_getMapping($id);
+                if (!is_bool($map)) {
+                    $mapped = $asn1->asn1map($decoded[0], $map);
+                    $value = $mapped === false ? $decoded[0] : $mapped;
+
+                    if ($id == 'id-ce-certificatePolicies') {
+                        for ($j = 0; $j < count($value); $j++) {
+                            if (!isset($value[$j]['policyQualifiers'])) {
+                                continue;
+                            }
+                            for ($k = 0; $k < count($value[$j]['policyQualifiers']); $k++) {
+                                $subid = $value[$j]['policyQualifiers'][$k]['policyQualifierId'];
+                                $map = $this->_getMapping($subid);
+                                $subvalue = &$value[$j]['policyQualifiers'][$k]['qualifier'];
+                                if ($map !== false) {
+                                    $decoded = $asn1->decodeBER($subvalue);
+                                    $mapped = $asn1->asn1map($decoded[0], $map);
+                                    $subvalue = $mapped === false ? $decoded[0] : $mapped;
+                                }
+                            }
+                        }
+                    }
+                } elseif ($map) {
+                    $value = base64_encode($value);
+                }
+            }
+        }
+    }
+
+    /**
+     * Map extension values from extension-specific internal format to
+     *   octet string.
+     *
+     * @param Array ref $root
+     * @param String $path
+     * @param Object $asn1
+     * @access private
+     */
+    function _mapOutExtensions(&$root, $path, $asn1)
+    {
+        $extensions = &$this->_subArray($root, $path);
+
+        if (is_array($extensions)) {
+            $size = count($extensions);
+            for ($i = 0; $i < $size; $i++) {
+                $id = $extensions[$i]['extnId'];
+                $value = &$extensions[$i]['extnValue'];
+
+                switch ($id) {
+                    case 'id-ce-certificatePolicies':
+                        for ($j = 0; $j < count($value); $j++) {
+                            if (!isset($value[$j]['policyQualifiers'])) {
+                                continue;
+                            }
+                            for ($k = 0; $k < count($value[$j]['policyQualifiers']); $k++) {
+                                $subid = $value[$j]['policyQualifiers'][$k]['policyQualifierId'];
+                                $map = $this->_getMapping($subid);
+                                $subvalue = &$value[$j]['policyQualifiers'][$k]['qualifier'];
+                                if ($map !== false) {
+                                    // by default File_ASN1 will try to render qualifier as a FILE_ASN1_TYPE_IA5_STRING since it's
+                                    // actual type is FILE_ASN1_TYPE_ANY
+                                    $subvalue = new File_ASN1_Element($asn1->encodeDER($subvalue, $map));
+                                }
+                            }
+                        }
+                        break;
+                    case 'id-ce-authorityKeyIdentifier': // use 00 as the serial number instead of an empty string
+                        if (isset($value['authorityCertSerialNumber'])) {
+                            if ($value['authorityCertSerialNumber']->toBytes() == '') {
+                                $temp = chr((FILE_ASN1_CLASS_CONTEXT_SPECIFIC << 6) | 2) . "\1\0";
+                                $value['authorityCertSerialNumber'] = new File_ASN1_Element($temp);
+                            }
+                        }
+                }
+
+                /* [extnValue] contains the DER encoding of an ASN.1 value
+                   corresponding to the extension type identified by extnID */
+                $map = $this->_getMapping($id);
+                if (is_bool($map)) {
+                    if (!$map) {
+                        user_error($id . ' is not a currently supported extension');
+                        unset($extensions[$i]);
+                    }
+                } else {
+                    $temp = $asn1->encodeDER($value, $map);
+                    $value = base64_encode($temp);
+                }
+            }
+        }
+    }
+
+    /**
+     * Map attribute values from ANY type to attribute-specific internal
+     *   format.
+     *
+     * @param Array ref $root
+     * @param String $path
+     * @param Object $asn1
+     * @access private
+     */
+    function _mapInAttributes(&$root, $path, $asn1)
+    {
+        $attributes = &$this->_subArray($root, $path);
+
+        if (is_array($attributes)) {
+            for ($i = 0; $i < count($attributes); $i++) {
+                $id = $attributes[$i]['type'];
+                /* $value contains the DER encoding of an ASN.1 value
+                   corresponding to the attribute type identified by type */
+                $map = $this->_getMapping($id);
+                if (is_array($attributes[$i]['value'])) {
+                    $values = &$attributes[$i]['value'];
+                    for ($j = 0; $j < count($values); $j++) {
+                        $value = $asn1->encodeDER($values[$j], $this->AttributeValue);
+                        $decoded = $asn1->decodeBER($value);
+                        if (!is_bool($map)) {
+                            $mapped = $asn1->asn1map($decoded[0], $map);
+                            if ($mapped !== false) {
+                                $values[$j] = $mapped;
+                            }
+                            if ($id == 'pkcs-9-at-extensionRequest') {
+                                $this->_mapInExtensions($values, $j, $asn1);
+                            }
+                        } elseif ($map) {
+                            $values[$j] = base64_encode($value);
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    /**
+     * Map attribute values from attribute-specific internal format to
+     *   ANY type.
+     *
+     * @param Array ref $root
+     * @param String $path
+     * @param Object $asn1
+     * @access private
+     */
+    function _mapOutAttributes(&$root, $path, $asn1)
+    {
+        $attributes = &$this->_subArray($root, $path);
+
+        if (is_array($attributes)) {
+            $size = count($attributes);
+            for ($i = 0; $i < $size; $i++) {
+                /* [value] contains the DER encoding of an ASN.1 value
+                   corresponding to the attribute type identified by type */
+                $id = $attributes[$i]['type'];
+                $map = $this->_getMapping($id);
+                if ($map === false) {
+                    user_error($id . ' is not a currently supported attribute', E_USER_NOTICE);
+                    unset($attributes[$i]);
+                }
+                elseif (is_array($attributes[$i]['value'])) {
+                    $values = &$attributes[$i]['value'];
+                    for ($j = 0; $j < count($values); $j++) {
+                        switch ($id) {
+                            case 'pkcs-9-at-extensionRequest':
+                                $this->_mapOutExtensions($values, $j, $asn1);
+                                break;
+                        }
+
+                        if (!is_bool($map)) {
+                            $temp = $asn1->encodeDER($values[$j], $map);
+                            $decoded = $asn1->decodeBER($temp);
+                            $values[$j] = $asn1->asn1map($decoded[0], $this->AttributeValue);
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    /**
+     * Associate an extension ID to an extension mapping
+     *
+     * @param String $extnId
+     * @access private
+     * @return Mixed
+     */
+    function _getMapping($extnId)
+    {
+        if (!is_string($extnId)) { // eg. if it's a File_ASN1_Element object
+            return true;
+        }
+
+        switch ($extnId) {
+            case 'id-ce-keyUsage':
+                return $this->KeyUsage;
+            case 'id-ce-basicConstraints':
+                return $this->BasicConstraints;
+            case 'id-ce-subjectKeyIdentifier':
+                return $this->KeyIdentifier;
+            case 'id-ce-cRLDistributionPoints':
+                return $this->CRLDistributionPoints;
+            case 'id-ce-authorityKeyIdentifier':
+                return $this->AuthorityKeyIdentifier;
+            case 'id-ce-certificatePolicies':
+                return $this->CertificatePolicies;
+            case 'id-ce-extKeyUsage':
+                return $this->ExtKeyUsageSyntax;
+            case 'id-pe-authorityInfoAccess':
+                return $this->AuthorityInfoAccessSyntax;
+            case 'id-ce-subjectAltName':
+                return $this->SubjectAltName;
+            case 'id-ce-privateKeyUsagePeriod':
+                return $this->PrivateKeyUsagePeriod;
+            case 'id-ce-issuerAltName':
+                return $this->IssuerAltName;
+            case 'id-ce-policyMappings':
+                return $this->PolicyMappings;
+            case 'id-ce-nameConstraints':
+                return $this->NameConstraints;
+
+            case 'netscape-cert-type':
+                return $this->netscape_cert_type;
+            case 'netscape-comment':
+                return $this->netscape_comment;
+            case 'netscape-ca-policy-url':
+                return $this->netscape_ca_policy_url;
+
+            // since id-qt-cps isn't a constructed type it will have already been decoded as a string by the time it gets
+            // back around to asn1map() and we don't want it decoded again.
+            //case 'id-qt-cps':
+            //    return $this->CPSuri;
+            case 'id-qt-unotice':
+                return $this->UserNotice;
+
+            // the following OIDs are unsupported but we don't want them to give notices when calling saveX509().
+            case 'id-pe-logotype': // http://www.ietf.org/rfc/rfc3709.txt
+            case 'entrustVersInfo':
+            // http://support.microsoft.com/kb/287547
+            case '1.3.6.1.4.1.311.20.2': // szOID_ENROLL_CERTTYPE_EXTENSION
+            case '1.3.6.1.4.1.311.21.1': // szOID_CERTSRV_CA_VERSION
+            // "SET Secure Electronic Transaction Specification"
+            // http://www.maithean.com/docs/set_bk3.pdf
+            case '2.23.42.7.0': // id-set-hashedRootKey
+                return true;
+
+            // CSR attributes
+            case 'pkcs-9-at-unstructuredName':
+                return $this->PKCS9String;
+            case 'pkcs-9-at-challengePassword':
+                return $this->DirectoryString;
+            case 'pkcs-9-at-extensionRequest':
+                return $this->Extensions;
+
+            // CRL extensions.
+            case 'id-ce-cRLNumber':
+                return $this->CRLNumber;
+            case 'id-ce-deltaCRLIndicator':
+                return $this->CRLNumber;
+            case 'id-ce-issuingDistributionPoint':
+                return $this->IssuingDistributionPoint;
+            case 'id-ce-freshestCRL':
+                return $this->CRLDistributionPoints;
+            case 'id-ce-cRLReasons':
+                return $this->CRLReason;
+            case 'id-ce-invalidityDate':
+                return $this->InvalidityDate;
+            case 'id-ce-certificateIssuer':
+                return $this->CertificateIssuer;
+            case 'id-ce-holdInstructionCode':
+                return $this->HoldInstructionCode;
+        }
+
+        return false;
+    }
+
+    /**
+     * Load an X.509 certificate as a certificate authority
+     *
+     * @param String $cert
+     * @access public
+     * @return Boolean
+     */
+    function loadCA($cert)
+    {
+        $olddn = $this->dn;
+        $oldcert = $this->currentCert;
+        $oldsigsubj = $this->signatureSubject;
+        $oldkeyid = $this->currentKeyIdentifier;
+
+        $cert = $this->loadX509($cert);
+        if (!$cert) {
+            $this->dn = $olddn;
+            $this->currentCert = $oldcert;
+            $this->signatureSubject = $oldsigsubj;
+            $this->currentKeyIdentifier = $oldkeyid;
+
+            return false;
+        }
+
+        /* From RFC5280 "PKIX Certificate and CRL Profile":
+
+           If the keyUsage extension is present, then the subject public key
+           MUST NOT be used to verify signatures on certificates or CRLs unless
+           the corresponding keyCertSign or cRLSign bit is set. */
+        //$keyUsage = $this->getExtension('id-ce-keyUsage');
+        //if ($keyUsage && !in_array('keyCertSign', $keyUsage)) {
+        //    return false;
+        //}
+
+        /* From RFC5280 "PKIX Certificate and CRL Profile":
+
+           The cA boolean indicates whether the certified public key may be used
+           to verify certificate signatures.  If the cA boolean is not asserted,
+           then the keyCertSign bit in the key usage extension MUST NOT be
+           asserted.  If the basic constraints extension is not present in a
+           version 3 certificate, or the extension is present but the cA boolean
+           is not asserted, then the certified public key MUST NOT be used to
+           verify certificate signatures. */
+        //$basicConstraints = $this->getExtension('id-ce-basicConstraints');
+        //if (!$basicConstraints || !$basicConstraints['cA']) {
+        //    return false;
+        //}
+
+        $this->CAs[] = $cert;
+
+        $this->dn = $olddn;
+        $this->currentCert = $oldcert;
+        $this->signatureSubject = $oldsigsubj;
+
+        return true;
+    }
+
+    /**
+     * Validate an X.509 certificate against a URL
+     *
+     * From RFC2818 "HTTP over TLS":
+     *
+     * Matching is performed using the matching rules specified by
+     * [RFC2459].  If more than one identity of a given type is present in
+     * the certificate (e.g., more than one dNSName name, a match in any one
+     * of the set is considered acceptable.) Names may contain the wildcard
+     * character * which is considered to match any single domain name
+     * component or component fragment. E.g., *.a.com matches foo.a.com but
+     * not bar.foo.a.com. f*.com matches foo.com but not bar.com.
+     *
+     * @param String $url
+     * @access public
+     * @return Boolean
+     */
+    function validateURL($url)
+    {
+        if (!is_array($this->currentCert) || !isset($this->currentCert['tbsCertificate'])) {
+            return false;
+        }
+
+        $components = parse_url($url);
+        if (!isset($components['host'])) {
+            return false;
+        }
+
+        if ($names = $this->getExtension('id-ce-subjectAltName')) {
+            foreach ($names as $key => $value) {
+                $value = str_replace(array('.', '*'), array('\.', '[^.]*'), $value);
+                switch ($key) {
+                    case 'dNSName':
+                        /* From RFC2818 "HTTP over TLS":
+
+                           If a subjectAltName extension of type dNSName is present, that MUST
+                           be used as the identity. Otherwise, the (most specific) Common Name
+                           field in the Subject field of the certificate MUST be used. Although
+                           the use of the Common Name is existing practice, it is deprecated and
+                           Certification Authorities are encouraged to use the dNSName instead. */
+                        if (preg_match('#^' . $value . '$#', $components['host'])) {
+                            return true;
+                        }
+                        break;
+                    case 'iPAddress':
+                        /* From RFC2818 "HTTP over TLS":
+
+                           In some cases, the URI is specified as an IP address rather than a
+                           hostname. In this case, the iPAddress subjectAltName must be present
+                           in the certificate and must exactly match the IP in the URI. */
+                        if (preg_match('#(?:\d{1-3}\.){4}#', $components['host'] . '.') && preg_match('#^' . $value . '$#', $components['host'])) {
+                            return true;
+                        }
+                }
+            }
+            return false;
+        }
+
+        if ($value = $this->getDNProp('id-at-commonName')) {
+            $value = str_replace(array('.', '*'), array('\.', '[^.]*'), $value[0]);
+            return preg_match('#^' . $value . '$#', $components['host']);
+        }
+
+        return false;
+    }
+
+    /**
+     * Validate a date
+     *
+     * If $date isn't defined it is assumed to be the current date.
+     *
+     * @param Integer $date optional
+     * @access public
+     */
+    function validateDate($date = NULL)
+    {
+        if (!is_array($this->currentCert) || !isset($this->currentCert['tbsCertificate'])) {
+            return false;
+        }
+
+        if (!isset($date)) {
+            $date = time();
+        }
+
+        $notBefore = $this->currentCert['tbsCertificate']['validity']['notBefore'];
+        $notBefore = isset($notBefore['generalTime']) ? $notBefore['generalTime'] : $notBefore['utcTime'];
+
+        $notAfter = $this->currentCert['tbsCertificate']['validity']['notAfter'];
+        $notAfter = isset($notAfter['generalTime']) ? $notAfter['generalTime'] : $notAfter['utcTime'];
+
+        switch (true) {
+            case $date < @strtotime($notBefore):
+            case $date > @strtotime($notAfter):
+                return false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Validate a signature
+     *
+     * Works on X.509 certs, CSR's and CRL's.
+     * Returns true if the signature is verified, false if it is not correct or NULL on error
+     *
+     * The behavior of this function is inspired by {@link http://php.net/openssl-verify openssl_verify}.
+     *
+     * @param Integer $options optional
+     * @access public
+     * @return Mixed
+     */
+    function validateSignature($options = 0)
+    {
+        if (!is_array($this->currentCert) || !isset($this->signatureSubject)) {
+            return 0;
+        }
+
+        /* TODO:
+           "emailAddress attribute values are not case-sensitive (e.g., "subscriber@example.com" is the same as "SUBSCRIBER@EXAMPLE.COM")."
+            -- http://tools.ietf.org/html/rfc5280#section-4.1.2.6
+
+           implement pathLenConstraint in the id-ce-basicConstraints extension */
+
+        switch (true) {
+            case isset($this->currentCert['tbsCertificate']):
+                // self-signed cert
+                if ($this->currentCert['tbsCertificate']['issuer'] === $this->currentCert['tbsCertificate']['subject']) {
+                    $authorityKey = $this->getExtension('id-ce-authorityKeyIdentifier');
+                    $subjectKeyID = $this->getExtension('id-ce-subjectKeyIdentifier');
+                    switch (true) {
+                        case !is_array($authorityKey):
+                        case is_array($authorityKey) && isset($authorityKey['keyIdentifier']) && $authorityKey['keyIdentifier'] === $subjectKeyID:
+                            $signingCert = $this->currentCert; // working cert
+                    }
+                }
+
+                if (!empty($this->CAs)) {
+                    for ($i = 0; $i < count($this->CAs); $i++) {
+                        // even if the cert is a self-signed one we still want to see if it's a CA;
+                        // if not, we'll conditionally return an error
+                        $ca = $this->CAs[$i];
+                        if ($this->currentCert['tbsCertificate']['issuer'] === $ca['tbsCertificate']['subject']) {
+                            $authorityKey = $this->getExtension('id-ce-authorityKeyIdentifier');
+                            $subjectKeyID = $this->getExtension('id-ce-subjectKeyIdentifier', $ca);
+                            switch (true) {
+                                case !is_array($authorityKey):
+                                case is_array($authorityKey) && isset($authorityKey['keyIdentifier']) && $authorityKey['keyIdentifier'] === $subjectKeyID:
+                                    $signingCert = $ca; // working cert
+                                    break 2;
+                            }
+                        }
+                    }
+                    if (count($this->CAs) == $i && ($options & FILE_X509_VALIDATE_SIGNATURE_BY_CA)) {
+                        return false;
+                    }
+                } elseif (!isset($signingCert) || ($options & FILE_X509_VALIDATE_SIGNATURE_BY_CA)) {
+                    return false;
+                }
+                return $this->_validateSignature(
+                    $signingCert['tbsCertificate']['subjectPublicKeyInfo']['algorithm']['algorithm'],
+                    $signingCert['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'],
+                    $this->currentCert['signatureAlgorithm']['algorithm'],
+                    substr(base64_decode($this->currentCert['signature']), 1),
+                    $this->signatureSubject
+                );
+            case isset($this->currentCert['certificationRequestInfo']):
+                return $this->_validateSignature(
+                    $this->currentCert['certificationRequestInfo']['subjectPKInfo']['algorithm']['algorithm'],
+                    $this->currentCert['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey'],
+                    $this->currentCert['signatureAlgorithm']['algorithm'],
+                    substr(base64_decode($this->currentCert['signature']), 1),
+                    $this->signatureSubject
+                );
+            case isset($this->currentCert['publicKeyAndChallenge']):
+                return $this->_validateSignature(
+                    $this->currentCert['publicKeyAndChallenge']['spki']['algorithm']['algorithm'],
+                    $this->currentCert['publicKeyAndChallenge']['spki']['subjectPublicKey'],
+                    $this->currentCert['signatureAlgorithm']['algorithm'],
+                    substr(base64_decode($this->currentCert['signature']), 1),
+                    $this->signatureSubject
+                );
+            case isset($this->currentCert['tbsCertList']):
+                if (!empty($this->CAs)) {
+                    for ($i = 0; $i < count($this->CAs); $i++) {
+                        $ca = $this->CAs[$i];
+                        if ($this->currentCert['tbsCertList']['issuer'] === $ca['tbsCertificate']['subject']) {
+                            $authorityKey = $this->getExtension('id-ce-authorityKeyIdentifier');
+                            $subjectKeyID = $this->getExtension('id-ce-subjectKeyIdentifier', $ca);
+                            switch (true) {
+                                case !is_array($authorityKey):
+                                case is_array($authorityKey) && isset($authorityKey['keyIdentifier']) && $authorityKey['keyIdentifier'] === $subjectKeyID:
+                                    $signingCert = $ca; // working cert
+                                    break 2;
+                            }
+                        }
+                    }
+                }
+                if (!isset($signingCert)) {
+                    return false;
+                }
+                return $this->_validateSignature(
+                    $signingCert['tbsCertificate']['subjectPublicKeyInfo']['algorithm']['algorithm'],
+                    $signingCert['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'],
+                    $this->currentCert['signatureAlgorithm']['algorithm'],
+                    substr(base64_decode($this->currentCert['signature']), 1),
+                    $this->signatureSubject
+                );
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Validates a signature
+     *
+     * Returns true if the signature is verified, false if it is not correct or NULL on error
+     *
+     * @param String $publicKeyAlgorithm
+     * @param String $publicKey
+     * @param String $signatureAlgorithm
+     * @param String $signature
+     * @param String $signatureSubject
+     * @access private
+     * @return Integer
+     */
+    function _validateSignature($publicKeyAlgorithm, $publicKey, $signatureAlgorithm, $signature, $signatureSubject)
+    {
+        switch ($publicKeyAlgorithm) {
+            case 'rsaEncryption':
+                if (!class_exists('Crypt_RSA')) {
+                    require_once('Crypt/RSA.php');
+                }
+                $rsa = new Crypt_RSA();
+                $rsa->loadKey($publicKey);
+
+                switch ($signatureAlgorithm) {
+                    case 'md2WithRSAEncryption':
+                    case 'md5WithRSAEncryption':
+                    case 'sha1WithRSAEncryption':
+                    case 'sha224WithRSAEncryption':
+                    case 'sha256WithRSAEncryption':
+                    case 'sha384WithRSAEncryption':
+                    case 'sha512WithRSAEncryption':
+                        $rsa->setHash(preg_replace('#WithRSAEncryption$#', '', $signatureAlgorithm));
+                        $rsa->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);
+                        if (!@$rsa->verify($signatureSubject, $signature)) {
+                            return false;
+                        }
+                        break;
+                    default:
+                        return NULL;
+                }
+                break;
+            default:
+                return NULL;
+        }
+
+        return true;
+    }
+
+    /**
+     * Reformat public keys
+     *
+     * Reformats a public key to a format supported by phpseclib (if applicable)
+     *
+     * @param String $algorithm
+     * @param String $key
+     * @access private
+     * @return String
+     */
+    function _reformatKey($algorithm, $key)
+    {
+        switch ($algorithm) {
+            case 'rsaEncryption':
+                return
+                    "-----BEGIN PUBLIC KEY-----\r\n" .
+                    // subjectPublicKey is stored as a bit string in X.509 certs.  the first byte of a bit string represents how many bits
+                    // in the last byte should be ignored.  the following only supports non-zero stuff but as none of the X.509 certs Firefox
+                    // uses as a cert authority actually use a non-zero bit I think it's safe to assume that none do.
+                    chunk_split(base64_encode(substr(base64_decode($key), 1)), 64) .
+                    '-----END PUBLIC KEY-----';
+            default:
+                return $key;
+        }
+    }
+
+    /**
+     * "Normalizes" a Distinguished Name property
+     *
+     * @param String $propName
+     * @access private
+     * @return Mixed
+     */
+    function _translateDNProp($propName)
+    {
+        switch (strtolower($propName)) {
+            case 'id-at-countryname':
+            case 'countryname':
+            case 'c':
+                return 'id-at-countryName';
+            case 'id-at-organizationname':
+            case 'organizationname':
+            case 'o':
+                return 'id-at-organizationName';
+            case 'id-at-dnqualifier':
+            case 'dnqualifier':
+                return 'id-at-dnQualifier';
+            case 'id-at-commonname':
+            case 'commonname':
+            case 'cn':
+                return 'id-at-commonName';
+            case 'id-at-stateorprovinceName':
+            case 'stateorprovincename':
+            case 'state':
+            case 'province':
+            case 'provincename':
+            case 'st':
+                return 'id-at-stateOrProvinceName';
+            case 'id-at-localityname':
+            case 'localityname':
+            case 'l':
+                return 'id-at-localityName';
+            case 'id-emailaddress':
+            case 'emailaddress':
+                return 'pkcs-9-at-emailAddress';
+            case 'id-at-serialnumber':
+            case 'serialnumber':
+                return 'id-at-serialNumber';
+            case 'id-at-postalcode':
+            case 'postalcode':
+                return 'id-at-postalCode';
+            case 'id-at-streetaddress':
+            case 'streetaddress':
+                return 'id-at-streetAddress';
+            case 'id-at-name':
+            case 'name':
+                return 'id-at-name';
+            case 'id-at-givenname':
+            case 'givenname':
+                return 'id-at-givenName';
+            case 'id-at-surname':
+            case 'surname':
+            case 'sn':
+                return 'id-at-surname';
+            case 'id-at-initials':
+            case 'initials':
+                return 'id-at-initials';
+            case 'id-at-generationqualifier':
+            case 'generationqualifier':
+                return 'id-at-generationQualifier';
+            case 'id-at-organizationalunitname':
+            case 'organizationalunitname':
+            case 'ou':
+                return 'id-at-organizationalUnitName';
+            case 'id-at-pseudonym':
+            case 'pseudonym':
+                return 'id-at-pseudonym';
+            case 'id-at-title':
+            case 'title':
+                return 'id-at-title';
+            case 'id-at-description':
+            case 'description':
+                return 'id-at-description';
+            case 'id-at-role':
+            case 'role':
+                return 'id-at-role';
+            case 'id-at-uniqueidentifier':
+            case 'uniqueidentifier':
+            case 'x500uniqueidentifier':
+                return 'id-at-uniqueIdentifier';
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Set a Distinguished Name property
+     *
+     * @param String $propName
+     * @param Mixed $propValue
+     * @param String $type optional
+     * @access public
+     * @return Boolean
+     */
+    function setDNProp($propName, $propValue, $type = 'utf8String')
+    {
+        if (empty($this->dn)) {
+            $this->dn = array('rdnSequence' => array());
+        }
+
+        if (($propName = $this->_translateDNProp($propName)) === false) {
+            return false;
+        }
+
+        foreach ((array) $propValue as $v) {
+            if (!is_array($v) && isset($type)) {
+                $v = array($type => $v);
+            }
+            $this->dn['rdnSequence'][] = array(
+                array(
+                    'type' => $propName,
+                    'value'=> $v
+                )
+            );
+        }
+
+        return true;
+    }
+
+    /**
+     * Remove Distinguished Name properties
+     *
+     * @param String $propName
+     * @access public
+     */
+    function removeDNProp($propName)
+    {
+        if (empty($this->dn)) {
+            return;
+        }
+
+        if (($propName = $this->_translateDNProp($propName)) === false) {
+            return;
+        }
+
+        $dn = &$this->dn['rdnSequence'];
+        $size = count($dn);
+        for ($i = 0; $i < $size; $i++) {
+            if ($dn[$i][0]['type'] == $propName) {
+                unset($dn[$i]);
+            }
+        }
+
+        $dn = array_values($dn);
+    }
+
+    /**
+     * Get Distinguished Name properties
+     *
+     * @param String $propName
+     * @param Array $dn optional
+     * @param Boolean $withType optional
+     * @return Mixed
+     * @access public
+     */
+    function getDNProp($propName, $dn = NULL, $withType = false)
+    {
+        if (!isset($dn)) {
+            $dn = $this->dn;
+        }
+
+        if (empty($dn)) {
+            return false;
+        }
+
+        if (($propName = $this->_translateDNProp($propName)) === false) {
+            return false;
+        }
+
+        $dn = $dn['rdnSequence'];
+        $result = array();
+        $asn1 = new File_ASN1();
+        for ($i = 0; $i < count($dn); $i++) {
+            if ($dn[$i][0]['type'] == $propName) {
+                $v = $dn[$i][0]['value'];
+                if (!$withType && is_array($v)) {
+                    foreach ($v as $type => $s) {
+                        $type = array_search($type, $asn1->ANYmap, true);
+                        if ($type !== false && isset($asn1->stringTypeSize[$type])) {
+                            $s = $asn1->convert($s, $type);
+                            if ($s !== false) {
+                                $v = $s;
+                                break;
+                            }
+                        }
+                    }
+                    if (is_array($v)) {
+                        $v = array_pop($v); // Always strip data type.
+                    }
+                }
+                $result[] = $v;
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Set a Distinguished Name
+     *
+     * @param Mixed $dn
+     * @param Boolean $merge optional
+     * @param String $type optional
+     * @access public
+     * @return Boolean
+     */
+    function setDN($dn, $merge = false, $type = 'utf8String')
+    {
+        if (!$merge) {
+            $this->dn = NULL;
+        }
+
+        if (is_array($dn)) {
+            if (isset($dn['rdnSequence'])) {
+                $this->dn = $dn; // No merge here.
+                return true;
+            }
+
+            // handles stuff generated by openssl_x509_parse()
+            foreach ($dn as $prop => $value) {
+                if (!$this->setDNProp($prop, $value, $type)) {
+                    return false;
+                }
+            }
+            return true;
+        }
+
+        // handles everything else
+        $results = preg_split('#((?:^|, *|/)(?:C=|O=|OU=|CN=|L=|ST=|SN=|postalCode=|streetAddress=|emailAddress=|serialNumber=|organizationalUnitName=|title=|description=|role=|x500UniqueIdentifier=))#', $dn, -1, PREG_SPLIT_DELIM_CAPTURE);
+        for ($i = 1; $i < count($results); $i+=2) {
+            $prop = trim($results[$i], ', =/');
+            $value = $results[$i + 1];
+            if (!$this->setDNProp($prop, $value, $type)) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Get the Distinguished Name for a certificates subject
+     *
+     * @param Mixed $format optional
+     * @param Array $dn optional
+     * @access public
+     * @return Boolean
+     */
+    function getDN($format = FILE_X509_DN_ARRAY, $dn = NULL)
+    {
+        if (!isset($dn)) {
+            $dn = isset($this->currentCert['tbsCertList']) ? $this->currentCert['tbsCertList']['issuer'] : $this->dn;
+        }
+
+        switch ((int) $format) {
+            case FILE_X509_DN_ARRAY:
+                return $dn;
+            case FILE_X509_DN_ASN1:
+                $asn1 = new File_ASN1();
+                $asn1->loadOIDs($this->oids);
+                $filters = array();
+                $filters['rdnSequence']['value'] = array('type' => FILE_ASN1_TYPE_UTF8_STRING);
+                $asn1->loadFilters($filters);
+                return $asn1->encodeDER($dn, $this->Name);
+            case FILE_X509_DN_OPENSSL:
+                $dn = $this->getDN(FILE_X509_DN_STRING, $dn);
+                if ($dn === false) {
+                    return false;
+                }
+                $attrs = preg_split('#((?:^|, *|/)[a-z][a-z0-9]*=)#i', $dn, -1, PREG_SPLIT_DELIM_CAPTURE);
+                $dn = array();
+                for ($i = 1; $i < count($attrs); $i += 2) {
+                    $prop = trim($attrs[$i], ', =/');
+                    $value = $attrs[$i + 1];
+                    if (!isset($dn[$prop])) {
+                        $dn[$prop] = $value;
+                    } else {
+                        $dn[$prop] = array_merge((array) $dn[$prop], array($value));
+                    }
+                }
+                return $dn;
+            case FILE_X509_DN_CANON:
+                //  No SEQUENCE around RDNs and all string values normalized as
+                // trimmed lowercase UTF-8 with all spacing  as one blank.
+                $asn1 = new File_ASN1();
+                $asn1->loadOIDs($this->oids);
+                $filters = array();
+                $filters['value'] = array('type' => FILE_ASN1_TYPE_UTF8_STRING);
+                $asn1->loadFilters($filters);
+                $result = '';
+                foreach ($dn['rdnSequence'] as $rdn) {
+                    foreach ($rdn as &$attr) {
+                        if (is_array($attr['value'])) {
+                            foreach ($attr['value'] as $type => $v) {
+                                $type = array_search($type, $asn1->ANYmap, true);
+                                if ($type !== false && isset($asn1->stringTypeSize[$type])) {
+                                    $v = $asn1->convert($v, $type);
+                                    if ($v !== false) {
+                                        $v = preg_replace('/\s+/', ' ', $v);
+                                        $attr['value'] = strtolower(trim($v));
+                                        break;
+                                    }
+                                }
+                            }
+                        }
+                    }
+                    $result .= $asn1->encodeDER($rdn, $this->RelativeDistinguishedName);
+                }
+                return $result;
+            case FILE_X509_DN_HASH:
+                $dn = $this->getDN(FILE_X509_DN_CANON, $dn);
+                if (!class_exists('Crypt_Hash')) {
+                    require_once('Crypt/Hash.php');
+                }
+                $hash = new Crypt_Hash('sha1');
+                $hash = $hash->hash($dn);
+                extract(unpack('Vhash', $hash));
+                return strtolower(bin2hex(pack('N', $hash)));
+        }
+
+        // Defaut is to return a string.
+        $start = true;
+        $output = '';
+        $asn1 = new File_ASN1();
+        foreach ($dn['rdnSequence'] as $field) {
+            $prop = $field[0]['type'];
+            $value = $field[0]['value'];
+
+            $delim = ', ';
+            switch ($prop) {
+                case 'id-at-countryName':
+                    $desc = 'C=';
+                    break;
+                case 'id-at-stateOrProvinceName':
+                    $desc = 'ST=';
+                    break;
+                case 'id-at-organizationName':
+                    $desc = 'O=';
+                    break;
+                case 'id-at-organizationalUnitName':
+                    $desc = 'OU=';
+                    break;
+                case 'id-at-commonName':
+                    $desc = 'CN=';
+                    break;
+                case 'id-at-localityName':
+                    $desc = 'L=';
+                    break;
+                case 'id-at-surname':
+                    $desc = 'SN=';
+                    break;
+                case 'id-at-uniqueIdentifier':
+                    $delim = '/';
+                    $desc = 'x500UniqueIdentifier=';
+                    break;
+                default:
+                    $delim = '/';
+                    $desc = preg_replace('#.+-([^-]+)$#', '$1',  $prop) . '=';
+            }
+
+            if (!$start) {
+                $output.= $delim;
+            }
+            if (is_array($value)) {
+                foreach ($value as $type => $v) {
+                    $type = array_search($type, $asn1->ANYmap, true);
+                    if ($type !== false && isset($asn1->stringTypeSize[$type])) {
+                        $v = $asn1->convert($v, $type);
+                        if ($v !== false) {
+                            $value = $v;
+                            break;
+                        }
+                    }
+                }
+                if (is_array($value)) {
+                    $value = array_pop($value); // Always strip data type.
+                }
+            }
+            $output.= $desc . $value;
+            $start = false;
+        }
+
+        return $output;
+    }
+
+    /**
+     * Get the Distinguished Name for a certificate/crl issuer
+     *
+     * @param Integer $format optional
+     * @access public
+     * @return Mixed
+     */
+    function getIssuerDN($format = FILE_X509_DN_ARRAY)
+    {
+        switch (true) {
+            case !isset($this->currentCert) || !is_array($this->currentCert):
+                break;
+            case isset($this->currentCert['tbsCertificate']):
+                return $this->getDN($format, $this->currentCert['tbsCertificate']['issuer']);
+            case isset($this->currentCert['tbsCertList']):
+                return $this->getDN($format, $this->currentCert['tbsCertList']['issuer']);
+        }
+
+        return false;
+    }
+
+    /**
+     * Get the Distinguished Name for a certificate/csr subject
+     * Alias of getDN()
+     *
+     * @param Integer $format optional
+     * @access public
+     * @return Mixed
+     */
+    function getSubjectDN($format = FILE_X509_DN_ARRAY)
+    {
+        switch (true) {
+            case !empty($this->dn):
+                return $this->getDN($format);
+            case !isset($this->currentCert) || !is_array($this->currentCert):
+                break;
+            case isset($this->currentCert['tbsCertificate']):
+                return $this->getDN($format, $this->currentCert['tbsCertificate']['subject']);
+            case isset($this->currentCert['certificationRequestInfo']):
+                return $this->getDN($format, $this->currentCert['certificationRequestInfo']['subject']);
+        }
+
+        return false;
+    }
+
+    /**
+     * Get an individual Distinguished Name property for a certificate/crl issuer
+     *
+     * @param String $propName
+     * @param Boolean $withType optional
+     * @access public
+     * @return Mixed
+     */
+    function getIssuerDNProp($propName, $withType = false)
+    {
+        switch (true) {
+            case !isset($this->currentCert) || !is_array($this->currentCert):
+                break;
+            case isset($this->currentCert['tbsCertificate']):
+                return $this->getDNProp($propname, $this->currentCert['tbsCertificate']['issuer'], $withType);
+            case isset($this->currentCert['tbsCertList']):
+                return $this->getDNProp($propname, $this->currentCert['tbsCertList']['issuer'], $withType);
+        }
+
+        return false;
+    }
+
+    /**
+     * Get an individual Distinguished Name property for a certificate/csr subject
+     *
+     * @param String $propName
+     * @param Boolean $withType optional
+     * @access public
+     * @return Mixed
+     */
+    function getSubjectDNProp($propName, $withType = false)
+    {
+        switch (true) {
+            case !empty($this->dn):
+                return $this->getDNProp($propName, NULL, $withType);
+            case !isset($this->currentCert) || !is_array($this->currentCert):
+                break;
+            case isset($this->currentCert['tbsCertificate']):
+                return $this->getDNProp($propName, $this->currentCert['tbsCertificate']['subject'], $withType);
+            case isset($this->currentCert['certificationRequestInfo']):
+                return $this->getDNProp($propname, $this->currentCert['certificationRequestInfo']['subject'], $withType);
+        }
+
+        return false;
+    }
+
+    /**
+     * Get the certificate chain for the current cert
+     *
+     * @access public
+     * @return Mixed
+     */
+    function getChain()
+    {
+        $chain = array($this->currentCert);
+
+        if (!is_array($this->currentCert) || !isset($this->currentCert['tbsCertificate'])) {
+            return false;
+        }
+        if (empty($this->CAs)) {
+            return $chain;
+        }
+        while (true) {
+            $currentCert = $chain[count($chain) - 1];
+            for ($i = 0; $i < count($this->CAs); $i++) {
+                $ca = $this->CAs[$i];
+                if ($currentCert['tbsCertificate']['issuer'] === $ca['tbsCertificate']['subject']) {
+                    $authorityKey = $this->getExtension('id-ce-authorityKeyIdentifier', $currentCert);
+                    $subjectKeyID = $this->getExtension('id-ce-subjectKeyIdentifier', $ca);
+                    switch (true) {
+                        case !is_array($authorityKey):
+                        case is_array($authorityKey) && isset($authorityKey['keyIdentifier']) && $authorityKey['keyIdentifier'] === $subjectKeyID:
+                            if ($currentCert === $ca) {
+                                break 3;
+                            }
+                            $chain[] = $ca;
+                            break 2;
+                    }
+                }
+            }
+            if ($i == count($this->CAs)) {
+                break;
+            }
+        }
+        foreach ($chain as $key=>$value) {
+            $chain[$key] = new File_X509();
+            $chain[$key]->loadX509($value);
+        }
+        return $chain;
+    }
+
+    /**
+     * Set public key
+     *
+     * Key needs to be a Crypt_RSA object
+     *
+     * @param Object $key
+     * @access public
+     * @return Boolean
+     */
+    function setPublicKey($key)
+    {
+        $this->publicKey = $key;
+    }
+
+    /**
+     * Set private key
+     *
+     * Key needs to be a Crypt_RSA object
+     *
+     * @param Object $key
+     * @access public
+     */
+    function setPrivateKey($key)
+    {
+        $this->privateKey = $key;
+    }
+
+    /**
+     * Gets the public key
+     *
+     * Returns a Crypt_RSA object or a false.
+     *
+     * @access public
+     * @return Mixed
+     */
+    function getPublicKey()
+    {
+        if (isset($this->publicKey)) {
+            return $this->publicKey;
+        }
+
+        if (isset($this->currentCert) && is_array($this->currentCert)) {
+            foreach (array('tbsCertificate/subjectPublicKeyInfo', 'certificationRequestInfo/subjectPKInfo') as $path) {
+                $keyinfo = $this->_subArray($this->currentCert, $path);
+                if (!empty($keyinfo)) {
+                    break;
+                }
+            }
+        }
+        if (empty($keyinfo)) {
+            return false;
+        }
+
+        $key = $keyinfo['subjectPublicKey'];
+
+        switch ($keyinfo['algorithm']['algorithm']) {
+            case 'rsaEncryption':
+                if (!class_exists('Crypt_RSA')) {
+                    require_once('Crypt/RSA.php');
+                }
+                $publicKey = new Crypt_RSA();
+                $publicKey->loadKey($key);
+                $publicKey->setPublicKey();
+                break;
+            default:
+                return false;
+        }
+
+        return $publicKey;
+    }
+
+    /**
+     * Load a Certificate Signing Request
+     *
+     * @param String $csr
+     * @access public
+     * @return Mixed
+     */
+    function loadCSR($csr)
+    {
+        if (is_array($csr) && isset($csr['certificationRequestInfo'])) {
+            unset($this->currentCert);
+            unset($this->currentKeyIdentifier);
+            unset($this->signatureSubject);
+            $this->dn = $csr['certificationRequestInfo']['subject'];
+            if (!isset($this->dn)) {
+                return false;
+            }
+
+            $this->currentCert = $csr;
+            return $csr;
+        }
+
+        // see http://tools.ietf.org/html/rfc2986
+
+        $asn1 = new File_ASN1();
+
+        $temp = preg_replace('#^(?:[^-].+[\r\n]+)+|-.+-|[\r\n]| #', '', $csr);
+        $temp = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $temp) ? base64_decode($temp) : false;
+        if ($temp != false) {
+            $csr = $temp;
+        }
+        $orig = $csr;
+
+        if ($csr === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $asn1->loadOIDs($this->oids);
+        $decoded = $asn1->decodeBER($csr);
+
+        if (empty($decoded)) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $csr = $asn1->asn1map($decoded[0], $this->CertificationRequest);
+        if (!isset($csr) || $csr === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $this->dn = $csr['certificationRequestInfo']['subject'];
+        $this->_mapInAttributes($csr, 'certificationRequestInfo/attributes', $asn1);
+
+        $this->signatureSubject = substr($orig, $decoded[0]['content'][0]['start'], $decoded[0]['content'][0]['length']);
+
+        $algorithm = &$csr['certificationRequestInfo']['subjectPKInfo']['algorithm']['algorithm'];
+        $key = &$csr['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey'];
+        $key = $this->_reformatKey($algorithm, $key);
+
+        switch ($algorithm) {
+            case 'rsaEncryption':
+                if (!class_exists('Crypt_RSA')) {
+                    require_once('Crypt/RSA.php');
+                }
+                $this->publicKey = new Crypt_RSA();
+                $this->publicKey->loadKey($key);
+                $this->publicKey->setPublicKey();
+                break;
+            default:
+                $this->publicKey = NULL;
+        }
+
+        $this->currentKeyIdentifier = NULL;
+        $this->currentCert = $csr;
+
+        return $csr;
+    }
+
+    /**
+     * Save CSR request
+     *
+     * @param Array $csr
+     * @param Integer $format optional
+     * @access public
+     * @return String
+     */
+    function saveCSR($csr, $format = FILE_X509_FORMAT_PEM)
+    {
+        if (!is_array($csr) || !isset($csr['certificationRequestInfo'])) {
+            return false;
+        }
+
+        switch (true) {
+            case !($algorithm = $this->_subArray($csr, 'certificationRequestInfo/subjectPKInfo/algorithm/algorithm')):
+            case is_object($csr['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey']);
+                break;
+            default:
+                switch ($algorithm) {
+                    case 'rsaEncryption':
+                        $csr['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey'] = 
+                            base64_encode("\0" . base64_decode(preg_replace('#-.+-|[\r\n]#', '', $csr['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey'])));
+                }
+        }
+
+        $asn1 = new File_ASN1();
+
+        $asn1->loadOIDs($this->oids);
+
+        $filters = array();
+        $filters['certificationRequestInfo']['subject']['rdnSequence']['value'] = 
+            array('type' => FILE_ASN1_TYPE_UTF8_STRING);
+
+        $asn1->loadFilters($filters);
+
+        $this->_mapOutAttributes($csr, 'certificationRequestInfo/attributes', $asn1);
+        $csr = $asn1->encodeDER($csr, $this->CertificationRequest);
+
+        switch ($format) {
+            case FILE_X509_FORMAT_DER:
+                return $csr;
+            // case FILE_X509_FORMAT_PEM:
+            default:
+                return "-----BEGIN CERTIFICATE REQUEST-----\r\n" . chunk_split(base64_encode($csr), 64) . '-----END CERTIFICATE REQUEST-----';
+        }
+    }
+
+    /**
+     * Load a SPKAC CSR
+     *
+     * SPKAC's are produced by the HTML5 keygen element:
+     *
+     * https://developer.mozilla.org/en-US/docs/HTML/Element/keygen
+     *
+     * @param String $csr
+     * @access public
+     * @return Mixed
+     */
+    function loadSPKAC($csr)
+    {
+        if (is_array($csr) && isset($csr['publicKeyAndChallenge'])) {
+            unset($this->currentCert);
+            unset($this->currentKeyIdentifier);
+            unset($this->signatureSubject);
+            $this->currentCert = $csr;
+            return $csr;
+        }
+
+        // see http://www.w3.org/html/wg/drafts/html/master/forms.html#signedpublickeyandchallenge
+
+        $asn1 = new File_ASN1();
+
+        $temp = preg_replace('#(?:^[^=]+=)|[\r\n\\\]#', '', $csr);
+        $temp = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $temp) ? base64_decode($temp) : false;
+        if ($temp != false) {
+            $csr = $temp;
+        }
+        $orig = $csr;
+
+        if ($csr === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $asn1->loadOIDs($this->oids);
+        $decoded = $asn1->decodeBER($csr);
+
+        if (empty($decoded)) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $csr = $asn1->asn1map($decoded[0], $this->SignedPublicKeyAndChallenge);
+
+        if (!isset($csr) || $csr === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $this->signatureSubject = substr($orig, $decoded[0]['content'][0]['start'], $decoded[0]['content'][0]['length']);
+
+        $algorithm = &$csr['publicKeyAndChallenge']['spki']['algorithm']['algorithm'];
+        $key = &$csr['publicKeyAndChallenge']['spki']['subjectPublicKey'];
+        $key = $this->_reformatKey($algorithm, $key);
+
+        switch ($algorithm) {
+            case 'rsaEncryption':
+                if (!class_exists('Crypt_RSA')) {
+                    require_once('Crypt/RSA.php');
+                }
+                $this->publicKey = new Crypt_RSA();
+                $this->publicKey->loadKey($key);
+                $this->publicKey->setPublicKey();
+                break;
+            default:
+                $this->publicKey = NULL;
+        }
+
+        $this->currentKeyIdentifier = NULL;
+        $this->currentCert = $csr;
+
+        return $csr;
+    }
+
+    /**
+     * Load a Certificate Revocation List
+     *
+     * @param String $crl
+     * @access public
+     * @return Mixed
+     */
+    function loadCRL($crl)
+    {
+        if (is_array($crl) && isset($crl['tbsCertList'])) {
+            $this->currentCert = $crl;
+            unset($this->signatureSubject);
+            return $crl;
+        }
+
+        $asn1 = new File_ASN1();
+
+        $temp = preg_replace('#^(?:[^-].+[\r\n]+)+|-.+-|[\r\n]| #', '', $crl);
+        $temp = preg_match('#^[a-zA-Z\d/+]*={0,2}$#', $temp) ? base64_decode($temp) : false;
+        if ($temp != false) {
+            $crl = $temp;
+        }
+        $orig = $crl;
+
+        if ($crl === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $asn1->loadOIDs($this->oids);
+        $decoded = $asn1->decodeBER($crl);
+
+        if (empty($decoded)) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $crl = $asn1->asn1map($decoded[0], $this->CertificateList);
+        if (!isset($crl) || $crl === false) {
+            $this->currentCert = false;
+            return false;
+        }
+
+        $this->signatureSubject = substr($orig, $decoded[0]['content'][0]['start'], $decoded[0]['content'][0]['length']);
+
+        $this->_mapInExtensions($crl, 'tbsCertList/crlExtensions', $asn1);
+        $rclist = &$this->_subArray($crl,'tbsCertList/revokedCertificates');
+        if (is_array($rclist)) {
+            foreach ($rclist as $i => $extension) {
+                $this->_mapInExtensions($rclist, "$i/crlEntryExtensions", $asn1);
+            }
+        }
+
+        $this->currentKeyIdentifier = NULL;
+        $this->currentCert = $crl;
+
+        return $crl;
+    }
+
+    /**
+     * Save Certificate Revocation List.
+     *
+     * @param Array $crl
+     * @param Integer $format optional
+     * @access public
+     * @return String
+     */
+    function saveCRL($crl, $format = FILE_X509_FORMAT_PEM)
+    {
+        if (!is_array($crl) || !isset($crl['tbsCertList'])) {
+            return false;
+        }
+
+        $asn1 = new File_ASN1();
+
+        $asn1->loadOIDs($this->oids);
+
+        $filters = array();
+        $filters['tbsCertList']['issuer']['rdnSequence']['value'] = 
+        $filters['tbsCertList']['signature']['parameters'] = 
+        $filters['signatureAlgorithm']['parameters'] = 
+            array('type' => FILE_ASN1_TYPE_UTF8_STRING);
+
+        if (empty($crl['tbsCertList']['signature']['parameters'])) {
+            $filters['tbsCertList']['signature']['parameters'] = 
+                array('type' => FILE_ASN1_TYPE_NULL);
+        }
+
+        if (empty($crl['signatureAlgorithm']['parameters'])) {
+            $filters['signatureAlgorithm']['parameters'] = 
+                array('type' => FILE_ASN1_TYPE_NULL);
+        }
+
+        $asn1->loadFilters($filters);
+
+        $this->_mapOutExtensions($crl, 'tbsCertList/crlExtensions', $asn1);
+        $rclist = &$this->_subArray($crl,'tbsCertList/revokedCertificates');
+        if (is_array($rclist)) {
+            foreach ($rclist as $i => $extension) {
+                $this->_mapOutExtensions($rclist, "$i/crlEntryExtensions", $asn1);
+            }
+        }
+
+        $crl = $asn1->encodeDER($crl, $this->CertificateList);
+
+        switch ($format) {
+            case FILE_X509_FORMAT_DER:
+                return $crl;
+            // case FILE_X509_FORMAT_PEM:
+            default:
+                return "-----BEGIN X509 CRL-----\r\n" . chunk_split(base64_encode($crl), 64) . '-----END X509 CRL-----';
+        }
+    }
+
+    /**
+     * Sign an X.509 certificate
+     *
+     * $issuer's private key needs to be loaded.
+     * $subject can be either an existing X.509 cert (if you want to resign it),
+     * a CSR or something with the DN and public key explicitly set.
+     *
+     * @param File_X509 $issuer
+     * @param File_X509 $subject
+     * @param String $signatureAlgorithm optional
+     * @access public
+     * @return Mixed
+     */
+    function sign($issuer, $subject, $signatureAlgorithm = 'sha1WithRSAEncryption')
+    {
+        if (!is_object($issuer->privateKey) || empty($issuer->dn)) {
+            return false;
+        }
+
+        if (isset($subject->publicKey) && !($subjectPublicKey = $subject->_formatSubjectPublicKey())) {
+            return false;
+        }
+
+        $currentCert = isset($this->currentCert) ? $this->currentCert : NULL;
+        $signatureSubject = isset($this->signatureSubject) ? $this->signatureSubject: NULL;
+
+        if (isset($subject->currentCert) && is_array($subject->currentCert) && isset($subject->currentCert['tbsCertificate'])) {
+            $this->currentCert = $subject->currentCert;
+            $this->currentCert['tbsCertificate']['signature']['algorithm'] =
+            $this->currentCert['signatureAlgorithm']['algorithm'] =
+                $signatureAlgorithm;
+            if (!empty($this->startDate)) {
+                $this->currentCert['tbsCertificate']['validity']['notBefore']['generalTime'] = $this->startDate;
+                unset($this->currentCert['tbsCertificate']['validity']['notBefore']['utcTime']);
+            }
+            if (!empty($this->endDate)) {
+                $this->currentCert['tbsCertificate']['validity']['notAfter']['generalTime'] = $this->endDate;
+                unset($this->currentCert['tbsCertificate']['validity']['notAfter']['utcTime']);
+            }
+            if (!empty($this->serialNumber)) {
+                $this->currentCert['tbsCertificate']['serialNumber'] = $this->serialNumber;
+            }
+            if (!empty($subject->dn)) {
+                $this->currentCert['tbsCertificate']['subject'] = $subject->dn;
+            }
+            if (!empty($subject->publicKey)) {
+                $this->currentCert['tbsCertificate']['subjectPublicKeyInfo'] = $subjectPublicKey;
+            }
+            $this->removeExtension('id-ce-authorityKeyIdentifier');
+            if (isset($subject->domains)) {
+                $this->removeExtension('id-ce-subjectAltName');
+            }
+        } else if (isset($subject->currentCert) && is_array($subject->currentCert) && isset($subject->currentCert['tbsCertList'])) {
+            return false;
+        } else {
+            if (!isset($subject->publicKey)) {
+                return false;
+            }
+
+            $startDate = !empty($this->startDate) ? $this->startDate : @date('D, d M y H:i:s O');
+            $endDate = !empty($this->endDate) ? $this->endDate : @date('D, d M y H:i:s O', strtotime('+1 year'));
+            $serialNumber = !empty($this->serialNumber) ? $this->serialNumber : new Math_BigInteger();
+
+            $this->currentCert = array(
+                'tbsCertificate' =>
+                    array(
+                        'version' => 'v3',
+                        'serialNumber' => $serialNumber, // $this->setserialNumber()
+                        'signature' => array('algorithm' => $signatureAlgorithm),
+                        'issuer' => false, // this is going to be overwritten later
+                        'validity' => array(
+                            'notBefore' => array('generalTime' => $startDate), // $this->setStartDate()
+                            'notAfter' => array('generalTime' => $endDate)   // $this->setEndDate()
+                        ),
+                        'subject' => $subject->dn,
+                        'subjectPublicKeyInfo' => $subjectPublicKey
+                    ),
+                'signatureAlgorithm' => array('algorithm' => $signatureAlgorithm),
+                'signature'          => false // this is going to be overwritten later
+            );
+
+            // Copy extensions from CSR.
+            $csrexts = $subject->getAttribute('pkcs-9-at-extensionRequest', 0);
+
+            if (!empty($csrexts)) {
+                $this->currentCert['tbsCertificate']['extensions'] = $csrexts;
+            }
+        }
+
+        $this->currentCert['tbsCertificate']['issuer'] = $issuer->dn;
+
+        if (isset($issuer->currentKeyIdentifier)) {
+            $this->setExtension('id-ce-authorityKeyIdentifier', array(
+                    //'authorityCertIssuer' => array(
+                    //    array(
+                    //        'directoryName' => $issuer->dn
+                    //    )
+                    //),
+                    'keyIdentifier' => $issuer->currentKeyIdentifier
+                )
+            );
+            //$extensions = &$this->currentCert['tbsCertificate']['extensions'];
+            //if (isset($issuer->serialNumber)) {
+            //    $extensions[count($extensions) - 1]['authorityCertSerialNumber'] = $issuer->serialNumber;
+            //}
+            //unset($extensions);
+        }
+
+        if (isset($subject->currentKeyIdentifier)) {
+            $this->setExtension('id-ce-subjectKeyIdentifier', $subject->currentKeyIdentifier);
+        }
+
+        if (isset($subject->domains) && count($subject->domains) > 1) {
+            $this->setExtension('id-ce-subjectAltName',
+                array_map(array('File_X509', '_dnsName'), $subject->domains));
+        }
+
+        if ($this->caFlag) {
+            $keyUsage = $this->getExtension('id-ce-keyUsage');
+            if (!$keyUsage) {
+                $keyUsage = array();
+            }
+
+            $this->setExtension('id-ce-keyUsage',
+                array_values(array_unique(array_merge($keyUsage, array('cRLSign', 'keyCertSign'))))
+            );
+
+            $basicConstraints = $this->getExtension('id-ce-basicConstraints');
+            if (!$basicConstraints) {
+                $basicConstraints = array();
+            }
+
+            $this->setExtension('id-ce-basicConstraints',
+                array_unique(array_merge(array('cA' => true), $basicConstraints)), true);
+
+            if (!isset($subject->currentKeyIdentifier)) {
+                $this->setExtension('id-ce-subjectKeyIdentifier', base64_encode($this->computeKeyIdentifier($this->currentCert)), false, false);
+            }
+        }
+
+        // resync $this->signatureSubject
+        // save $tbsCertificate in case there are any File_ASN1_Element objects in it
+        $tbsCertificate = $this->currentCert['tbsCertificate'];
+        $this->loadX509($this->saveX509($this->currentCert));
+
+        $result = $this->_sign($issuer->privateKey, $signatureAlgorithm);
+        $result['tbsCertificate'] = $tbsCertificate;
+
+        $this->currentCert = $currentCert;
+        $this->signatureSubject = $signatureSubject;
+
+        return $result;
+    }
+
+    /**
+     * Sign a CSR
+     *
+     * @access public
+     * @return Mixed
+     */
+    function signCSR($signatureAlgorithm = 'sha1WithRSAEncryption')
+    {
+        if (!is_object($this->privateKey) || empty($this->dn)) {
+            return false;
+        }
+
+        $origPublicKey = $this->publicKey;
+        $class = get_class($this->privateKey);
+        $this->publicKey = new $class();
+        $this->publicKey->loadKey($this->privateKey->getPublicKey());
+        $this->publicKey->setPublicKey();
+        if (!($publicKey = $this->_formatSubjectPublicKey())) {
+            return false;
+        }
+        $this->publicKey = $origPublicKey;
+
+        $currentCert = isset($this->currentCert) ? $this->currentCert : NULL;
+        $signatureSubject = isset($this->signatureSubject) ? $this->signatureSubject: NULL;
+
+        if (isset($this->currentCert) && is_array($this->currentCert) && isset($this->currentCert['certificationRequestInfo'])) {
+            $this->currentCert['signatureAlgorithm']['algorithm'] =
+                $signatureAlgorithm;
+            if (!empty($this->dn)) {
+                $this->currentCert['certificationRequestInfo']['subject'] = $this->dn;
+            }
+            $this->currentCert['certificationRequestInfo']['subjectPKInfo'] = $publicKey;
+        } else {
+            $this->currentCert = array(
+                'certificationRequestInfo' =>
+                    array(
+                        'version' => 'v1',
+                        'subject' => $this->dn,
+                        'subjectPKInfo' => $publicKey
+                    ),
+                'signatureAlgorithm' => array('algorithm' => $signatureAlgorithm),
+                'signature'          => false // this is going to be overwritten later
+            );
+        }
+
+        // resync $this->signatureSubject
+        // save $certificationRequestInfo in case there are any File_ASN1_Element objects in it
+        $certificationRequestInfo = $this->currentCert['certificationRequestInfo'];
+        $this->loadCSR($this->saveCSR($this->currentCert));
+
+        $result = $this->_sign($this->privateKey, $signatureAlgorithm);
+        $result['certificationRequestInfo'] = $certificationRequestInfo;
+
+        $this->currentCert = $currentCert;
+        $this->signatureSubject = $signatureSubject;
+
+        return $result;
+    }
+
+    /**
+     * Sign a CRL
+     *
+     * $issuer's private key needs to be loaded.
+     *
+     * @param File_X509 $issuer
+     * @param File_X509 $crl
+     * @param String $signatureAlgorithm optional
+     * @access public
+     * @return Mixed
+     */
+    function signCRL($issuer, $crl, $signatureAlgorithm = 'sha1WithRSAEncryption')
+    {
+        if (!is_object($issuer->privateKey) || empty($issuer->dn)) {
+            return false;
+        }
+
+        $currentCert = isset($this->currentCert) ? $this->currentCert : NULL;
+        $signatureSubject = isset($this->signatureSubject) ? $this->signatureSubject : NULL;
+        $thisUpdate = !empty($this->startDate) ? $this->startDate : @date('D, d M y H:i:s O');
+
+        if (isset($crl->currentCert) && is_array($crl->currentCert) && isset($crl->currentCert['tbsCertList'])) {
+            $this->currentCert = $crl->currentCert;
+            $this->currentCert['tbsCertList']['signature']['algorithm'] = $signatureAlgorithm;
+            $this->currentCert['signatureAlgorithm']['algorithm'] = $signatureAlgorithm;
+        } else {
+            $this->currentCert = array(
+                'tbsCertList' =>
+                    array(
+                        'version' => 'v2',
+                        'signature' => array('algorithm' => $signatureAlgorithm),
+                        'issuer' => false, // this is going to be overwritten later
+                        'thisUpdate' => array('generalTime' => $thisUpdate) // $this->setStartDate()
+                    ),
+                'signatureAlgorithm' => array('algorithm' => $signatureAlgorithm),
+                'signature'          => false // this is going to be overwritten later
+            );
+        }
+
+        $tbsCertList = &$this->currentCert['tbsCertList'];
+        $tbsCertList['issuer'] = $issuer->dn;
+        $tbsCertList['thisUpdate'] = array('generalTime' => $thisUpdate);
+
+        if (!empty($this->endDate)) {
+            $tbsCertList['nextUpdate'] = array('generalTime' => $this->endDate); // $this->setEndDate()
+        } else {
+            unset($tbsCertList['nextUpdate']);
+        }
+
+        if (!empty($this->serialNumber)) {
+            $crlNumber = $this->serialNumber;
+        }
+        else {
+            $crlNumber = $this->getExtension('id-ce-cRLNumber');
+            $crlNumber = $crlNumber !== false ? $crlNumber->add(new Math_BigInteger(1)) : NULL;
+        }
+
+        $this->removeExtension('id-ce-authorityKeyIdentifier');
+        $this->removeExtension('id-ce-issuerAltName');
+
+        // Be sure version >= v2 if some extension found.
+        $version = isset($tbsCertList['version']) ? $tbsCertList['version'] : 0;
+        if (!$version) {
+            if (!empty($tbsCertList['crlExtensions'])) {
+                $version = 1; // v2.
+            }
+            elseif (!empty($tbsCertList['revokedCertificates'])) {
+                foreach ($tbsCertList['revokedCertificates'] as $cert) {
+                    if (!empty($cert['crlEntryExtensions'])) {
+                        $version = 1; // v2.
+                    }
+                }
+            }
+
+            if ($version) {
+                $tbsCertList['version'] = $version;
+            }
+        }
+
+        // Store additional extensions.
+        if (!empty($tbsCertList['version'])) { // At least v2.
+            if (!empty($crlNumber)) {
+                $this->setExtension('id-ce-cRLNumber', $crlNumber);
+            }
+
+            if (isset($issuer->currentKeyIdentifier)) {
+                $this->setExtension('id-ce-authorityKeyIdentifier', array(
+                        //'authorityCertIssuer' => array(
+                        //    array(
+                        //        'directoryName' => $issuer->dn
+                        //    )
+                        //),
+                        'keyIdentifier' => $issuer->currentKeyIdentifier
+                    )
+                );
+                //$extensions = &$tbsCertList['crlExtensions'];
+                //if (isset($issuer->serialNumber)) {
+                //    $extensions[count($extensions) - 1]['authorityCertSerialNumber'] = $issuer->serialNumber;
+                //}
+                //unset($extensions);
+            }
+
+            $issuerAltName = $this->getExtension('id-ce-subjectAltName', $issuer->currentCert);
+
+            if ($issuerAltName !== false) {
+                $this->setExtension('id-ce-issuerAltName', $issuerAltName);
+            }
+        }
+
+        if (empty($tbsCertList['revokedCertificates'])) {
+            unset($tbsCertList['revokedCertificates']);
+        }
+
+        unset($tbsCertList);
+
+        // resync $this->signatureSubject
+        // save $tbsCertList in case there are any File_ASN1_Element objects in it
+        $tbsCertList = $this->currentCert['tbsCertList'];
+        $this->loadCRL($this->saveCRL($this->currentCert));
+
+        $result = $this->_sign($issuer->privateKey, $signatureAlgorithm);
+        $result['tbsCertList'] = $tbsCertList;
+
+        $this->currentCert = $currentCert;
+        $this->signatureSubject = $signatureSubject;
+
+        return $result;
+    }
+
+    /**
+     * X.509 certificate signing helper function.
+     *
+     * @param Object $key
+     * @param File_X509 $subject
+     * @param String $signatureAlgorithm
+     * @access public
+     * @return Mixed
+     */
+    function _sign($key, $signatureAlgorithm)
+    {
+        switch (strtolower(get_class($key))) {
+            case 'crypt_rsa':
+                switch ($signatureAlgorithm) {
+                    case 'md2WithRSAEncryption':
+                    case 'md5WithRSAEncryption':
+                    case 'sha1WithRSAEncryption':
+                    case 'sha224WithRSAEncryption':
+                    case 'sha256WithRSAEncryption':
+                    case 'sha384WithRSAEncryption':
+                    case 'sha512WithRSAEncryption':
+                        $key->setHash(preg_replace('#WithRSAEncryption$#', '', $signatureAlgorithm));
+                        $key->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);
+
+                        $this->currentCert['signature'] = base64_encode("\0" . $key->sign($this->signatureSubject));
+                        return $this->currentCert;
+                }
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Set certificate start date
+     *
+     * @param String $date
+     * @access public
+     */
+    function setStartDate($date)
+    {
+        $this->startDate = @date('D, d M y H:i:s O', @strtotime($date));
+    }
+
+    /**
+     * Set certificate end date
+     *
+     * @param String $date
+     * @access public
+     */
+    function setEndDate($date)
+    {
+        /*
+          To indicate that a certificate has no well-defined expiration date,
+          the notAfter SHOULD be assigned the GeneralizedTime value of
+          99991231235959Z.
+
+          -- http://tools.ietf.org/html/rfc5280#section-4.1.2.5
+        */
+        if (strtolower($date) == 'lifetime') {
+            $temp = '99991231235959Z';
+            $asn1 = new File_ASN1();
+            $temp = chr(FILE_ASN1_TYPE_GENERALIZED_TIME) . $asn1->_encodeLength(strlen($temp)) . $temp;
+            $this->endDate = new File_ASN1_Element($temp);
+        } else {
+            $this->endDate = @date('D, d M y H:i:s O', @strtotime($date));
+        }
+    }
+
+    /**
+     * Set Serial Number
+     *
+     * @param String $serial
+     * @param $base optional
+     * @access public
+     */
+    function setSerialNumber($serial, $base = -256)
+    {
+        $this->serialNumber = new Math_BigInteger($serial, $base);
+    }
+
+    /**
+     * Turns the certificate into a certificate authority
+     *
+     * @access public
+     */
+    function makeCA()
+    {
+        $this->caFlag = true;
+    }
+
+    /**
+     * Get a reference to a subarray
+     *
+     * @param array $root
+     * @param String $path  absolute path with / as component separator
+     * @param Boolean $create optional
+     * @access private
+     * @return array item ref or false
+     */
+    function &_subArray(&$root, $path, $create = false)
+    {
+        $false = false;
+
+        if (!is_array($root)) {
+            return $false;
+        }
+
+        foreach (explode('/', $path) as $i) {
+            if (!is_array($root)) {
+                return $false;
+            }
+
+            if (!isset($root[$i])) {
+                if (!$create) {
+                    return $false;
+                }
+
+                $root[$i] = array();
+            }
+
+            $root = &$root[$i];
+        }
+
+        return $root;
+    }
+
+    /**
+     * Get a reference to an extension subarray
+     *
+     * @param array $root
+     * @param String $path optional absolute path with / as component separator
+     * @param Boolean $create optional
+     * @access private
+     * @return array ref or false
+     */
+    function &_extensions(&$root, $path = NULL, $create = false)
+    {
+        if (!isset($root)) {
+            $root = $this->currentCert;
+        }
+
+        switch (true) {
+            case !empty($path):
+            case !is_array($root):
+                break;
+            case isset($root['tbsCertificate']):
+                $path = 'tbsCertificate/extensions';
+                break;
+            case isset($root['tbsCertList']):
+                $path = 'tbsCertList/crlExtensions';
+                break;
+            case isset($root['certificationRequestInfo']):
+                $pth = 'certificationRequestInfo/attributes';
+                $attributes = &$this->_subArray($root, $pth, $create);
+
+                if (is_array($attributes)) {
+                    foreach ($attributes as $key => $value) {
+                        if ($value['type'] == 'pkcs-9-at-extensionRequest') {
+                            $path = "$pth/$key/value/0";
+                            break 2;
+                        }
+                    }
+                    if ($create) {
+                        $key = count($attributes);
+                        $attributes[] = array('type' => 'pkcs-9-at-extensionRequest', 'value' => array());
+                        $path = "$pth/$key/value/0";
+                    }
+                }
+                break;
+        }
+
+        $extensions = &$this->_subArray($root, $path, $create);
+
+        if (!is_array($extensions)) {
+            $false = false;
+            return $false;
+        }
+
+        return $extensions;
+    }
+
+    /**
+     * Remove an Extension
+     *
+     * @param String $id
+     * @param String $path optional
+     * @access private
+     * @return Boolean
+     */
+    function _removeExtension($id, $path = NULL)
+    {
+        $extensions = &$this->_extensions($this->currentCert, $path);
+
+        if (!is_array($extensions)) {
+            return false;
+        }
+
+        $result = false;
+        foreach ($extensions as $key => $value) {
+            if ($value['extnId'] == $id) {
+                unset($extensions[$key]);
+                $result = true;
+            }
+        }
+
+        $extensions = array_values($extensions);
+        return $result;
+    }
+
+    /**
+     * Get an Extension
+     *
+     * Returns the extension if it exists and false if not
+     *
+     * @param String $id
+     * @param Array $cert optional
+     * @param String $path optional
+     * @access private
+     * @return Mixed
+     */
+    function _getExtension($id, $cert = NULL, $path = NULL)
+    {
+        $extensions = $this->_extensions($cert, $path);
+
+        if (!is_array($extensions)) {
+            return false;
+        }
+
+        foreach ($extensions as $key => $value) {
+            if ($value['extnId'] == $id) {
+                return $value['extnValue'];
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns a list of all extensions in use
+     *
+     * @param array $cert optional
+     * @param String $path optional
+     * @access private
+     * @return Array
+     */
+    function _getExtensions($cert = NULL, $path = NULL)
+    {
+        $exts = $this->_extensions($cert, $path);
+        $extensions = array();
+
+        if (is_array($exts)) {
+            foreach ($exts as $extension) {
+                $extensions[] = $extension['extnId'];
+            }
+        }
+
+        return $extensions;
+    }
+
+    /**
+     * Set an Extension
+     *
+     * @param String $id
+     * @param Mixed $value
+     * @param Boolean $critical optional
+     * @param Boolean $replace optional
+     * @param String $path optional
+     * @access private
+     * @return Boolean
+     */
+    function _setExtension($id, $value, $critical = false, $replace = true, $path = NULL)
+    {
+        $extensions = &$this->_extensions($this->currentCert, $path, true);
+
+        if (!is_array($extensions)) {
+            return false;
+        }
+
+        $newext = array('extnId'  => $id, 'critical' => $critical, 'extnValue' => $value);
+
+        foreach ($extensions as $key => $value) {
+            if ($value['extnId'] == $id) {
+                if (!$replace) {
+                    return false;
+                }
+
+                $extensions[$key] = $newext;
+                return true;
+            }
+        }
+
+        $extensions[] = $newext;
+        return true;
+    }
+
+    /**
+     * Remove a certificate, CSR or CRL Extension
+     *
+     * @param String $id
+     * @access public
+     * @return Boolean
+     */
+    function removeExtension($id)
+    {
+        return $this->_removeExtension($id);
+    }
+
+    /**
+     * Get a certificate, CSR or CRL Extension
+     *
+     * Returns the extension if it exists and false if not
+     *
+     * @param String $id
+     * @param Array $cert optional
+     * @access public
+     * @return Mixed
+     */
+    function getExtension($id, $cert = NULL)
+    {
+        return $this->_getExtension($id, $cert);
+    }
+
+    /**
+     * Returns a list of all extensions in use in certificate, CSR or CRL
+     *
+     * @param array $cert optional
+     * @access public
+     * @return Array
+     */
+    function getExtensions($cert = NULL)
+    {
+        return $this->_getExtensions($cert);
+    }
+
+    /**
+     * Set a certificate, CSR or CRL Extension
+     *
+     * @param String $id
+     * @param Mixed $value
+     * @param Boolean $critical optional
+     * @param Boolean $replace optional
+     * @access public
+     * @return Boolean
+     */
+    function setExtension($id, $value, $critical = false, $replace = true)
+    {
+        return $this->_setExtension($id, $value, $critical, $replace);
+    }
+
+    /**
+     * Remove a CSR attribute.
+     *
+     * @param String $id
+     * @param Integer $disposition optional
+     * @access public
+     * @return Boolean
+     */
+    function removeAttribute($id, $disposition = FILE_X509_ATTR_ALL)
+    {
+        $attributes = &$this->_subArray($this->currentCert, 'certificationRequestInfo/attributes');
+
+        if (!is_array($attributes)) {
+            return false;
+        }
+
+        $result = false;
+        foreach ($attributes as $key => $attribute) {
+            if ($attribute['type'] == $id) {
+                $n = count($attribute['value']);
+                switch (true) {
+                    case $disposition == FILE_X509_ATTR_APPEND:
+                    case $disposition == FILE_X509_ATTR_REPLACE:
+                        return false;
+                    case $disposition >= $n:
+                        $disposition -= $n;
+                        break;
+                    case $disposition == FILE_X509_ATTR_ALL:
+                    case $n == 1:
+                        unset($attributes[$key]);
+                        $result = true;
+                        break;
+                    default:
+                        unset($attributes[$key]['value'][$disposition]);
+                        $attributes[$key]['value'] = array_values($attributes[$key]['value']);
+                        $result = true;
+                        break;
+                }
+                if ($result && $disposition != FILE_X509_ATTR_ALL) {
+                    break;
+                }
+            }
+        }
+
+        $attributes = array_values($attributes);
+        return $result;
+    }
+
+    /**
+     * Get a CSR attribute
+     *
+     * Returns the attribute if it exists and false if not
+     *
+     * @param String $id
+     * @param Integer $disposition optional
+     * @param Array $csr optional
+     * @access public
+     * @return Mixed
+     */
+    function getAttribute($id, $disposition = FILE_X509_ATTR_ALL, $csr = NULL)
+    {
+        if (empty($csr)) {
+            $csr = $this->currentCert;
+        }
+
+        $attributes = $this->_subArray($csr, 'certificationRequestInfo/attributes');
+
+        if (!is_array($attributes)) {
+            return false;
+        }
+
+        foreach ($attributes as $key => $attribute) {
+            if ($attribute['type'] == $id) {
+                $n = count($attribute['value']);
+                switch (true) {
+                    case $disposition == FILE_X509_ATTR_APPEND:
+                    case $disposition == FILE_X509_ATTR_REPLACE:
+                        return false;
+                    case $disposition == FILE_X509_ATTR_ALL:
+                        return $attribute['value'];
+                    case $disposition >= $n:
+                        $disposition -= $n;
+                        break;
+                    default:
+                        return $attribute['value'][$disposition];
+                }
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns a list of all CSR attributes in use
+     *
+     * @param array $csr optional
+     * @access public
+     * @return Array
+     */
+    function getAttributes($csr = NULL)
+    {
+        if (empty($csr)) {
+            $csr = $this->currentCert;
+        }
+
+        $attributes = $this->_subArray($csr, 'certificationRequestInfo/attributes');
+        $attrs = array();
+
+        if (is_array($attributes)) {
+            foreach ($attributes as $attribute) {
+                $attrs[] = $attribute['type'];
+            }
+        }
+
+        return $attrs;
+    }
+
+    /**
+     * Set a CSR attribute
+     *
+     * @param String $id
+     * @param Mixed $value
+     * @param Boolean $disposition optional
+     * @access public
+     * @return Boolean
+     */
+    function setAttribute($id, $value, $disposition = FILE_X509_ATTR_ALL)
+    {
+        $attributes = &$this->_subArray($this->currentCert, 'certificationRequestInfo/attributes', true);
+
+        if (!is_array($attributes)) {
+            return false;
+        }
+
+        switch ($disposition) {
+            case FILE_X509_ATTR_REPLACE:
+                $disposition = FILE_X509_ATTR_APPEND;
+            case FILE_X509_ATTR_ALL:
+                $this->removeAttribute($id);
+                break;
+        }
+
+        foreach ($attributes as $key => $attribute) {
+            if ($attribute['type'] == $id) {
+                $n = count($attribute['value']);
+                switch (true) {
+                    case $disposition == FILE_X509_ATTR_APPEND:
+                        $last = $key;
+                        break;
+                    case $disposition >= $n;
+                        $disposition -= $n;
+                        break;
+                    default:
+                        $attributes[$key]['value'][$disposition] = $value;
+                        return true;
+                }
+            }
+        }
+
+        switch (true) {
+            case $disposition >= 0:
+                return false;
+            case isset($last):
+                $attributes[$last]['value'][] = $value;
+                break;
+            default:
+                $attributes[] = array('type' => $id, 'value' => $disposition == FILE_X509_ATTR_ALL ? $value: array($value));
+                break;
+        }
+
+        return true;
+    }
+
+    /**
+     * Sets the subject key identifier
+     *
+     * This is used by the id-ce-authorityKeyIdentifier and the id-ce-subjectKeyIdentifier extensions.
+     *
+     * @param String $value
+     * @access public
+     */
+    function setKeyIdentifier($value)
+    {
+        if (empty($value)) {
+            unset($this->currentKeyIdentifier);
+        } else {
+            $this->currentKeyIdentifier = base64_encode($value);
+        }
+    }
+
+    /**
+     * Compute a public key identifier.
+     *
+     * Although key identifiers may be set to any unique value, this function
+     * computes key identifiers from public key according to the two
+     * recommended methods (4.2.1.2 RFC 3280).
+     * Highly polymorphic: try to accept all possible forms of key:
+     * - Key object
+     * - File_X509 object with public or private key defined
+     * - Certificate or CSR array
+     * - File_ASN1_Element object
+     * - PEM or DER string
+     *
+     * @param Mixed $key optional
+     * @param Integer $method optional
+     * @access public
+     * @return String binary key identifier
+     */
+    function computeKeyIdentifier($key = NULL, $method = 1)
+    {
+        if (is_null($key)) {
+            $key = $this;
+        }
+
+        switch (true) {
+            case is_string($key):
+                break;
+            case is_array($key) && isset($key['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey']):
+                return $this->computeKeyIdentifier($key['tbsCertificate']['subjectPublicKeyInfo']['subjectPublicKey'], $method);
+            case is_array($key) && isset($key['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey']):
+                return $this->computeKeyIdentifier($key['certificationRequestInfo']['subjectPKInfo']['subjectPublicKey'], $method);
+            case !is_object($key):
+                return false;
+            case strtolower(get_class($key)) == 'file_asn1_element':
+                $asn1 = new File_ASN1();
+                $decoded = $asn1->decodeBER($cert);
+                if (empty($decoded)) {
+                    return false;
+                }
+                $key = $asn1->asn1map($decoded[0], array('type' => FILE_ASN1_TYPE_BIT_STRING));
+                break;
+            case strtolower(get_class($key)) == 'file_x509':
+                if (isset($key->publicKey)) {
+                    return $this->computeKeyIdentifier($key->publicKey, $method);
+                }
+                if (isset($key->privateKey)) {
+                    return $this->computeKeyIdentifier($key->privateKey, $method);
+                }
+                if (isset($key->currentCert['tbsCertificate']) || isset($key->currentCert['certificationRequestInfo'])) {
+                    return $this->computeKeyIdentifier($key->currentCert, $method);
+                }
+                return false;
+            default: // Should be a key object (i.e.: Crypt_RSA).
+                $key = $key->getPublicKey(CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW);
+                break;
+        }
+
+        // If in PEM format, convert to binary.
+        if (preg_match('#^-----BEGIN #', $key)) {
+            $key = base64_decode(preg_replace('#-.+-|[\r\n]#', '', $key));
+        }
+
+        // Now we have the key string: compute its sha-1 sum.
+        if (!class_exists('Crypt_Hash')) {
+            require_once('Crypt/Hash.php');
+        }
+        $hash = new Crypt_Hash('sha1');
+        $hash = $hash->hash($key);
+
+        if ($method == 2) {
+            $hash = substr($hash, -8);
+            $hash[0] = chr((ord($hash[0]) & 0x0F) | 0x40);
+        }
+
+        return $hash;
+    }
+
+    /**
+     * Format a public key as appropriate
+     *
+     * @access private
+     * @return Array
+     */
+    function _formatSubjectPublicKey()
+    {
+        if (!isset($this->publicKey) || !is_object($this->publicKey)) {
+            return false;
+        }
+
+        switch (strtolower(get_class($this->publicKey))) {
+            case 'crypt_rsa':
+                // the following two return statements do the same thing. i dunno.. i just prefer the later for some reason.
+                // the former is a good example of how to do fuzzing on the public key
+                //return new File_ASN1_Element(base64_decode(preg_replace('#-.+-|[\r\n]#', '', $this->publicKey->getPublicKey())));
+                return array(
+                    'algorithm' => array('algorithm' => 'rsaEncryption'),
+                    'subjectPublicKey' => $this->publicKey->getPublicKey(CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW)
+                );
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Set the domain name's which the cert is to be valid for
+     *
+     * @access public
+     * @return Array
+     */
+    function setDomain()
+    {
+        $this->domains = func_get_args();
+        $this->removeDNProp('id-at-commonName');
+        $this->setDNProp('id-at-commonName', $this->domains[0]);
+    }
+
+    /**
+     * Helper function to build domain array
+     *
+     * @access private
+     * @param String $domain
+     * @return Array
+     */
+    function _dnsName($domain)
+    {
+        return array('dNSName' => $domain);
+    }
+
+    /**
+     * Get the index of a revoked certificate.
+     *
+     * @param array $rclist
+     * @param String $serial
+     * @param Boolean $create optional
+     * @access private
+     * @return Integer or false
+     */
+    function _revokedCertificate(&$rclist, $serial, $create = false)
+    {
+        $serial = new Math_BigInteger($serial);
+
+        foreach ($rclist as $i => $rc) {
+            if (!($serial->compare($rc['userCertificate']))) {
+                return $i;
+            }
+        }
+
+        if (!$create) {
+            return false;
+        }
+
+        $i = count($rclist);
+        $rclist[] = array('userCertificate' => $serial,
+                          'revocationDate'  => array('generalTime' => @date('D, d M y H:i:s O')));
+        return $i;
+    }
+
+    /**
+     * Revoke a certificate.
+     *
+     * @param String $serial
+     * @param String $date optional
+     * @access public
+     * @return Boolean
+     */
+    function revoke($serial, $date = NULL)
+    {
+        if (isset($this->currentCert['tbsCertList'])) {
+            if (is_array($rclist = &$this->_subArray($this->currentCert, 'tbsCertList/revokedCertificates', true))) {
+                if ($this->_revokedCertificate($rclist, $serial) === false) { // If not yet revoked
+                    if (($i = $this->_revokedCertificate($rclist, $serial, true)) !== false) {
+
+                        if (!empty($date)) {
+                            $rclist[$i]['revocationDate'] = array('generalTime' => $date);
+                        }
+
+                        return true;
+                    }
+                }
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Unrevoke a certificate.
+     *
+     * @param String $serial
+     * @access public
+     * @return Boolean
+     */
+    function unrevoke($serial)
+    {
+        if (is_array($rclist = &$this->_subArray($this->currentCert, 'tbsCertList/revokedCertificates'))) {
+            if (($i = $this->_revokedCertificate($rclist, $serial)) !== false) {
+                unset($rclist[$i]);
+                $rclist = array_values($rclist);
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get a revoked certificate.
+     *
+     * @param String $serial
+     * @access public
+     * @return Mixed
+     */
+    function getRevoked($serial)
+    {
+        if (is_array($rclist = $this->_subArray($this->currentCert, 'tbsCertList/revokedCertificates'))) {
+            if (($i = $this->_revokedCertificate($rclist, $serial)) !== false) {
+                return $rclist[$i];
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * List revoked certificates
+     *
+     * @param array $crl optional
+     * @access public
+     * @return array
+     */
+    function listRevoked($crl = NULL)
+    {
+        if (!isset($crl)) {
+            $crl = $this->currentCert;
+        }
+
+        if (!isset($crl['tbsCertList'])) {
+            return false;
+        }
+
+        $result = array();
+
+        if (is_array($rclist = $this->_subArray($crl, 'tbsCertList/revokedCertificates'))) {
+            foreach ($rclist as $rc) {
+                $result[] = $rc['userCertificate']->toString();
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Remove a Revoked Certificate Extension
+     *
+     * @param String $serial
+     * @param String $id
+     * @access public
+     * @return Boolean
+     */
+    function removeRevokedCertificateExtension($serial, $id)
+    {
+        if (is_array($rclist = &$this->_subArray($this->currentCert, 'tbsCertList/revokedCertificates'))) {
+            if (($i = $this->_revokedCertificate($rclist, $serial)) !== false) {
+                return $this->_removeExtension($id, "tbsCertList/revokedCertificates/$i/crlEntryExtensions");
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get a Revoked Certificate Extension
+     *
+     * Returns the extension if it exists and false if not
+     *
+     * @param String $serial
+     * @param String $id
+     * @param Array $crl optional
+     * @access public
+     * @return Mixed
+     */
+    function getRevokedCertificateExtension($serial, $id, $crl = NULL)
+    {
+        if (!isset($crl)) {
+            $crl = $this->currentCert;
+        }
+
+        if (is_array($rclist = $this->_subArray($crl, 'tbsCertList/revokedCertificates'))) {
+            if (($i = $this->_revokedCertificate($rclist, $serial)) !== false) {
+                return $this->_getExtension($id, $crl,  "tbsCertList/revokedCertificates/$i/crlEntryExtensions");
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns a list of all extensions in use for a given revoked certificate
+     *
+     * @param String $serial
+     * @param array $crl optional
+     * @access public
+     * @return Array
+     */
+    function getRevokedCertificateExtensions($serial, $crl = NULL)
+    {
+        if (!isset($crl)) {
+            $crl = $this->currentCert;
+        }
+
+        if (is_array($rclist = $this->_subArray($crl, 'tbsCertList/revokedCertificates'))) {
+            if (($i = $this->_revokedCertificate($rclist, $serial)) !== false) {
+                return $this->_getExtensions($crl, "tbsCertList/revokedCertificates/$i/crlEntryExtensions");
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Set a Revoked Certificate Extension
+     *
+     * @param String $serial
+     * @param String $id
+     * @param Mixed $value
+     * @param Boolean $critical optional
+     * @param Boolean $replace optional
+     * @access public
+     * @return Boolean
+     */
+    function setRevokedCertificateExtension($serial, $id, $value, $critical = false, $replace = true)
+    {
+        if (isset($this->currentCert['tbsCertList'])) {
+            if (is_array($rclist = &$this->_subArray($this->currentCert, 'tbsCertList/revokedCertificates', true))) {
+                if (($i = $this->_revokedCertificate($rclist, $serial, true)) !== false) {
+                    return $this->_setExtension($id, $value, $critical, $replace, "tbsCertList/revokedCertificates/$i/crlEntryExtensions");
+                }
+            }
+        }
+
+        return false;
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Math/BigInteger.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Math/BigInteger.php
new file mode 100644
index 0000000000000000000000000000000000000000..d048cb032c5974e0c4fe9048d9a52de7bd46d3ea
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Math/BigInteger.php
@@ -0,0 +1,3633 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP arbitrary precision integer arithmetic library.
+ *
+ * Supports base-2, base-10, base-16, and base-256 numbers.  Uses the GMP or BCMath extensions, if available,
+ * and an internal implementation, otherwise.
+ *
+ * PHP versions 4 and 5
+ *
+ * {@internal (all DocBlock comments regarding implementation - such as the one that follows - refer to the 
+ * {@link MATH_BIGINTEGER_MODE_INTERNAL MATH_BIGINTEGER_MODE_INTERNAL} mode)
+ *
+ * Math_BigInteger uses base-2**26 to perform operations such as multiplication and division and
+ * base-2**52 (ie. two base 2**26 digits) to perform addition and subtraction.  Because the largest possible
+ * value when multiplying two base-2**26 numbers together is a base-2**52 number, double precision floating
+ * point numbers - numbers that should be supported on most hardware and whose significand is 53 bits - are
+ * used.  As a consequence, bitwise operators such as >> and << cannot be used, nor can the modulo operator %,
+ * which only supports integers.  Although this fact will slow this library down, the fact that such a high
+ * base is being used should more than compensate.
+ *
+ * When PHP version 6 is officially released, we'll be able to use 64-bit integers.  This should, once again,
+ * allow bitwise operators, and will increase the maximum possible base to 2**31 (or 2**62 for addition /
+ * subtraction).
+ *
+ * Numbers are stored in {@link http://en.wikipedia.org/wiki/Endianness little endian} format.  ie.
+ * (new Math_BigInteger(pow(2, 26)))->value = array(0, 1)
+ *
+ * Useful resources are as follows:
+ *
+ *  - {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf Handbook of Applied Cryptography (HAC)}
+ *  - {@link http://math.libtomcrypt.com/files/tommath.pdf Multi-Precision Math (MPM)}
+ *  - Java's BigInteger classes.  See /j2se/src/share/classes/java/math in jdk-1_5_0-src-jrl.zip
+ *
+ * Here's an example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Math/BigInteger.php');
+ *
+ *    $a = new Math_BigInteger(2);
+ *    $b = new Math_BigInteger(3);
+ *
+ *    $c = $a->add($b);
+ *
+ *    echo $c->toString(); // outputs 5
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Math
+ * @package    Math_BigInteger
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVI Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: BigInteger.php,v 1.33 2010/03/22 22:32:03 terrafrost Exp $
+ * @link       http://pear.php.net/package/Math_BigInteger
+ */
+
+/**#@+
+ * Reduction constants
+ *
+ * @access private
+ * @see Math_BigInteger::_reduce()
+ */
+/**
+ * @see Math_BigInteger::_montgomery()
+ * @see Math_BigInteger::_prepMontgomery()
+ */
+define('MATH_BIGINTEGER_MONTGOMERY', 0);
+/**
+ * @see Math_BigInteger::_barrett()
+ */
+define('MATH_BIGINTEGER_BARRETT', 1);
+/**
+ * @see Math_BigInteger::_mod2()
+ */
+define('MATH_BIGINTEGER_POWEROF2', 2);
+/**
+ * @see Math_BigInteger::_remainder()
+ */
+define('MATH_BIGINTEGER_CLASSIC', 3);
+/**
+ * @see Math_BigInteger::__clone()
+ */
+define('MATH_BIGINTEGER_NONE', 4);
+/**#@-*/
+
+/**#@+
+ * Array constants
+ *
+ * Rather than create a thousands and thousands of new Math_BigInteger objects in repeated function calls to add() and
+ * multiply() or whatever, we'll just work directly on arrays, taking them in as parameters and returning them.
+ *
+ * @access private
+ */
+/**
+ * $result[MATH_BIGINTEGER_VALUE] contains the value.
+ */
+define('MATH_BIGINTEGER_VALUE', 0);
+/**
+ * $result[MATH_BIGINTEGER_SIGN] contains the sign.
+ */
+define('MATH_BIGINTEGER_SIGN', 1);
+/**#@-*/
+
+/**#@+
+ * @access private
+ * @see Math_BigInteger::_montgomery()
+ * @see Math_BigInteger::_barrett()
+ */
+/**
+ * Cache constants
+ *
+ * $cache[MATH_BIGINTEGER_VARIABLE] tells us whether or not the cached data is still valid.
+ */
+define('MATH_BIGINTEGER_VARIABLE', 0);
+/**
+ * $cache[MATH_BIGINTEGER_DATA] contains the cached data.
+ */
+define('MATH_BIGINTEGER_DATA', 1);
+/**#@-*/
+
+/**#@+
+ * Mode constants.
+ *
+ * @access private
+ * @see Math_BigInteger::Math_BigInteger()
+ */
+/**
+ * To use the pure-PHP implementation
+ */
+define('MATH_BIGINTEGER_MODE_INTERNAL', 1);
+/**
+ * To use the BCMath library
+ *
+ * (if enabled; otherwise, the internal implementation will be used)
+ */
+define('MATH_BIGINTEGER_MODE_BCMATH', 2);
+/**
+ * To use the GMP library
+ *
+ * (if present; otherwise, either the BCMath or the internal implementation will be used)
+ */
+define('MATH_BIGINTEGER_MODE_GMP', 3);
+/**#@-*/
+
+/**
+ * The largest digit that may be used in addition / subtraction
+ *
+ * (we do pow(2, 52) instead of using 4503599627370496, directly, because some PHP installations
+ *  will truncate 4503599627370496)
+ *
+ * @access private
+ */
+define('MATH_BIGINTEGER_MAX_DIGIT52', pow(2, 52));
+
+/**
+ * Karatsuba Cutoff
+ *
+ * At what point do we switch between Karatsuba multiplication and schoolbook long multiplication?
+ *
+ * @access private
+ */
+define('MATH_BIGINTEGER_KARATSUBA_CUTOFF', 25);
+
+/**
+ * Pure-PHP arbitrary precision integer arithmetic library. Supports base-2, base-10, base-16, and base-256
+ * numbers.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 1.0.0RC4
+ * @access  public
+ * @package Math_BigInteger
+ */
+class Math_BigInteger {
+    /**
+     * Holds the BigInteger's value.
+     *
+     * @var Array
+     * @access private
+     */
+    var $value;
+
+    /**
+     * Holds the BigInteger's magnitude.
+     *
+     * @var Boolean
+     * @access private
+     */
+    var $is_negative = false;
+
+    /**
+     * Random number generator function
+     *
+     * @see setRandomGenerator()
+     * @access private
+     */
+    var $generator = 'mt_rand';
+
+    /**
+     * Precision
+     *
+     * @see setPrecision()
+     * @access private
+     */
+    var $precision = -1;
+
+    /**
+     * Precision Bitmask
+     *
+     * @see setPrecision()
+     * @access private
+     */
+    var $bitmask = false;
+
+    /**
+     * Mode independant value used for serialization.
+     *
+     * If the bcmath or gmp extensions are installed $this->value will be a non-serializable resource, hence the need for 
+     * a variable that'll be serializable regardless of whether or not extensions are being used.  Unlike $this->value,
+     * however, $this->hex is only calculated when $this->__sleep() is called.
+     *
+     * @see __sleep()
+     * @see __wakeup()
+     * @var String
+     * @access private
+     */
+    var $hex;
+
+    /**
+     * Converts base-2, base-10, base-16, and binary strings (eg. base-256) to BigIntegers.
+     *
+     * If the second parameter - $base - is negative, then it will be assumed that the number's are encoded using
+     * two's compliment.  The sole exception to this is -10, which is treated the same as 10 is.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('0x32', 16); // 50 in base-16
+     *
+     *    echo $a->toString(); // outputs 50
+     * ?>
+     * </code>
+     *
+     * @param optional $x base-10 number or base-$base number if $base set.
+     * @param optional integer $base
+     * @return Math_BigInteger
+     * @access public
+     */
+    function Math_BigInteger($x = 0, $base = 10)
+    {
+        if ( !defined('MATH_BIGINTEGER_MODE') ) {
+            switch (true) {
+                case extension_loaded('gmp'):
+                    define('MATH_BIGINTEGER_MODE', MATH_BIGINTEGER_MODE_GMP);
+                    break;
+                case extension_loaded('bcmath'):
+                    define('MATH_BIGINTEGER_MODE', MATH_BIGINTEGER_MODE_BCMATH);
+                    break;
+                default:
+                    define('MATH_BIGINTEGER_MODE', MATH_BIGINTEGER_MODE_INTERNAL);
+            }
+        }
+
+        if (function_exists('openssl_public_encrypt') && !defined('MATH_BIGINTEGER_OPENSSL_DISABLE') && !defined('MATH_BIGINTEGER_OPENSSL_ENABLED')) {
+            define('MATH_BIGINTEGER_OPENSSL_ENABLED', true);
+        }
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                if (is_resource($x) && get_resource_type($x) == 'GMP integer') {
+                    $this->value = $x;
+                    return;
+                }
+                $this->value = gmp_init(0);
+                break;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $this->value = '0';
+                break;
+            default:
+                $this->value = array();
+        }
+
+        // '0' counts as empty() but when the base is 256 '0' is equal to ord('0') or 48
+        // '0' is the only value like this per http://php.net/empty
+        if (empty($x) && (abs($base) != 256 || $x !== '0')) {
+            return;
+        }
+
+        switch ($base) {
+            case -256:
+                if (ord($x[0]) & 0x80) {
+                    $x = ~$x;
+                    $this->is_negative = true;
+                }
+            case  256:
+                switch ( MATH_BIGINTEGER_MODE ) {
+                    case MATH_BIGINTEGER_MODE_GMP:
+                        $sign = $this->is_negative ? '-' : '';
+                        $this->value = gmp_init($sign . '0x' . bin2hex($x));
+                        break;
+                    case MATH_BIGINTEGER_MODE_BCMATH:
+                        // round $len to the nearest 4 (thanks, DavidMJ!)
+                        $len = (strlen($x) + 3) & 0xFFFFFFFC;
+
+                        $x = str_pad($x, $len, chr(0), STR_PAD_LEFT);
+
+                        for ($i = 0; $i < $len; $i+= 4) {
+                            $this->value = bcmul($this->value, '4294967296', 0); // 4294967296 == 2**32
+                            $this->value = bcadd($this->value, 0x1000000 * ord($x[$i]) + ((ord($x[$i + 1]) << 16) | (ord($x[$i + 2]) << 8) | ord($x[$i + 3])), 0);
+                        }
+
+                        if ($this->is_negative) {
+                            $this->value = '-' . $this->value;
+                        }
+
+                        break;
+                    // converts a base-2**8 (big endian / msb) number to base-2**26 (little endian / lsb)
+                    default:
+                        while (strlen($x)) {
+                            $this->value[] = $this->_bytes2int($this->_base256_rshift($x, 26));
+                        }
+                }
+
+                if ($this->is_negative) {
+                    if (MATH_BIGINTEGER_MODE != MATH_BIGINTEGER_MODE_INTERNAL) {
+                        $this->is_negative = false;
+                    }
+                    $temp = $this->add(new Math_BigInteger('-1'));
+                    $this->value = $temp->value;
+                }
+                break;
+            case  16:
+            case -16:
+                if ($base > 0 && $x[0] == '-') {
+                    $this->is_negative = true;
+                    $x = substr($x, 1);
+                }
+
+                $x = preg_replace('#^(?:0x)?([A-Fa-f0-9]*).*#', '$1', $x);
+
+                $is_negative = false;
+                if ($base < 0 && hexdec($x[0]) >= 8) {
+                    $this->is_negative = $is_negative = true;
+                    $x = bin2hex(~pack('H*', $x));
+                }
+
+                switch ( MATH_BIGINTEGER_MODE ) {
+                    case MATH_BIGINTEGER_MODE_GMP:
+                        $temp = $this->is_negative ? '-0x' . $x : '0x' . $x;
+                        $this->value = gmp_init($temp);
+                        $this->is_negative = false;
+                        break;
+                    case MATH_BIGINTEGER_MODE_BCMATH:
+                        $x = ( strlen($x) & 1 ) ? '0' . $x : $x;
+                        $temp = new Math_BigInteger(pack('H*', $x), 256);
+                        $this->value = $this->is_negative ? '-' . $temp->value : $temp->value;
+                        $this->is_negative = false;
+                        break;
+                    default:
+                        $x = ( strlen($x) & 1 ) ? '0' . $x : $x;
+                        $temp = new Math_BigInteger(pack('H*', $x), 256);
+                        $this->value = $temp->value;
+                }
+
+                if ($is_negative) {
+                    $temp = $this->add(new Math_BigInteger('-1'));
+                    $this->value = $temp->value;
+                }
+                break;
+            case  10:
+            case -10:
+                $x = preg_replace('#^(-?[0-9]*).*#', '$1', $x);
+
+                switch ( MATH_BIGINTEGER_MODE ) {
+                    case MATH_BIGINTEGER_MODE_GMP:
+                        $this->value = gmp_init($x);
+                        break;
+                    case MATH_BIGINTEGER_MODE_BCMATH:
+                        // explicitly casting $x to a string is necessary, here, since doing $x[0] on -1 yields different
+                        // results then doing it on '-1' does (modInverse does $x[0])
+                        $this->value = (string) $x;
+                        break;
+                    default:
+                        $temp = new Math_BigInteger();
+
+                        // array(10000000) is 10**7 in base-2**26.  10**7 is the closest to 2**26 we can get without passing it.
+                        $multiplier = new Math_BigInteger();
+                        $multiplier->value = array(10000000);
+
+                        if ($x[0] == '-') {
+                            $this->is_negative = true;
+                            $x = substr($x, 1);
+                        }
+
+                        $x = str_pad($x, strlen($x) + (6 * strlen($x)) % 7, 0, STR_PAD_LEFT);
+
+                        while (strlen($x)) {
+                            $temp = $temp->multiply($multiplier);
+                            $temp = $temp->add(new Math_BigInteger($this->_int2bytes(substr($x, 0, 7)), 256));
+                            $x = substr($x, 7);
+                        }
+
+                        $this->value = $temp->value;
+                }
+                break;
+            case  2: // base-2 support originally implemented by Lluis Pamies - thanks!
+            case -2:
+                if ($base > 0 && $x[0] == '-') {
+                    $this->is_negative = true;
+                    $x = substr($x, 1);
+                }
+
+                $x = preg_replace('#^([01]*).*#', '$1', $x);
+                $x = str_pad($x, strlen($x) + (3 * strlen($x)) % 4, 0, STR_PAD_LEFT);
+
+                $str = '0x';
+                while (strlen($x)) {
+                    $part = substr($x, 0, 4);
+                    $str.= dechex(bindec($part));
+                    $x = substr($x, 4);
+                }
+
+                if ($this->is_negative) {
+                    $str = '-' . $str;
+                }
+
+                $temp = new Math_BigInteger($str, 8 * $base); // ie. either -16 or +16
+                $this->value = $temp->value;
+                $this->is_negative = $temp->is_negative;
+
+                break;
+            default:
+                // base not supported, so we'll let $this == 0
+        }
+    }
+
+    /**
+     * Converts a BigInteger to a byte string (eg. base-256).
+     *
+     * Negative numbers are saved as positive numbers, unless $twos_compliment is set to true, at which point, they're
+     * saved as two's compliment.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('65');
+     *
+     *    echo $a->toBytes(); // outputs chr(65)
+     * ?>
+     * </code>
+     *
+     * @param Boolean $twos_compliment
+     * @return String
+     * @access public
+     * @internal Converts a base-2**26 number to base-2**8
+     */
+    function toBytes($twos_compliment = false)
+    {
+        if ($twos_compliment) {
+            $comparison = $this->compare(new Math_BigInteger());
+            if ($comparison == 0) {
+                return $this->precision > 0 ? str_repeat(chr(0), ($this->precision + 1) >> 3) : '';
+            }
+
+            $temp = $comparison < 0 ? $this->add(new Math_BigInteger(1)) : $this->copy();
+            $bytes = $temp->toBytes();
+
+            if (empty($bytes)) { // eg. if the number we're trying to convert is -1
+                $bytes = chr(0);
+            }
+
+            if (ord($bytes[0]) & 0x80) {
+                $bytes = chr(0) . $bytes;
+            }
+
+            return $comparison < 0 ? ~$bytes : $bytes;
+        }
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                if (gmp_cmp($this->value, gmp_init(0)) == 0) {
+                    return $this->precision > 0 ? str_repeat(chr(0), ($this->precision + 1) >> 3) : '';
+                }
+
+                $temp = gmp_strval(gmp_abs($this->value), 16);
+                $temp = ( strlen($temp) & 1 ) ? '0' . $temp : $temp;
+                $temp = pack('H*', $temp);
+
+                return $this->precision > 0 ?
+                    substr(str_pad($temp, $this->precision >> 3, chr(0), STR_PAD_LEFT), -($this->precision >> 3)) :
+                    ltrim($temp, chr(0));
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                if ($this->value === '0') {
+                    return $this->precision > 0 ? str_repeat(chr(0), ($this->precision + 1) >> 3) : '';
+                }
+
+                $value = '';
+                $current = $this->value;
+
+                if ($current[0] == '-') {
+                    $current = substr($current, 1);
+                }
+
+                while (bccomp($current, '0', 0) > 0) {
+                    $temp = bcmod($current, '16777216');
+                    $value = chr($temp >> 16) . chr($temp >> 8) . chr($temp) . $value;
+                    $current = bcdiv($current, '16777216', 0);
+                }
+
+                return $this->precision > 0 ?
+                    substr(str_pad($value, $this->precision >> 3, chr(0), STR_PAD_LEFT), -($this->precision >> 3)) :
+                    ltrim($value, chr(0));
+        }
+
+        if (!count($this->value)) {
+            return $this->precision > 0 ? str_repeat(chr(0), ($this->precision + 1) >> 3) : '';
+        }
+        $result = $this->_int2bytes($this->value[count($this->value) - 1]);
+
+        $temp = $this->copy();
+
+        for ($i = count($temp->value) - 2; $i >= 0; --$i) {
+            $temp->_base256_lshift($result, 26);
+            $result = $result | str_pad($temp->_int2bytes($temp->value[$i]), strlen($result), chr(0), STR_PAD_LEFT);
+        }
+
+        return $this->precision > 0 ?
+            str_pad(substr($result, -(($this->precision + 7) >> 3)), ($this->precision + 7) >> 3, chr(0), STR_PAD_LEFT) :
+            $result;
+    }
+
+    /**
+     * Converts a BigInteger to a hex string (eg. base-16)).
+     *
+     * Negative numbers are saved as positive numbers, unless $twos_compliment is set to true, at which point, they're
+     * saved as two's compliment.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('65');
+     *
+     *    echo $a->toHex(); // outputs '41'
+     * ?>
+     * </code>
+     *
+     * @param Boolean $twos_compliment
+     * @return String
+     * @access public
+     * @internal Converts a base-2**26 number to base-2**8
+     */
+    function toHex($twos_compliment = false)
+    {
+        return bin2hex($this->toBytes($twos_compliment));
+    }
+
+    /**
+     * Converts a BigInteger to a bit string (eg. base-2).
+     *
+     * Negative numbers are saved as positive numbers, unless $twos_compliment is set to true, at which point, they're
+     * saved as two's compliment.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('65');
+     *
+     *    echo $a->toBits(); // outputs '1000001'
+     * ?>
+     * </code>
+     *
+     * @param Boolean $twos_compliment
+     * @return String
+     * @access public
+     * @internal Converts a base-2**26 number to base-2**2
+     */
+    function toBits($twos_compliment = false)
+    {
+        $hex = $this->toHex($twos_compliment);
+        $bits = '';
+        for ($i = strlen($hex) - 8, $start = strlen($hex) & 7; $i >= $start; $i-=8) {
+            $bits = str_pad(decbin(hexdec(substr($hex, $i, 8))), 32, '0', STR_PAD_LEFT) . $bits;
+        }
+        if ($start) { // hexdec('') == 0
+            $bits = str_pad(decbin(hexdec(substr($hex, 0, $start))), 8, '0', STR_PAD_LEFT) . $bits;
+        }
+        $result = $this->precision > 0 ? substr($bits, -$this->precision) : ltrim($bits, '0');
+
+        if ($twos_compliment && $this->compare(new Math_BigInteger()) > 0 && $this->precision <= 0) {
+            return '0' . $result;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Converts a BigInteger to a base-10 number.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('50');
+     *
+     *    echo $a->toString(); // outputs 50
+     * ?>
+     * </code>
+     *
+     * @return String
+     * @access public
+     * @internal Converts a base-2**26 number to base-10**7 (which is pretty much base-10)
+     */
+    function toString()
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                return gmp_strval($this->value);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                if ($this->value === '0') {
+                    return '0';
+                }
+
+                return ltrim($this->value, '0');
+        }
+
+        if (!count($this->value)) {
+            return '0';
+        }
+
+        $temp = $this->copy();
+        $temp->is_negative = false;
+
+        $divisor = new Math_BigInteger();
+        $divisor->value = array(10000000); // eg. 10**7
+        $result = '';
+        while (count($temp->value)) {
+            list($temp, $mod) = $temp->divide($divisor);
+            $result = str_pad(isset($mod->value[0]) ? $mod->value[0] : '', 7, '0', STR_PAD_LEFT) . $result;
+        }
+        $result = ltrim($result, '0');
+        if (empty($result)) {
+            $result = '0';
+        }
+
+        if ($this->is_negative) {
+            $result = '-' . $result;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Copy an object
+     *
+     * PHP5 passes objects by reference while PHP4 passes by value.  As such, we need a function to guarantee
+     * that all objects are passed by value, when appropriate.  More information can be found here:
+     *
+     * {@link http://php.net/language.oop5.basic#51624}
+     *
+     * @access public
+     * @see __clone()
+     * @return Math_BigInteger
+     */
+    function copy()
+    {
+        $temp = new Math_BigInteger();
+        $temp->value = $this->value;
+        $temp->is_negative = $this->is_negative;
+        $temp->generator = $this->generator;
+        $temp->precision = $this->precision;
+        $temp->bitmask = $this->bitmask;
+        return $temp;
+    }
+
+    /**
+     *  __toString() magic method
+     *
+     * Will be called, automatically, if you're supporting just PHP5.  If you're supporting PHP4, you'll need to call
+     * toString().
+     *
+     * @access public
+     * @internal Implemented per a suggestion by Techie-Michael - thanks!
+     */
+    function __toString()
+    {
+        return $this->toString();
+    }
+
+    /**
+     * __clone() magic method
+     *
+     * Although you can call Math_BigInteger::__toString() directly in PHP5, you cannot call Math_BigInteger::__clone()
+     * directly in PHP5.  You can in PHP4 since it's not a magic method, but in PHP5, you have to call it by using the PHP5
+     * only syntax of $y = clone $x.  As such, if you're trying to write an application that works on both PHP4 and PHP5,
+     * call Math_BigInteger::copy(), instead.
+     *
+     * @access public
+     * @see copy()
+     * @return Math_BigInteger
+     */
+    function __clone()
+    {
+        return $this->copy();
+    }
+
+    /**
+     *  __sleep() magic method
+     *
+     * Will be called, automatically, when serialize() is called on a Math_BigInteger object.
+     *
+     * @see __wakeup()
+     * @access public
+     */
+    function __sleep()
+    {
+        $this->hex = $this->toHex(true);
+        $vars = array('hex');
+        if ($this->generator != 'mt_rand') {
+            $vars[] = 'generator';
+        }
+        if ($this->precision > 0) {
+            $vars[] = 'precision';
+        }
+        return $vars;
+        
+    }
+
+    /**
+     *  __wakeup() magic method
+     *
+     * Will be called, automatically, when unserialize() is called on a Math_BigInteger object.
+     *
+     * @see __sleep()
+     * @access public
+     */
+    function __wakeup()
+    {
+        $temp = new Math_BigInteger($this->hex, -16);
+        $this->value = $temp->value;
+        $this->is_negative = $temp->is_negative;
+        $this->setRandomGenerator($this->generator);
+        if ($this->precision > 0) {
+            // recalculate $this->bitmask
+            $this->setPrecision($this->precision);
+        }
+    }
+
+    /**
+     * Adds two BigIntegers.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('10');
+     *    $b = new Math_BigInteger('20');
+     *
+     *    $c = $a->add($b);
+     *
+     *    echo $c->toString(); // outputs 30
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $y
+     * @return Math_BigInteger
+     * @access public
+     * @internal Performs base-2**52 addition
+     */
+    function add($y)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_add($this->value, $y->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp = new Math_BigInteger();
+                $temp->value = bcadd($this->value, $y->value, 0);
+
+                return $this->_normalize($temp);
+        }
+
+        $temp = $this->_add($this->value, $this->is_negative, $y->value, $y->is_negative);
+
+        $result = new Math_BigInteger();
+        $result->value = $temp[MATH_BIGINTEGER_VALUE];
+        $result->is_negative = $temp[MATH_BIGINTEGER_SIGN];
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Performs addition.
+     *
+     * @param Array $x_value
+     * @param Boolean $x_negative
+     * @param Array $y_value
+     * @param Boolean $y_negative
+     * @return Array
+     * @access private
+     */
+    function _add($x_value, $x_negative, $y_value, $y_negative)
+    {
+        $x_size = count($x_value);
+        $y_size = count($y_value);
+
+        if ($x_size == 0) {
+            return array(
+                MATH_BIGINTEGER_VALUE => $y_value,
+                MATH_BIGINTEGER_SIGN => $y_negative
+            );
+        } else if ($y_size == 0) {
+            return array(
+                MATH_BIGINTEGER_VALUE => $x_value,
+                MATH_BIGINTEGER_SIGN => $x_negative
+            );
+        }
+
+        // subtract, if appropriate
+        if ( $x_negative != $y_negative ) {
+            if ( $x_value == $y_value ) {
+                return array(
+                    MATH_BIGINTEGER_VALUE => array(),
+                    MATH_BIGINTEGER_SIGN => false
+                );
+            }
+
+            $temp = $this->_subtract($x_value, false, $y_value, false);
+            $temp[MATH_BIGINTEGER_SIGN] = $this->_compare($x_value, false, $y_value, false) > 0 ?
+                                          $x_negative : $y_negative;
+
+            return $temp;
+        }
+
+        if ($x_size < $y_size) {
+            $size = $x_size;
+            $value = $y_value;
+        } else {
+            $size = $y_size;
+            $value = $x_value;
+        }
+
+        $value[] = 0; // just in case the carry adds an extra digit
+
+        $carry = 0;
+        for ($i = 0, $j = 1; $j < $size; $i+=2, $j+=2) {
+            $sum = $x_value[$j] * 0x4000000 + $x_value[$i] + $y_value[$j] * 0x4000000 + $y_value[$i] + $carry;
+            $carry = $sum >= MATH_BIGINTEGER_MAX_DIGIT52; // eg. floor($sum / 2**52); only possible values (in any base) are 0 and 1
+            $sum = $carry ? $sum - MATH_BIGINTEGER_MAX_DIGIT52 : $sum;
+
+            $temp = (int) ($sum / 0x4000000);
+
+            $value[$i] = (int) ($sum - 0x4000000 * $temp); // eg. a faster alternative to fmod($sum, 0x4000000)
+            $value[$j] = $temp;
+        }
+
+        if ($j == $size) { // ie. if $y_size is odd
+            $sum = $x_value[$i] + $y_value[$i] + $carry;
+            $carry = $sum >= 0x4000000;
+            $value[$i] = $carry ? $sum - 0x4000000 : $sum;
+            ++$i; // ie. let $i = $j since we've just done $value[$i]
+        }
+
+        if ($carry) {
+            for (; $value[$i] == 0x3FFFFFF; ++$i) {
+                $value[$i] = 0;
+            }
+            ++$value[$i];
+        }
+
+        return array(
+            MATH_BIGINTEGER_VALUE => $this->_trim($value),
+            MATH_BIGINTEGER_SIGN => $x_negative
+        );
+    }
+
+    /**
+     * Subtracts two BigIntegers.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('10');
+     *    $b = new Math_BigInteger('20');
+     *
+     *    $c = $a->subtract($b);
+     *
+     *    echo $c->toString(); // outputs -10
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $y
+     * @return Math_BigInteger
+     * @access public
+     * @internal Performs base-2**52 subtraction
+     */
+    function subtract($y)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_sub($this->value, $y->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp = new Math_BigInteger();
+                $temp->value = bcsub($this->value, $y->value, 0);
+
+                return $this->_normalize($temp);
+        }
+
+        $temp = $this->_subtract($this->value, $this->is_negative, $y->value, $y->is_negative);
+
+        $result = new Math_BigInteger();
+        $result->value = $temp[MATH_BIGINTEGER_VALUE];
+        $result->is_negative = $temp[MATH_BIGINTEGER_SIGN];
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Performs subtraction.
+     *
+     * @param Array $x_value
+     * @param Boolean $x_negative
+     * @param Array $y_value
+     * @param Boolean $y_negative
+     * @return Array
+     * @access private
+     */
+    function _subtract($x_value, $x_negative, $y_value, $y_negative)
+    {
+        $x_size = count($x_value);
+        $y_size = count($y_value);
+
+        if ($x_size == 0) {
+            return array(
+                MATH_BIGINTEGER_VALUE => $y_value,
+                MATH_BIGINTEGER_SIGN => !$y_negative
+            );
+        } else if ($y_size == 0) {
+            return array(
+                MATH_BIGINTEGER_VALUE => $x_value,
+                MATH_BIGINTEGER_SIGN => $x_negative
+            );
+        }
+
+        // add, if appropriate (ie. -$x - +$y or +$x - -$y)
+        if ( $x_negative != $y_negative ) {
+            $temp = $this->_add($x_value, false, $y_value, false);
+            $temp[MATH_BIGINTEGER_SIGN] = $x_negative;
+
+            return $temp;
+        }
+
+        $diff = $this->_compare($x_value, $x_negative, $y_value, $y_negative);
+
+        if ( !$diff ) {
+            return array(
+                MATH_BIGINTEGER_VALUE => array(),
+                MATH_BIGINTEGER_SIGN => false
+            );
+        }
+
+        // switch $x and $y around, if appropriate.
+        if ( (!$x_negative && $diff < 0) || ($x_negative && $diff > 0) ) {
+            $temp = $x_value;
+            $x_value = $y_value;
+            $y_value = $temp;
+
+            $x_negative = !$x_negative;
+
+            $x_size = count($x_value);
+            $y_size = count($y_value);
+        }
+
+        // at this point, $x_value should be at least as big as - if not bigger than - $y_value
+
+        $carry = 0;
+        for ($i = 0, $j = 1; $j < $y_size; $i+=2, $j+=2) {
+            $sum = $x_value[$j] * 0x4000000 + $x_value[$i] - $y_value[$j] * 0x4000000 - $y_value[$i] - $carry;
+            $carry = $sum < 0; // eg. floor($sum / 2**52); only possible values (in any base) are 0 and 1
+            $sum = $carry ? $sum + MATH_BIGINTEGER_MAX_DIGIT52 : $sum;
+
+            $temp = (int) ($sum / 0x4000000);
+
+            $x_value[$i] = (int) ($sum - 0x4000000 * $temp);
+            $x_value[$j] = $temp;
+        }
+
+        if ($j == $y_size) { // ie. if $y_size is odd
+            $sum = $x_value[$i] - $y_value[$i] - $carry;
+            $carry = $sum < 0;
+            $x_value[$i] = $carry ? $sum + 0x4000000 : $sum;
+            ++$i;
+        }
+
+        if ($carry) {
+            for (; !$x_value[$i]; ++$i) {
+                $x_value[$i] = 0x3FFFFFF;
+            }
+            --$x_value[$i];
+        }
+
+        return array(
+            MATH_BIGINTEGER_VALUE => $this->_trim($x_value),
+            MATH_BIGINTEGER_SIGN => $x_negative
+        );
+    }
+
+    /**
+     * Multiplies two BigIntegers
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('10');
+     *    $b = new Math_BigInteger('20');
+     *
+     *    $c = $a->multiply($b);
+     *
+     *    echo $c->toString(); // outputs 200
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $x
+     * @return Math_BigInteger
+     * @access public
+     */
+    function multiply($x)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_mul($this->value, $x->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp = new Math_BigInteger();
+                $temp->value = bcmul($this->value, $x->value, 0);
+
+                return $this->_normalize($temp);
+        }
+
+        $temp = $this->_multiply($this->value, $this->is_negative, $x->value, $x->is_negative);
+
+        $product = new Math_BigInteger();
+        $product->value = $temp[MATH_BIGINTEGER_VALUE];
+        $product->is_negative = $temp[MATH_BIGINTEGER_SIGN];
+
+        return $this->_normalize($product);
+    }
+
+    /**
+     * Performs multiplication.
+     *
+     * @param Array $x_value
+     * @param Boolean $x_negative
+     * @param Array $y_value
+     * @param Boolean $y_negative
+     * @return Array
+     * @access private
+     */
+    function _multiply($x_value, $x_negative, $y_value, $y_negative)
+    {
+        //if ( $x_value == $y_value ) {
+        //    return array(
+        //        MATH_BIGINTEGER_VALUE => $this->_square($x_value),
+        //        MATH_BIGINTEGER_SIGN => $x_sign != $y_value
+        //    );
+        //}
+
+        $x_length = count($x_value);
+        $y_length = count($y_value);
+
+        if ( !$x_length || !$y_length ) { // a 0 is being multiplied
+            return array(
+                MATH_BIGINTEGER_VALUE => array(),
+                MATH_BIGINTEGER_SIGN => false
+            );
+        }
+
+        return array(
+            MATH_BIGINTEGER_VALUE => min($x_length, $y_length) < 2 * MATH_BIGINTEGER_KARATSUBA_CUTOFF ?
+                $this->_trim($this->_regularMultiply($x_value, $y_value)) :
+                $this->_trim($this->_karatsuba($x_value, $y_value)),
+            MATH_BIGINTEGER_SIGN => $x_negative != $y_negative
+        );
+    }
+
+    /**
+     * Performs long multiplication on two BigIntegers
+     *
+     * Modeled after 'multiply' in MutableBigInteger.java.
+     *
+     * @param Array $x_value
+     * @param Array $y_value
+     * @return Array
+     * @access private
+     */
+    function _regularMultiply($x_value, $y_value)
+    {
+        $x_length = count($x_value);
+        $y_length = count($y_value);
+
+        if ( !$x_length || !$y_length ) { // a 0 is being multiplied
+            return array();
+        }
+
+        if ( $x_length < $y_length ) {
+            $temp = $x_value;
+            $x_value = $y_value;
+            $y_value = $temp;
+
+            $x_length = count($x_value);
+            $y_length = count($y_value);
+        }
+
+        $product_value = $this->_array_repeat(0, $x_length + $y_length);
+
+        // the following for loop could be removed if the for loop following it
+        // (the one with nested for loops) initially set $i to 0, but
+        // doing so would also make the result in one set of unnecessary adds,
+        // since on the outermost loops first pass, $product->value[$k] is going
+        // to always be 0
+
+        $carry = 0;
+
+        for ($j = 0; $j < $x_length; ++$j) { // ie. $i = 0
+            $temp = $x_value[$j] * $y_value[0] + $carry; // $product_value[$k] == 0
+            $carry = (int) ($temp / 0x4000000);
+            $product_value[$j] = (int) ($temp - 0x4000000 * $carry);
+        }
+
+        $product_value[$j] = $carry;
+
+        // the above for loop is what the previous comment was talking about.  the
+        // following for loop is the "one with nested for loops"
+        for ($i = 1; $i < $y_length; ++$i) {
+            $carry = 0;
+
+            for ($j = 0, $k = $i; $j < $x_length; ++$j, ++$k) {
+                $temp = $product_value[$k] + $x_value[$j] * $y_value[$i] + $carry;
+                $carry = (int) ($temp / 0x4000000);
+                $product_value[$k] = (int) ($temp - 0x4000000 * $carry);
+            }
+
+            $product_value[$k] = $carry;
+        }
+
+        return $product_value;
+    }
+
+    /**
+     * Performs Karatsuba multiplication on two BigIntegers
+     *
+     * See {@link http://en.wikipedia.org/wiki/Karatsuba_algorithm Karatsuba algorithm} and
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=120 MPM 5.2.3}.
+     *
+     * @param Array $x_value
+     * @param Array $y_value
+     * @return Array
+     * @access private
+     */
+    function _karatsuba($x_value, $y_value)
+    {
+        $m = min(count($x_value) >> 1, count($y_value) >> 1);
+
+        if ($m < MATH_BIGINTEGER_KARATSUBA_CUTOFF) {
+            return $this->_regularMultiply($x_value, $y_value);
+        }
+
+        $x1 = array_slice($x_value, $m);
+        $x0 = array_slice($x_value, 0, $m);
+        $y1 = array_slice($y_value, $m);
+        $y0 = array_slice($y_value, 0, $m);
+
+        $z2 = $this->_karatsuba($x1, $y1);
+        $z0 = $this->_karatsuba($x0, $y0);
+
+        $z1 = $this->_add($x1, false, $x0, false);
+        $temp = $this->_add($y1, false, $y0, false);
+        $z1 = $this->_karatsuba($z1[MATH_BIGINTEGER_VALUE], $temp[MATH_BIGINTEGER_VALUE]);
+        $temp = $this->_add($z2, false, $z0, false);
+        $z1 = $this->_subtract($z1, false, $temp[MATH_BIGINTEGER_VALUE], false);
+
+        $z2 = array_merge(array_fill(0, 2 * $m, 0), $z2);
+        $z1[MATH_BIGINTEGER_VALUE] = array_merge(array_fill(0, $m, 0), $z1[MATH_BIGINTEGER_VALUE]);
+
+        $xy = $this->_add($z2, false, $z1[MATH_BIGINTEGER_VALUE], $z1[MATH_BIGINTEGER_SIGN]);
+        $xy = $this->_add($xy[MATH_BIGINTEGER_VALUE], $xy[MATH_BIGINTEGER_SIGN], $z0, false);
+
+        return $xy[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * Performs squaring
+     *
+     * @param Array $x
+     * @return Array
+     * @access private
+     */
+    function _square($x = false)
+    {
+        return count($x) < 2 * MATH_BIGINTEGER_KARATSUBA_CUTOFF ?
+            $this->_trim($this->_baseSquare($x)) :
+            $this->_trim($this->_karatsubaSquare($x));
+    }
+
+    /**
+     * Performs traditional squaring on two BigIntegers
+     *
+     * Squaring can be done faster than multiplying a number by itself can be.  See
+     * {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=7 HAC 14.2.4} /
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=141 MPM 5.3} for more information.
+     *
+     * @param Array $value
+     * @return Array
+     * @access private
+     */
+    function _baseSquare($value)
+    {
+        if ( empty($value) ) {
+            return array();
+        }
+        $square_value = $this->_array_repeat(0, 2 * count($value));
+
+        for ($i = 0, $max_index = count($value) - 1; $i <= $max_index; ++$i) {
+            $i2 = $i << 1;
+
+            $temp = $square_value[$i2] + $value[$i] * $value[$i];
+            $carry = (int) ($temp / 0x4000000);
+            $square_value[$i2] = (int) ($temp - 0x4000000 * $carry);
+
+            // note how we start from $i+1 instead of 0 as we do in multiplication.
+            for ($j = $i + 1, $k = $i2 + 1; $j <= $max_index; ++$j, ++$k) {
+                $temp = $square_value[$k] + 2 * $value[$j] * $value[$i] + $carry;
+                $carry = (int) ($temp / 0x4000000);
+                $square_value[$k] = (int) ($temp - 0x4000000 * $carry);
+            }
+
+            // the following line can yield values larger 2**15.  at this point, PHP should switch
+            // over to floats.
+            $square_value[$i + $max_index + 1] = $carry;
+        }
+
+        return $square_value;
+    }
+
+    /**
+     * Performs Karatsuba "squaring" on two BigIntegers
+     *
+     * See {@link http://en.wikipedia.org/wiki/Karatsuba_algorithm Karatsuba algorithm} and
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=151 MPM 5.3.4}.
+     *
+     * @param Array $value
+     * @return Array
+     * @access private
+     */
+    function _karatsubaSquare($value)
+    {
+        $m = count($value) >> 1;
+
+        if ($m < MATH_BIGINTEGER_KARATSUBA_CUTOFF) {
+            return $this->_baseSquare($value);
+        }
+
+        $x1 = array_slice($value, $m);
+        $x0 = array_slice($value, 0, $m);
+
+        $z2 = $this->_karatsubaSquare($x1);
+        $z0 = $this->_karatsubaSquare($x0);
+
+        $z1 = $this->_add($x1, false, $x0, false);
+        $z1 = $this->_karatsubaSquare($z1[MATH_BIGINTEGER_VALUE]);
+        $temp = $this->_add($z2, false, $z0, false);
+        $z1 = $this->_subtract($z1, false, $temp[MATH_BIGINTEGER_VALUE], false);
+
+        $z2 = array_merge(array_fill(0, 2 * $m, 0), $z2);
+        $z1[MATH_BIGINTEGER_VALUE] = array_merge(array_fill(0, $m, 0), $z1[MATH_BIGINTEGER_VALUE]);
+
+        $xx = $this->_add($z2, false, $z1[MATH_BIGINTEGER_VALUE], $z1[MATH_BIGINTEGER_SIGN]);
+        $xx = $this->_add($xx[MATH_BIGINTEGER_VALUE], $xx[MATH_BIGINTEGER_SIGN], $z0, false);
+
+        return $xx[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * Divides two BigIntegers.
+     *
+     * Returns an array whose first element contains the quotient and whose second element contains the
+     * "common residue".  If the remainder would be positive, the "common residue" and the remainder are the
+     * same.  If the remainder would be negative, the "common residue" is equal to the sum of the remainder
+     * and the divisor (basically, the "common residue" is the first positive modulo).
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('10');
+     *    $b = new Math_BigInteger('20');
+     *
+     *    list($quotient, $remainder) = $a->divide($b);
+     *
+     *    echo $quotient->toString(); // outputs 0
+     *    echo "\r\n";
+     *    echo $remainder->toString(); // outputs 10
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $y
+     * @return Array
+     * @access public
+     * @internal This function is based off of {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=9 HAC 14.20}.
+     */
+    function divide($y)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $quotient = new Math_BigInteger();
+                $remainder = new Math_BigInteger();
+
+                list($quotient->value, $remainder->value) = gmp_div_qr($this->value, $y->value);
+
+                if (gmp_sign($remainder->value) < 0) {
+                    $remainder->value = gmp_add($remainder->value, gmp_abs($y->value));
+                }
+
+                return array($this->_normalize($quotient), $this->_normalize($remainder));
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $quotient = new Math_BigInteger();
+                $remainder = new Math_BigInteger();
+
+                $quotient->value = bcdiv($this->value, $y->value, 0);
+                $remainder->value = bcmod($this->value, $y->value);
+
+                if ($remainder->value[0] == '-') {
+                    $remainder->value = bcadd($remainder->value, $y->value[0] == '-' ? substr($y->value, 1) : $y->value, 0);
+                }
+
+                return array($this->_normalize($quotient), $this->_normalize($remainder));
+        }
+
+        if (count($y->value) == 1) {
+            list($q, $r) = $this->_divide_digit($this->value, $y->value[0]);
+            $quotient = new Math_BigInteger();
+            $remainder = new Math_BigInteger();
+            $quotient->value = $q;
+            $remainder->value = array($r);
+            $quotient->is_negative = $this->is_negative != $y->is_negative;
+            return array($this->_normalize($quotient), $this->_normalize($remainder));
+        }
+
+        static $zero;
+        if ( !isset($zero) ) {
+            $zero = new Math_BigInteger();
+        }
+
+        $x = $this->copy();
+        $y = $y->copy();
+
+        $x_sign = $x->is_negative;
+        $y_sign = $y->is_negative;
+
+        $x->is_negative = $y->is_negative = false;
+
+        $diff = $x->compare($y);
+
+        if ( !$diff ) {
+            $temp = new Math_BigInteger();
+            $temp->value = array(1);
+            $temp->is_negative = $x_sign != $y_sign;
+            return array($this->_normalize($temp), $this->_normalize(new Math_BigInteger()));
+        }
+
+        if ( $diff < 0 ) {
+            // if $x is negative, "add" $y.
+            if ( $x_sign ) {
+                $x = $y->subtract($x);
+            }
+            return array($this->_normalize(new Math_BigInteger()), $this->_normalize($x));
+        }
+
+        // normalize $x and $y as described in HAC 14.23 / 14.24
+        $msb = $y->value[count($y->value) - 1];
+        for ($shift = 0; !($msb & 0x2000000); ++$shift) {
+            $msb <<= 1;
+        }
+        $x->_lshift($shift);
+        $y->_lshift($shift);
+        $y_value = &$y->value;
+
+        $x_max = count($x->value) - 1;
+        $y_max = count($y->value) - 1;
+
+        $quotient = new Math_BigInteger();
+        $quotient_value = &$quotient->value;
+        $quotient_value = $this->_array_repeat(0, $x_max - $y_max + 1);
+
+        static $temp, $lhs, $rhs;
+        if (!isset($temp)) {
+            $temp = new Math_BigInteger();
+            $lhs =  new Math_BigInteger();
+            $rhs =  new Math_BigInteger();
+        }
+        $temp_value = &$temp->value;
+        $rhs_value =  &$rhs->value;
+
+        // $temp = $y << ($x_max - $y_max-1) in base 2**26
+        $temp_value = array_merge($this->_array_repeat(0, $x_max - $y_max), $y_value);
+
+        while ( $x->compare($temp) >= 0 ) {
+            // calculate the "common residue"
+            ++$quotient_value[$x_max - $y_max];
+            $x = $x->subtract($temp);
+            $x_max = count($x->value) - 1;
+        }
+
+        for ($i = $x_max; $i >= $y_max + 1; --$i) {
+            $x_value = &$x->value;
+            $x_window = array(
+                isset($x_value[$i]) ? $x_value[$i] : 0,
+                isset($x_value[$i - 1]) ? $x_value[$i - 1] : 0,
+                isset($x_value[$i - 2]) ? $x_value[$i - 2] : 0
+            );
+            $y_window = array(
+                $y_value[$y_max],
+                ( $y_max > 0 ) ? $y_value[$y_max - 1] : 0
+            );
+
+            $q_index = $i - $y_max - 1;
+            if ($x_window[0] == $y_window[0]) {
+                $quotient_value[$q_index] = 0x3FFFFFF;
+            } else {
+                $quotient_value[$q_index] = (int) (
+                    ($x_window[0] * 0x4000000 + $x_window[1])
+                    /
+                    $y_window[0]
+                );
+            }
+
+            $temp_value = array($y_window[1], $y_window[0]);
+
+            $lhs->value = array($quotient_value[$q_index]);
+            $lhs = $lhs->multiply($temp);
+
+            $rhs_value = array($x_window[2], $x_window[1], $x_window[0]);
+
+            while ( $lhs->compare($rhs) > 0 ) {
+                --$quotient_value[$q_index];
+
+                $lhs->value = array($quotient_value[$q_index]);
+                $lhs = $lhs->multiply($temp);
+            }
+
+            $adjust = $this->_array_repeat(0, $q_index);
+            $temp_value = array($quotient_value[$q_index]);
+            $temp = $temp->multiply($y);
+            $temp_value = &$temp->value;
+            $temp_value = array_merge($adjust, $temp_value);
+
+            $x = $x->subtract($temp);
+
+            if ($x->compare($zero) < 0) {
+                $temp_value = array_merge($adjust, $y_value);
+                $x = $x->add($temp);
+
+                --$quotient_value[$q_index];
+            }
+
+            $x_max = count($x_value) - 1;
+        }
+
+        // unnormalize the remainder
+        $x->_rshift($shift);
+
+        $quotient->is_negative = $x_sign != $y_sign;
+
+        // calculate the "common residue", if appropriate
+        if ( $x_sign ) {
+            $y->_rshift($shift);
+            $x = $y->subtract($x);
+        }
+
+        return array($this->_normalize($quotient), $this->_normalize($x));
+    }
+
+    /**
+     * Divides a BigInteger by a regular integer
+     *
+     * abc / x = a00 / x + b0 / x + c / x
+     *
+     * @param Array $dividend
+     * @param Array $divisor
+     * @return Array
+     * @access private
+     */
+    function _divide_digit($dividend, $divisor)
+    {
+        $carry = 0;
+        $result = array();
+
+        for ($i = count($dividend) - 1; $i >= 0; --$i) {
+            $temp = 0x4000000 * $carry + $dividend[$i];
+            $result[$i] = (int) ($temp / $divisor);
+            $carry = (int) ($temp - $divisor * $result[$i]);
+        }
+
+        return array($result, $carry);
+    }
+
+    /**
+     * Performs modular exponentiation.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger('10');
+     *    $b = new Math_BigInteger('20');
+     *    $c = new Math_BigInteger('30');
+     *
+     *    $c = $a->modPow($b, $c);
+     *
+     *    echo $c->toString(); // outputs 10
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $e
+     * @param Math_BigInteger $n
+     * @return Math_BigInteger
+     * @access public
+     * @internal The most naive approach to modular exponentiation has very unreasonable requirements, and
+     *    and although the approach involving repeated squaring does vastly better, it, too, is impractical
+     *    for our purposes.  The reason being that division - by far the most complicated and time-consuming
+     *    of the basic operations (eg. +,-,*,/) - occurs multiple times within it.
+     *
+     *    Modular reductions resolve this issue.  Although an individual modular reduction takes more time
+     *    then an individual division, when performed in succession (with the same modulo), they're a lot faster.
+     *
+     *    The two most commonly used modular reductions are Barrett and Montgomery reduction.  Montgomery reduction,
+     *    although faster, only works when the gcd of the modulo and of the base being used is 1.  In RSA, when the
+     *    base is a power of two, the modulo - a product of two primes - is always going to have a gcd of 1 (because
+     *    the product of two odd numbers is odd), but what about when RSA isn't used?
+     *
+     *    In contrast, Barrett reduction has no such constraint.  As such, some bigint implementations perform a
+     *    Barrett reduction after every operation in the modpow function.  Others perform Barrett reductions when the
+     *    modulo is even and Montgomery reductions when the modulo is odd.  BigInteger.java's modPow method, however,
+     *    uses a trick involving the Chinese Remainder Theorem to factor the even modulo into two numbers - one odd and
+     *    the other, a power of two - and recombine them, later.  This is the method that this modPow function uses.
+     *    {@link http://islab.oregonstate.edu/papers/j34monex.pdf Montgomery Reduction with Even Modulus} elaborates.
+     */
+    function modPow($e, $n)
+    {
+        $n = $this->bitmask !== false && $this->bitmask->compare($n) < 0 ? $this->bitmask : $n->abs();
+
+        if ($e->compare(new Math_BigInteger()) < 0) {
+            $e = $e->abs();
+
+            $temp = $this->modInverse($n);
+            if ($temp === false) {
+                return false;
+            }
+
+            return $this->_normalize($temp->modPow($e, $n));
+        }
+
+        if ( MATH_BIGINTEGER_MODE == MATH_BIGINTEGER_MODE_GMP ) {
+            $temp = new Math_BigInteger();
+            $temp->value = gmp_powm($this->value, $e->value, $n->value);
+
+            return $this->_normalize($temp);
+        }
+
+        if ($this->compare(new Math_BigInteger()) < 0 || $this->compare($n) > 0) {
+            list(, $temp) = $this->divide($n);
+            return $temp->modPow($e, $n);
+        }
+
+        if (defined('MATH_BIGINTEGER_OPENSSL_ENABLED')) {
+            $components = array(
+                'modulus' => $n->toBytes(true),
+                'publicExponent' => $e->toBytes(true)
+            );
+
+            $components = array(
+                'modulus' => pack('Ca*a*', 2, $this->_encodeASN1Length(strlen($components['modulus'])), $components['modulus']),
+                'publicExponent' => pack('Ca*a*', 2, $this->_encodeASN1Length(strlen($components['publicExponent'])), $components['publicExponent'])
+            );
+
+            $RSAPublicKey = pack('Ca*a*a*',
+                48, $this->_encodeASN1Length(strlen($components['modulus']) + strlen($components['publicExponent'])),
+                $components['modulus'], $components['publicExponent']
+            );
+
+            $rsaOID = pack('H*', '300d06092a864886f70d0101010500'); // hex version of MA0GCSqGSIb3DQEBAQUA
+            $RSAPublicKey = chr(0) . $RSAPublicKey;
+            $RSAPublicKey = chr(3) . $this->_encodeASN1Length(strlen($RSAPublicKey)) . $RSAPublicKey;
+
+            $encapsulated = pack('Ca*a*',
+                48, $this->_encodeASN1Length(strlen($rsaOID . $RSAPublicKey)), $rsaOID . $RSAPublicKey
+            );
+
+            $RSAPublicKey = "-----BEGIN PUBLIC KEY-----\r\n" .
+                             chunk_split(base64_encode($encapsulated)) .
+                             '-----END PUBLIC KEY-----';
+
+            $plaintext = str_pad($this->toBytes(), strlen($n->toBytes(true)) - 1, "\0", STR_PAD_LEFT);
+
+            if (openssl_public_encrypt($plaintext, $result, $RSAPublicKey, OPENSSL_NO_PADDING)) {
+                return new Math_BigInteger($result, 256);
+            }
+        }
+
+        if ( MATH_BIGINTEGER_MODE == MATH_BIGINTEGER_MODE_BCMATH ) {
+                $temp = new Math_BigInteger();
+                $temp->value = bcpowmod($this->value, $e->value, $n->value, 0);
+
+                return $this->_normalize($temp);
+        }
+
+        if ( empty($e->value) ) {
+            $temp = new Math_BigInteger();
+            $temp->value = array(1);
+            return $this->_normalize($temp);
+        }
+
+        if ( $e->value == array(1) ) {
+            list(, $temp) = $this->divide($n);
+            return $this->_normalize($temp);
+        }
+
+        if ( $e->value == array(2) ) {
+            $temp = new Math_BigInteger();
+            $temp->value = $this->_square($this->value);
+            list(, $temp) = $temp->divide($n);
+            return $this->_normalize($temp);
+        }
+
+        return $this->_normalize($this->_slidingWindow($e, $n, MATH_BIGINTEGER_BARRETT));
+
+        // is the modulo odd?
+        if ( $n->value[0] & 1 ) {
+            return $this->_normalize($this->_slidingWindow($e, $n, MATH_BIGINTEGER_MONTGOMERY));
+        }
+        // if it's not, it's even
+
+        // find the lowest set bit (eg. the max pow of 2 that divides $n)
+        for ($i = 0; $i < count($n->value); ++$i) {
+            if ( $n->value[$i] ) {
+                $temp = decbin($n->value[$i]);
+                $j = strlen($temp) - strrpos($temp, '1') - 1;
+                $j+= 26 * $i;
+                break;
+            }
+        }
+        // at this point, 2^$j * $n/(2^$j) == $n
+
+        $mod1 = $n->copy();
+        $mod1->_rshift($j);
+        $mod2 = new Math_BigInteger();
+        $mod2->value = array(1);
+        $mod2->_lshift($j);
+
+        $part1 = ( $mod1->value != array(1) ) ? $this->_slidingWindow($e, $mod1, MATH_BIGINTEGER_MONTGOMERY) : new Math_BigInteger();
+        $part2 = $this->_slidingWindow($e, $mod2, MATH_BIGINTEGER_POWEROF2);
+
+        $y1 = $mod2->modInverse($mod1);
+        $y2 = $mod1->modInverse($mod2);
+
+        $result = $part1->multiply($mod2);
+        $result = $result->multiply($y1);
+
+        $temp = $part2->multiply($mod1);
+        $temp = $temp->multiply($y2);
+
+        $result = $result->add($temp);
+        list(, $result) = $result->divide($n);
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Performs modular exponentiation.
+     *
+     * Alias for Math_BigInteger::modPow()
+     *
+     * @param Math_BigInteger $e
+     * @param Math_BigInteger $n
+     * @return Math_BigInteger
+     * @access public
+     */
+    function powMod($e, $n)
+    {
+        return $this->modPow($e, $n);
+    }
+
+    /**
+     * Sliding Window k-ary Modular Exponentiation
+     *
+     * Based on {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=27 HAC 14.85} /
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=210 MPM 7.7}.  In a departure from those algorithims,
+     * however, this function performs a modular reduction after every multiplication and squaring operation.
+     * As such, this function has the same preconditions that the reductions being used do.
+     *
+     * @param Math_BigInteger $e
+     * @param Math_BigInteger $n
+     * @param Integer $mode
+     * @return Math_BigInteger
+     * @access private
+     */
+    function _slidingWindow($e, $n, $mode)
+    {
+        static $window_ranges = array(7, 25, 81, 241, 673, 1793); // from BigInteger.java's oddModPow function
+        //static $window_ranges = array(0, 7, 36, 140, 450, 1303, 3529); // from MPM 7.3.1
+
+        $e_value = $e->value;
+        $e_length = count($e_value) - 1;
+        $e_bits = decbin($e_value[$e_length]);
+        for ($i = $e_length - 1; $i >= 0; --$i) {
+            $e_bits.= str_pad(decbin($e_value[$i]), 26, '0', STR_PAD_LEFT);
+        }
+
+        $e_length = strlen($e_bits);
+
+        // calculate the appropriate window size.
+        // $window_size == 3 if $window_ranges is between 25 and 81, for example.
+        for ($i = 0, $window_size = 1; $e_length > $window_ranges[$i] && $i < count($window_ranges); ++$window_size, ++$i);
+
+        $n_value = $n->value;
+
+        // precompute $this^0 through $this^$window_size
+        $powers = array();
+        $powers[1] = $this->_prepareReduce($this->value, $n_value, $mode);
+        $powers[2] = $this->_squareReduce($powers[1], $n_value, $mode);
+
+        // we do every other number since substr($e_bits, $i, $j+1) (see below) is supposed to end
+        // in a 1.  ie. it's supposed to be odd.
+        $temp = 1 << ($window_size - 1);
+        for ($i = 1; $i < $temp; ++$i) {
+            $i2 = $i << 1;
+            $powers[$i2 + 1] = $this->_multiplyReduce($powers[$i2 - 1], $powers[2], $n_value, $mode);
+        }
+
+        $result = array(1);
+        $result = $this->_prepareReduce($result, $n_value, $mode);
+
+        for ($i = 0; $i < $e_length; ) {
+            if ( !$e_bits[$i] ) {
+                $result = $this->_squareReduce($result, $n_value, $mode);
+                ++$i;
+            } else {
+                for ($j = $window_size - 1; $j > 0; --$j) {
+                    if ( !empty($e_bits[$i + $j]) ) {
+                        break;
+                    }
+                }
+
+                for ($k = 0; $k <= $j; ++$k) {// eg. the length of substr($e_bits, $i, $j+1)
+                    $result = $this->_squareReduce($result, $n_value, $mode);
+                }
+
+                $result = $this->_multiplyReduce($result, $powers[bindec(substr($e_bits, $i, $j + 1))], $n_value, $mode);
+
+                $i+=$j + 1;
+            }
+        }
+
+        $temp = new Math_BigInteger();
+        $temp->value = $this->_reduce($result, $n_value, $mode);
+
+        return $temp;
+    }
+
+    /**
+     * Modular reduction
+     *
+     * For most $modes this will return the remainder.
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @param Integer $mode
+     * @return Array
+     */
+    function _reduce($x, $n, $mode)
+    {
+        switch ($mode) {
+            case MATH_BIGINTEGER_MONTGOMERY:
+                return $this->_montgomery($x, $n);
+            case MATH_BIGINTEGER_BARRETT:
+                return $this->_barrett($x, $n);
+            case MATH_BIGINTEGER_POWEROF2:
+                $lhs = new Math_BigInteger();
+                $lhs->value = $x;
+                $rhs = new Math_BigInteger();
+                $rhs->value = $n;
+                return $x->_mod2($n);
+            case MATH_BIGINTEGER_CLASSIC:
+                $lhs = new Math_BigInteger();
+                $lhs->value = $x;
+                $rhs = new Math_BigInteger();
+                $rhs->value = $n;
+                list(, $temp) = $lhs->divide($rhs);
+                return $temp->value;
+            case MATH_BIGINTEGER_NONE:
+                return $x;
+            default:
+                // an invalid $mode was provided
+        }
+    }
+
+    /**
+     * Modular reduction preperation
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @param Integer $mode
+     * @return Array
+     */
+    function _prepareReduce($x, $n, $mode)
+    {
+        if ($mode == MATH_BIGINTEGER_MONTGOMERY) {
+            return $this->_prepMontgomery($x, $n);
+        }
+        return $this->_reduce($x, $n, $mode);
+    }
+
+    /**
+     * Modular multiply
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $y
+     * @param Array $n
+     * @param Integer $mode
+     * @return Array
+     */
+    function _multiplyReduce($x, $y, $n, $mode)
+    {
+        if ($mode == MATH_BIGINTEGER_MONTGOMERY) {
+            return $this->_montgomeryMultiply($x, $y, $n);
+        }
+        $temp = $this->_multiply($x, false, $y, false);
+        return $this->_reduce($temp[MATH_BIGINTEGER_VALUE], $n, $mode);
+    }
+
+    /**
+     * Modular square
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @param Integer $mode
+     * @return Array
+     */
+    function _squareReduce($x, $n, $mode)
+    {
+        if ($mode == MATH_BIGINTEGER_MONTGOMERY) {
+            return $this->_montgomeryMultiply($x, $x, $n);
+        }
+        return $this->_reduce($this->_square($x), $n, $mode);
+    }
+
+    /**
+     * Modulos for Powers of Two
+     *
+     * Calculates $x%$n, where $n = 2**$e, for some $e.  Since this is basically the same as doing $x & ($n-1),
+     * we'll just use this function as a wrapper for doing that.
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Math_BigInteger
+     * @return Math_BigInteger
+     */
+    function _mod2($n)
+    {
+        $temp = new Math_BigInteger();
+        $temp->value = array(1);
+        return $this->bitwise_and($n->subtract($temp));
+    }
+
+    /**
+     * Barrett Modular Reduction
+     *
+     * See {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=14 HAC 14.3.3} /
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=165 MPM 6.2.5} for more information.  Modified slightly,
+     * so as not to require negative numbers (initially, this script didn't support negative numbers).
+     *
+     * Employs "folding", as described at
+     * {@link http://www.cosic.esat.kuleuven.be/publications/thesis-149.pdf#page=66 thesis-149.pdf#page=66}.  To quote from
+     * it, "the idea [behind folding] is to find a value x' such that x (mod m) = x' (mod m), with x' being smaller than x."
+     *
+     * Unfortunately, the "Barrett Reduction with Folding" algorithm described in thesis-149.pdf is not, as written, all that
+     * usable on account of (1) its not using reasonable radix points as discussed in
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=162 MPM 6.2.2} and (2) the fact that, even with reasonable
+     * radix points, it only works when there are an even number of digits in the denominator.  The reason for (2) is that
+     * (x >> 1) + (x >> 1) != x / 2 + x / 2.  If x is even, they're the same, but if x is odd, they're not.  See the in-line
+     * comments for details.
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $n
+     * @param Array $m
+     * @return Array
+     */
+    function _barrett($n, $m)
+    {
+        static $cache = array(
+            MATH_BIGINTEGER_VARIABLE => array(),
+            MATH_BIGINTEGER_DATA => array()
+        );
+
+        $m_length = count($m);
+
+        // if ($this->_compare($n, $this->_square($m)) >= 0) {
+        if (count($n) > 2 * $m_length) {
+            $lhs = new Math_BigInteger();
+            $rhs = new Math_BigInteger();
+            $lhs->value = $n;
+            $rhs->value = $m;
+            list(, $temp) = $lhs->divide($rhs);
+            return $temp->value;
+        }
+
+        // if (m.length >> 1) + 2 <= m.length then m is too small and n can't be reduced
+        if ($m_length < 5) {
+            return $this->_regularBarrett($n, $m);
+        }
+
+        // n = 2 * m.length
+
+        if ( ($key = array_search($m, $cache[MATH_BIGINTEGER_VARIABLE])) === false ) {
+            $key = count($cache[MATH_BIGINTEGER_VARIABLE]);
+            $cache[MATH_BIGINTEGER_VARIABLE][] = $m;
+
+            $lhs = new Math_BigInteger();
+            $lhs_value = &$lhs->value;
+            $lhs_value = $this->_array_repeat(0, $m_length + ($m_length >> 1));
+            $lhs_value[] = 1;
+            $rhs = new Math_BigInteger();
+            $rhs->value = $m;
+
+            list($u, $m1) = $lhs->divide($rhs);
+            $u = $u->value;
+            $m1 = $m1->value;
+
+            $cache[MATH_BIGINTEGER_DATA][] = array(
+                'u' => $u, // m.length >> 1 (technically (m.length >> 1) + 1)
+                'm1'=> $m1 // m.length
+            );
+        } else {
+            extract($cache[MATH_BIGINTEGER_DATA][$key]);
+        }
+
+        $cutoff = $m_length + ($m_length >> 1);
+        $lsd = array_slice($n, 0, $cutoff); // m.length + (m.length >> 1)
+        $msd = array_slice($n, $cutoff);    // m.length >> 1
+        $lsd = $this->_trim($lsd);
+        $temp = $this->_multiply($msd, false, $m1, false);
+        $n = $this->_add($lsd, false, $temp[MATH_BIGINTEGER_VALUE], false); // m.length + (m.length >> 1) + 1
+
+        if ($m_length & 1) {
+            return $this->_regularBarrett($n[MATH_BIGINTEGER_VALUE], $m);
+        }
+
+        // (m.length + (m.length >> 1) + 1) - (m.length - 1) == (m.length >> 1) + 2
+        $temp = array_slice($n[MATH_BIGINTEGER_VALUE], $m_length - 1);
+        // if even: ((m.length >> 1) + 2) + (m.length >> 1) == m.length + 2
+        // if odd:  ((m.length >> 1) + 2) + (m.length >> 1) == (m.length - 1) + 2 == m.length + 1
+        $temp = $this->_multiply($temp, false, $u, false);
+        // if even: (m.length + 2) - ((m.length >> 1) + 1) = m.length - (m.length >> 1) + 1
+        // if odd:  (m.length + 1) - ((m.length >> 1) + 1) = m.length - (m.length >> 1)
+        $temp = array_slice($temp[MATH_BIGINTEGER_VALUE], ($m_length >> 1) + 1);
+        // if even: (m.length - (m.length >> 1) + 1) + m.length = 2 * m.length - (m.length >> 1) + 1
+        // if odd:  (m.length - (m.length >> 1)) + m.length     = 2 * m.length - (m.length >> 1)
+        $temp = $this->_multiply($temp, false, $m, false);
+
+        // at this point, if m had an odd number of digits, we'd be subtracting a 2 * m.length - (m.length >> 1) digit
+        // number from a m.length + (m.length >> 1) + 1 digit number.  ie. there'd be an extra digit and the while loop
+        // following this comment would loop a lot (hence our calling _regularBarrett() in that situation).
+
+        $result = $this->_subtract($n[MATH_BIGINTEGER_VALUE], false, $temp[MATH_BIGINTEGER_VALUE], false);
+
+        while ($this->_compare($result[MATH_BIGINTEGER_VALUE], $result[MATH_BIGINTEGER_SIGN], $m, false) >= 0) {
+            $result = $this->_subtract($result[MATH_BIGINTEGER_VALUE], $result[MATH_BIGINTEGER_SIGN], $m, false);
+        }
+
+        return $result[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * (Regular) Barrett Modular Reduction
+     *
+     * For numbers with more than four digits Math_BigInteger::_barrett() is faster.  The difference between that and this
+     * is that this function does not fold the denominator into a smaller form.
+     *
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @return Array
+     */
+    function _regularBarrett($x, $n)
+    {
+        static $cache = array(
+            MATH_BIGINTEGER_VARIABLE => array(),
+            MATH_BIGINTEGER_DATA => array()
+        );
+
+        $n_length = count($n);
+
+        if (count($x) > 2 * $n_length) {
+            $lhs = new Math_BigInteger();
+            $rhs = new Math_BigInteger();
+            $lhs->value = $x;
+            $rhs->value = $n;
+            list(, $temp) = $lhs->divide($rhs);
+            return $temp->value;
+        }
+
+        if ( ($key = array_search($n, $cache[MATH_BIGINTEGER_VARIABLE])) === false ) {
+            $key = count($cache[MATH_BIGINTEGER_VARIABLE]);
+            $cache[MATH_BIGINTEGER_VARIABLE][] = $n;
+            $lhs = new Math_BigInteger();
+            $lhs_value = &$lhs->value;
+            $lhs_value = $this->_array_repeat(0, 2 * $n_length);
+            $lhs_value[] = 1;
+            $rhs = new Math_BigInteger();
+            $rhs->value = $n;
+            list($temp, ) = $lhs->divide($rhs); // m.length
+            $cache[MATH_BIGINTEGER_DATA][] = $temp->value;
+        }
+
+        // 2 * m.length - (m.length - 1) = m.length + 1
+        $temp = array_slice($x, $n_length - 1);
+        // (m.length + 1) + m.length = 2 * m.length + 1
+        $temp = $this->_multiply($temp, false, $cache[MATH_BIGINTEGER_DATA][$key], false);
+        // (2 * m.length + 1) - (m.length - 1) = m.length + 2
+        $temp = array_slice($temp[MATH_BIGINTEGER_VALUE], $n_length + 1);
+
+        // m.length + 1
+        $result = array_slice($x, 0, $n_length + 1);
+        // m.length + 1
+        $temp = $this->_multiplyLower($temp, false, $n, false, $n_length + 1);
+        // $temp == array_slice($temp->_multiply($temp, false, $n, false)->value, 0, $n_length + 1)
+
+        if ($this->_compare($result, false, $temp[MATH_BIGINTEGER_VALUE], $temp[MATH_BIGINTEGER_SIGN]) < 0) {
+            $corrector_value = $this->_array_repeat(0, $n_length + 1);
+            $corrector_value[] = 1;
+            $result = $this->_add($result, false, $corrector, false);
+            $result = $result[MATH_BIGINTEGER_VALUE];
+        }
+
+        // at this point, we're subtracting a number with m.length + 1 digits from another number with m.length + 1 digits
+        $result = $this->_subtract($result, false, $temp[MATH_BIGINTEGER_VALUE], $temp[MATH_BIGINTEGER_SIGN]);
+        while ($this->_compare($result[MATH_BIGINTEGER_VALUE], $result[MATH_BIGINTEGER_SIGN], $n, false) > 0) {
+            $result = $this->_subtract($result[MATH_BIGINTEGER_VALUE], $result[MATH_BIGINTEGER_SIGN], $n, false);
+        }
+
+        return $result[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * Performs long multiplication up to $stop digits
+     *
+     * If you're going to be doing array_slice($product->value, 0, $stop), some cycles can be saved.
+     *
+     * @see _regularBarrett()
+     * @param Array $x_value
+     * @param Boolean $x_negative
+     * @param Array $y_value
+     * @param Boolean $y_negative
+     * @return Array
+     * @access private
+     */
+    function _multiplyLower($x_value, $x_negative, $y_value, $y_negative, $stop)
+    {
+        $x_length = count($x_value);
+        $y_length = count($y_value);
+
+        if ( !$x_length || !$y_length ) { // a 0 is being multiplied
+            return array(
+                MATH_BIGINTEGER_VALUE => array(),
+                MATH_BIGINTEGER_SIGN => false
+            );
+        }
+
+        if ( $x_length < $y_length ) {
+            $temp = $x_value;
+            $x_value = $y_value;
+            $y_value = $temp;
+
+            $x_length = count($x_value);
+            $y_length = count($y_value);
+        }
+
+        $product_value = $this->_array_repeat(0, $x_length + $y_length);
+
+        // the following for loop could be removed if the for loop following it
+        // (the one with nested for loops) initially set $i to 0, but
+        // doing so would also make the result in one set of unnecessary adds,
+        // since on the outermost loops first pass, $product->value[$k] is going
+        // to always be 0
+
+        $carry = 0;
+
+        for ($j = 0; $j < $x_length; ++$j) { // ie. $i = 0, $k = $i
+            $temp = $x_value[$j] * $y_value[0] + $carry; // $product_value[$k] == 0
+            $carry = (int) ($temp / 0x4000000);
+            $product_value[$j] = (int) ($temp - 0x4000000 * $carry);
+        }
+
+        if ($j < $stop) {
+            $product_value[$j] = $carry;
+        }
+
+        // the above for loop is what the previous comment was talking about.  the
+        // following for loop is the "one with nested for loops"
+
+        for ($i = 1; $i < $y_length; ++$i) {
+            $carry = 0;
+
+            for ($j = 0, $k = $i; $j < $x_length && $k < $stop; ++$j, ++$k) {
+                $temp = $product_value[$k] + $x_value[$j] * $y_value[$i] + $carry;
+                $carry = (int) ($temp / 0x4000000);
+                $product_value[$k] = (int) ($temp - 0x4000000 * $carry);
+            }
+
+            if ($k < $stop) {
+                $product_value[$k] = $carry;
+            }
+        }
+
+        return array(
+            MATH_BIGINTEGER_VALUE => $this->_trim($product_value),
+            MATH_BIGINTEGER_SIGN => $x_negative != $y_negative
+        );
+    }
+
+    /**
+     * Montgomery Modular Reduction
+     *
+     * ($x->_prepMontgomery($n))->_montgomery($n) yields $x % $n.
+     * {@link http://math.libtomcrypt.com/files/tommath.pdf#page=170 MPM 6.3} provides insights on how this can be
+     * improved upon (basically, by using the comba method).  gcd($n, 2) must be equal to one for this function
+     * to work correctly.
+     *
+     * @see _prepMontgomery()
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @return Array
+     */
+    function _montgomery($x, $n)
+    {
+        static $cache = array(
+            MATH_BIGINTEGER_VARIABLE => array(),
+            MATH_BIGINTEGER_DATA => array()
+        );
+
+        if ( ($key = array_search($n, $cache[MATH_BIGINTEGER_VARIABLE])) === false ) {
+            $key = count($cache[MATH_BIGINTEGER_VARIABLE]);
+            $cache[MATH_BIGINTEGER_VARIABLE][] = $x;
+            $cache[MATH_BIGINTEGER_DATA][] = $this->_modInverse67108864($n);
+        }
+
+        $k = count($n);
+
+        $result = array(MATH_BIGINTEGER_VALUE => $x);
+
+        for ($i = 0; $i < $k; ++$i) {
+            $temp = $result[MATH_BIGINTEGER_VALUE][$i] * $cache[MATH_BIGINTEGER_DATA][$key];
+            $temp = (int) ($temp - 0x4000000 * ((int) ($temp / 0x4000000)));
+            $temp = $this->_regularMultiply(array($temp), $n);
+            $temp = array_merge($this->_array_repeat(0, $i), $temp);
+            $result = $this->_add($result[MATH_BIGINTEGER_VALUE], false, $temp, false);
+        }
+
+        $result[MATH_BIGINTEGER_VALUE] = array_slice($result[MATH_BIGINTEGER_VALUE], $k);
+
+        if ($this->_compare($result, false, $n, false) >= 0) {
+            $result = $this->_subtract($result[MATH_BIGINTEGER_VALUE], false, $n, false);
+        }
+
+        return $result[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * Montgomery Multiply
+     *
+     * Interleaves the montgomery reduction and long multiplication algorithms together as described in 
+     * {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=13 HAC 14.36}
+     *
+     * @see _prepMontgomery()
+     * @see _montgomery()
+     * @access private
+     * @param Array $x
+     * @param Array $y
+     * @param Array $m
+     * @return Array
+     */
+    function _montgomeryMultiply($x, $y, $m)
+    {
+        $temp = $this->_multiply($x, false, $y, false);
+        return $this->_montgomery($temp[MATH_BIGINTEGER_VALUE], $m);
+
+        static $cache = array(
+            MATH_BIGINTEGER_VARIABLE => array(),
+            MATH_BIGINTEGER_DATA => array()
+        );
+
+        if ( ($key = array_search($m, $cache[MATH_BIGINTEGER_VARIABLE])) === false ) {
+            $key = count($cache[MATH_BIGINTEGER_VARIABLE]);
+            $cache[MATH_BIGINTEGER_VARIABLE][] = $m;
+            $cache[MATH_BIGINTEGER_DATA][] = $this->_modInverse67108864($m);
+        }
+
+        $n = max(count($x), count($y), count($m));
+        $x = array_pad($x, $n, 0);
+        $y = array_pad($y, $n, 0);
+        $m = array_pad($m, $n, 0);
+        $a = array(MATH_BIGINTEGER_VALUE => $this->_array_repeat(0, $n + 1));
+        for ($i = 0; $i < $n; ++$i) {
+            $temp = $a[MATH_BIGINTEGER_VALUE][0] + $x[$i] * $y[0];
+            $temp = (int) ($temp - 0x4000000 * ((int) ($temp / 0x4000000)));
+            $temp = $temp * $cache[MATH_BIGINTEGER_DATA][$key];
+            $temp = (int) ($temp - 0x4000000 * ((int) ($temp / 0x4000000)));
+            $temp = $this->_add($this->_regularMultiply(array($x[$i]), $y), false, $this->_regularMultiply(array($temp), $m), false);
+            $a = $this->_add($a[MATH_BIGINTEGER_VALUE], false, $temp[MATH_BIGINTEGER_VALUE], false);
+            $a[MATH_BIGINTEGER_VALUE] = array_slice($a[MATH_BIGINTEGER_VALUE], 1);
+        }
+        if ($this->_compare($a[MATH_BIGINTEGER_VALUE], false, $m, false) >= 0) {
+            $a = $this->_subtract($a[MATH_BIGINTEGER_VALUE], false, $m, false);
+        }
+        return $a[MATH_BIGINTEGER_VALUE];
+    }
+
+    /**
+     * Prepare a number for use in Montgomery Modular Reductions
+     *
+     * @see _montgomery()
+     * @see _slidingWindow()
+     * @access private
+     * @param Array $x
+     * @param Array $n
+     * @return Array
+     */
+    function _prepMontgomery($x, $n)
+    {
+        $lhs = new Math_BigInteger();
+        $lhs->value = array_merge($this->_array_repeat(0, count($n)), $x);
+        $rhs = new Math_BigInteger();
+        $rhs->value = $n;
+
+        list(, $temp) = $lhs->divide($rhs);
+        return $temp->value;
+    }
+
+    /**
+     * Modular Inverse of a number mod 2**26 (eg. 67108864)
+     *
+     * Based off of the bnpInvDigit function implemented and justified in the following URL:
+     *
+     * {@link http://www-cs-students.stanford.edu/~tjw/jsbn/jsbn.js}
+     *
+     * The following URL provides more info:
+     *
+     * {@link http://groups.google.com/group/sci.crypt/msg/7a137205c1be7d85}
+     *
+     * As for why we do all the bitmasking...  strange things can happen when converting from floats to ints. For
+     * instance, on some computers, var_dump((int) -4294967297) yields int(-1) and on others, it yields 
+     * int(-2147483648).  To avoid problems stemming from this, we use bitmasks to guarantee that ints aren't
+     * auto-converted to floats.  The outermost bitmask is present because without it, there's no guarantee that
+     * the "residue" returned would be the so-called "common residue".  We use fmod, in the last step, because the
+     * maximum possible $x is 26 bits and the maximum $result is 16 bits.  Thus, we have to be able to handle up to
+     * 40 bits, which only 64-bit floating points will support.
+     *
+     * Thanks to Pedro Gimeno Fortea for input!
+     *
+     * @see _montgomery()
+     * @access private
+     * @param Array $x
+     * @return Integer
+     */
+    function _modInverse67108864($x) // 2**26 == 67108864
+    {
+        $x = -$x[0];
+        $result = $x & 0x3; // x**-1 mod 2**2
+        $result = ($result * (2 - $x * $result)) & 0xF; // x**-1 mod 2**4
+        $result = ($result * (2 - ($x & 0xFF) * $result))  & 0xFF; // x**-1 mod 2**8
+        $result = ($result * ((2 - ($x & 0xFFFF) * $result) & 0xFFFF)) & 0xFFFF; // x**-1 mod 2**16
+        $result = fmod($result * (2 - fmod($x * $result, 0x4000000)), 0x4000000); // x**-1 mod 2**26
+        return $result & 0x3FFFFFF;
+    }
+
+    /**
+     * Calculates modular inverses.
+     *
+     * Say you have (30 mod 17 * x mod 17) mod 17 == 1.  x can be found using modular inverses.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger(30);
+     *    $b = new Math_BigInteger(17);
+     *
+     *    $c = $a->modInverse($b);
+     *    echo $c->toString(); // outputs 4
+     *
+     *    echo "\r\n";
+     *
+     *    $d = $a->multiply($c);
+     *    list(, $d) = $d->divide($b);
+     *    echo $d; // outputs 1 (as per the definition of modular inverse)
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $n
+     * @return mixed false, if no modular inverse exists, Math_BigInteger, otherwise.
+     * @access public
+     * @internal See {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=21 HAC 14.64} for more information.
+     */
+    function modInverse($n)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_invert($this->value, $n->value);
+
+                return ( $temp->value === false ) ? false : $this->_normalize($temp);
+        }
+
+        static $zero, $one;
+        if (!isset($zero)) {
+            $zero = new Math_BigInteger();
+            $one = new Math_BigInteger(1);
+        }
+
+        // $x mod -$n == $x mod $n.
+        $n = $n->abs();
+
+        if ($this->compare($zero) < 0) {
+            $temp = $this->abs();
+            $temp = $temp->modInverse($n);
+            return $this->_normalize($n->subtract($temp));
+        }
+
+        extract($this->extendedGCD($n));
+
+        if (!$gcd->equals($one)) {
+            return false;
+        }
+
+        $x = $x->compare($zero) < 0 ? $x->add($n) : $x;
+
+        return $this->compare($zero) < 0 ? $this->_normalize($n->subtract($x)) : $this->_normalize($x);
+    }
+
+    /**
+     * Calculates the greatest common divisor and B�zout's identity.
+     *
+     * Say you have 693 and 609.  The GCD is 21.  B�zout's identity states that there exist integers x and y such that
+     * 693*x + 609*y == 21.  In point of fact, there are actually an infinite number of x and y combinations and which
+     * combination is returned is dependant upon which mode is in use.  See
+     * {@link http://en.wikipedia.org/wiki/B%C3%A9zout%27s_identity B�zout's identity - Wikipedia} for more information.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger(693);
+     *    $b = new Math_BigInteger(609);
+     *
+     *    extract($a->extendedGCD($b));
+     *
+     *    echo $gcd->toString() . "\r\n"; // outputs 21
+     *    echo $a->toString() * $x->toString() + $b->toString() * $y->toString(); // outputs 21
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $n
+     * @return Math_BigInteger
+     * @access public
+     * @internal Calculates the GCD using the binary xGCD algorithim described in
+     *    {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf#page=19 HAC 14.61}.  As the text above 14.61 notes,
+     *    the more traditional algorithim requires "relatively costly multiple-precision divisions".
+     */
+    function extendedGCD($n)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                extract(gmp_gcdext($this->value, $n->value));
+
+                return array(
+                    'gcd' => $this->_normalize(new Math_BigInteger($g)),
+                    'x'   => $this->_normalize(new Math_BigInteger($s)),
+                    'y'   => $this->_normalize(new Math_BigInteger($t))
+                );
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                // it might be faster to use the binary xGCD algorithim here, as well, but (1) that algorithim works
+                // best when the base is a power of 2 and (2) i don't think it'd make much difference, anyway.  as is,
+                // the basic extended euclidean algorithim is what we're using.
+
+                $u = $this->value;
+                $v = $n->value;
+
+                $a = '1';
+                $b = '0';
+                $c = '0';
+                $d = '1';
+
+                while (bccomp($v, '0', 0) != 0) {
+                    $q = bcdiv($u, $v, 0);
+
+                    $temp = $u;
+                    $u = $v;
+                    $v = bcsub($temp, bcmul($v, $q, 0), 0);
+
+                    $temp = $a;
+                    $a = $c;
+                    $c = bcsub($temp, bcmul($a, $q, 0), 0);
+
+                    $temp = $b;
+                    $b = $d;
+                    $d = bcsub($temp, bcmul($b, $q, 0), 0);
+                }
+
+                return array(
+                    'gcd' => $this->_normalize(new Math_BigInteger($u)),
+                    'x'   => $this->_normalize(new Math_BigInteger($a)),
+                    'y'   => $this->_normalize(new Math_BigInteger($b))
+                );
+        }
+
+        $y = $n->copy();
+        $x = $this->copy();
+        $g = new Math_BigInteger();
+        $g->value = array(1);
+
+        while ( !(($x->value[0] & 1)|| ($y->value[0] & 1)) ) {
+            $x->_rshift(1);
+            $y->_rshift(1);
+            $g->_lshift(1);
+        }
+
+        $u = $x->copy();
+        $v = $y->copy();
+
+        $a = new Math_BigInteger();
+        $b = new Math_BigInteger();
+        $c = new Math_BigInteger();
+        $d = new Math_BigInteger();
+
+        $a->value = $d->value = $g->value = array(1);
+        $b->value = $c->value = array();
+
+        while ( !empty($u->value) ) {
+            while ( !($u->value[0] & 1) ) {
+                $u->_rshift(1);
+                if ( (!empty($a->value) && ($a->value[0] & 1)) || (!empty($b->value) && ($b->value[0] & 1)) ) {
+                    $a = $a->add($y);
+                    $b = $b->subtract($x);
+                }
+                $a->_rshift(1);
+                $b->_rshift(1);
+            }
+
+            while ( !($v->value[0] & 1) ) {
+                $v->_rshift(1);
+                if ( (!empty($d->value) && ($d->value[0] & 1)) || (!empty($c->value) && ($c->value[0] & 1)) ) {
+                    $c = $c->add($y);
+                    $d = $d->subtract($x);
+                }
+                $c->_rshift(1);
+                $d->_rshift(1);
+            }
+
+            if ($u->compare($v) >= 0) {
+                $u = $u->subtract($v);
+                $a = $a->subtract($c);
+                $b = $b->subtract($d);
+            } else {
+                $v = $v->subtract($u);
+                $c = $c->subtract($a);
+                $d = $d->subtract($b);
+            }
+        }
+
+        return array(
+            'gcd' => $this->_normalize($g->multiply($v)),
+            'x'   => $this->_normalize($c),
+            'y'   => $this->_normalize($d)
+        );
+    }
+
+    /**
+     * Calculates the greatest common divisor
+     *
+     * Say you have 693 and 609.  The GCD is 21.
+     *
+     * Here's an example:
+     * <code>
+     * <?php
+     *    include('Math/BigInteger.php');
+     *
+     *    $a = new Math_BigInteger(693);
+     *    $b = new Math_BigInteger(609);
+     *
+     *    $gcd = a->extendedGCD($b);
+     *
+     *    echo $gcd->toString() . "\r\n"; // outputs 21
+     * ?>
+     * </code>
+     *
+     * @param Math_BigInteger $n
+     * @return Math_BigInteger
+     * @access public
+     */
+    function gcd($n)
+    {
+        extract($this->extendedGCD($n));
+        return $gcd;
+    }
+
+    /**
+     * Absolute value.
+     *
+     * @return Math_BigInteger
+     * @access public
+     */
+    function abs()
+    {
+        $temp = new Math_BigInteger();
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp->value = gmp_abs($this->value);
+                break;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp->value = (bccomp($this->value, '0', 0) < 0) ? substr($this->value, 1) : $this->value;
+                break;
+            default:
+                $temp->value = $this->value;
+        }
+
+        return $temp;
+    }
+
+    /**
+     * Compares two numbers.
+     *
+     * Although one might think !$x->compare($y) means $x != $y, it, in fact, means the opposite.  The reason for this is
+     * demonstrated thusly:
+     *
+     * $x  > $y: $x->compare($y)  > 0
+     * $x  < $y: $x->compare($y)  < 0
+     * $x == $y: $x->compare($y) == 0
+     *
+     * Note how the same comparison operator is used.  If you want to test for equality, use $x->equals($y).
+     *
+     * @param Math_BigInteger $x
+     * @return Integer < 0 if $this is less than $x; > 0 if $this is greater than $x, and 0 if they are equal.
+     * @access public
+     * @see equals()
+     * @internal Could return $this->subtract($x), but that's not as fast as what we do do.
+     */
+    function compare($y)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                return gmp_cmp($this->value, $y->value);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                return bccomp($this->value, $y->value, 0);
+        }
+
+        return $this->_compare($this->value, $this->is_negative, $y->value, $y->is_negative);
+    }
+
+    /**
+     * Compares two numbers.
+     *
+     * @param Array $x_value
+     * @param Boolean $x_negative
+     * @param Array $y_value
+     * @param Boolean $y_negative
+     * @return Integer
+     * @see compare()
+     * @access private
+     */
+    function _compare($x_value, $x_negative, $y_value, $y_negative)
+    {
+        if ( $x_negative != $y_negative ) {
+            return ( !$x_negative && $y_negative ) ? 1 : -1;
+        }
+
+        $result = $x_negative ? -1 : 1;
+
+        if ( count($x_value) != count($y_value) ) {
+            return ( count($x_value) > count($y_value) ) ? $result : -$result;
+        }
+        $size = max(count($x_value), count($y_value));
+
+        $x_value = array_pad($x_value, $size, 0);
+        $y_value = array_pad($y_value, $size, 0);
+
+        for ($i = count($x_value) - 1; $i >= 0; --$i) {
+            if ($x_value[$i] != $y_value[$i]) {
+                return ( $x_value[$i] > $y_value[$i] ) ? $result : -$result;
+            }
+        }
+
+        return 0;
+    }
+
+    /**
+     * Tests the equality of two numbers.
+     *
+     * If you need to see if one number is greater than or less than another number, use Math_BigInteger::compare()
+     *
+     * @param Math_BigInteger $x
+     * @return Boolean
+     * @access public
+     * @see compare()
+     */
+    function equals($x)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                return gmp_cmp($this->value, $x->value) == 0;
+            default:
+                return $this->value === $x->value && $this->is_negative == $x->is_negative;
+        }
+    }
+
+    /**
+     * Set Precision
+     *
+     * Some bitwise operations give different results depending on the precision being used.  Examples include left
+     * shift, not, and rotates.
+     *
+     * @param Math_BigInteger $x
+     * @access public
+     * @return Math_BigInteger
+     */
+    function setPrecision($bits)
+    {
+        $this->precision = $bits;
+        if ( MATH_BIGINTEGER_MODE != MATH_BIGINTEGER_MODE_BCMATH ) {
+            $this->bitmask = new Math_BigInteger(chr((1 << ($bits & 0x7)) - 1) . str_repeat(chr(0xFF), $bits >> 3), 256);
+        } else {
+            $this->bitmask = new Math_BigInteger(bcpow('2', $bits, 0));
+        }
+
+        $temp = $this->_normalize($this);
+        $this->value = $temp->value;
+    }
+
+    /**
+     * Logical And
+     *
+     * @param Math_BigInteger $x
+     * @access public
+     * @internal Implemented per a request by Lluis Pamies i Juarez <lluis _a_ pamies.cat>
+     * @return Math_BigInteger
+     */
+    function bitwise_and($x)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_and($this->value, $x->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $left = $this->toBytes();
+                $right = $x->toBytes();
+
+                $length = max(strlen($left), strlen($right));
+
+                $left = str_pad($left, $length, chr(0), STR_PAD_LEFT);
+                $right = str_pad($right, $length, chr(0), STR_PAD_LEFT);
+
+                return $this->_normalize(new Math_BigInteger($left & $right, 256));
+        }
+
+        $result = $this->copy();
+
+        $length = min(count($x->value), count($this->value));
+
+        $result->value = array_slice($result->value, 0, $length);
+
+        for ($i = 0; $i < $length; ++$i) {
+            $result->value[$i] = $result->value[$i] & $x->value[$i];
+        }
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Logical Or
+     *
+     * @param Math_BigInteger $x
+     * @access public
+     * @internal Implemented per a request by Lluis Pamies i Juarez <lluis _a_ pamies.cat>
+     * @return Math_BigInteger
+     */
+    function bitwise_or($x)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_or($this->value, $x->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $left = $this->toBytes();
+                $right = $x->toBytes();
+
+                $length = max(strlen($left), strlen($right));
+
+                $left = str_pad($left, $length, chr(0), STR_PAD_LEFT);
+                $right = str_pad($right, $length, chr(0), STR_PAD_LEFT);
+
+                return $this->_normalize(new Math_BigInteger($left | $right, 256));
+        }
+
+        $length = max(count($this->value), count($x->value));
+        $result = $this->copy();
+        $result->value = array_pad($result->value, 0, $length);
+        $x->value = array_pad($x->value, 0, $length);
+
+        for ($i = 0; $i < $length; ++$i) {
+            $result->value[$i] = $this->value[$i] | $x->value[$i];
+        }
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Logical Exclusive-Or
+     *
+     * @param Math_BigInteger $x
+     * @access public
+     * @internal Implemented per a request by Lluis Pamies i Juarez <lluis _a_ pamies.cat>
+     * @return Math_BigInteger
+     */
+    function bitwise_xor($x)
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                $temp = new Math_BigInteger();
+                $temp->value = gmp_xor($this->value, $x->value);
+
+                return $this->_normalize($temp);
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $left = $this->toBytes();
+                $right = $x->toBytes();
+
+                $length = max(strlen($left), strlen($right));
+
+                $left = str_pad($left, $length, chr(0), STR_PAD_LEFT);
+                $right = str_pad($right, $length, chr(0), STR_PAD_LEFT);
+
+                return $this->_normalize(new Math_BigInteger($left ^ $right, 256));
+        }
+
+        $length = max(count($this->value), count($x->value));
+        $result = $this->copy();
+        $result->value = array_pad($result->value, 0, $length);
+        $x->value = array_pad($x->value, 0, $length);
+
+        for ($i = 0; $i < $length; ++$i) {
+            $result->value[$i] = $this->value[$i] ^ $x->value[$i];
+        }
+
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Logical Not
+     *
+     * @access public
+     * @internal Implemented per a request by Lluis Pamies i Juarez <lluis _a_ pamies.cat>
+     * @return Math_BigInteger
+     */
+    function bitwise_not()
+    {
+        // calculuate "not" without regard to $this->precision
+        // (will always result in a smaller number.  ie. ~1 isn't 1111 1110 - it's 0)
+        $temp = $this->toBytes();
+        $pre_msb = decbin(ord($temp[0]));
+        $temp = ~$temp;
+        $msb = decbin(ord($temp[0]));
+        if (strlen($msb) == 8) {
+            $msb = substr($msb, strpos($msb, '0'));
+        }
+        $temp[0] = chr(bindec($msb));
+
+        // see if we need to add extra leading 1's
+        $current_bits = strlen($pre_msb) + 8 * strlen($temp) - 8;
+        $new_bits = $this->precision - $current_bits;
+        if ($new_bits <= 0) {
+            return $this->_normalize(new Math_BigInteger($temp, 256));
+        }
+
+        // generate as many leading 1's as we need to.
+        $leading_ones = chr((1 << ($new_bits & 0x7)) - 1) . str_repeat(chr(0xFF), $new_bits >> 3);
+        $this->_base256_lshift($leading_ones, $current_bits);
+
+        $temp = str_pad($temp, ceil($this->bits / 8), chr(0), STR_PAD_LEFT);
+
+        return $this->_normalize(new Math_BigInteger($leading_ones | $temp, 256));
+    }
+
+    /**
+     * Logical Right Shift
+     *
+     * Shifts BigInteger's by $shift bits, effectively dividing by 2**$shift.
+     *
+     * @param Integer $shift
+     * @return Math_BigInteger
+     * @access public
+     * @internal The only version that yields any speed increases is the internal version.
+     */
+    function bitwise_rightShift($shift)
+    {
+        $temp = new Math_BigInteger();
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                static $two;
+
+                if (!isset($two)) {
+                    $two = gmp_init('2');
+                }
+
+                $temp->value = gmp_div_q($this->value, gmp_pow($two, $shift));
+
+                break;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp->value = bcdiv($this->value, bcpow('2', $shift, 0), 0);
+
+                break;
+            default: // could just replace _lshift with this, but then all _lshift() calls would need to be rewritten
+                     // and I don't want to do that...
+                $temp->value = $this->value;
+                $temp->_rshift($shift);
+        }
+
+        return $this->_normalize($temp);
+    }
+
+    /**
+     * Logical Left Shift
+     *
+     * Shifts BigInteger's by $shift bits, effectively multiplying by 2**$shift.
+     *
+     * @param Integer $shift
+     * @return Math_BigInteger
+     * @access public
+     * @internal The only version that yields any speed increases is the internal version.
+     */
+    function bitwise_leftShift($shift)
+    {
+        $temp = new Math_BigInteger();
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                static $two;
+
+                if (!isset($two)) {
+                    $two = gmp_init('2');
+                }
+
+                $temp->value = gmp_mul($this->value, gmp_pow($two, $shift));
+
+                break;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                $temp->value = bcmul($this->value, bcpow('2', $shift, 0), 0);
+
+                break;
+            default: // could just replace _rshift with this, but then all _lshift() calls would need to be rewritten
+                     // and I don't want to do that...
+                $temp->value = $this->value;
+                $temp->_lshift($shift);
+        }
+
+        return $this->_normalize($temp);
+    }
+
+    /**
+     * Logical Left Rotate
+     *
+     * Instead of the top x bits being dropped they're appended to the shifted bit string.
+     *
+     * @param Integer $shift
+     * @return Math_BigInteger
+     * @access public
+     */
+    function bitwise_leftRotate($shift)
+    {
+        $bits = $this->toBytes();
+
+        if ($this->precision > 0) {
+            $precision = $this->precision;
+            if ( MATH_BIGINTEGER_MODE == MATH_BIGINTEGER_MODE_BCMATH ) {
+                $mask = $this->bitmask->subtract(new Math_BigInteger(1));
+                $mask = $mask->toBytes();
+            } else {
+                $mask = $this->bitmask->toBytes();
+            }
+        } else {
+            $temp = ord($bits[0]);
+            for ($i = 0; $temp >> $i; ++$i);
+            $precision = 8 * strlen($bits) - 8 + $i;
+            $mask = chr((1 << ($precision & 0x7)) - 1) . str_repeat(chr(0xFF), $precision >> 3);
+        }
+
+        if ($shift < 0) {
+            $shift+= $precision;
+        }
+        $shift%= $precision;
+
+        if (!$shift) {
+            return $this->copy();
+        }
+
+        $left = $this->bitwise_leftShift($shift);
+        $left = $left->bitwise_and(new Math_BigInteger($mask, 256));
+        $right = $this->bitwise_rightShift($precision - $shift);
+        $result = MATH_BIGINTEGER_MODE != MATH_BIGINTEGER_MODE_BCMATH ? $left->bitwise_or($right) : $left->add($right);
+        return $this->_normalize($result);
+    }
+
+    /**
+     * Logical Right Rotate
+     *
+     * Instead of the bottom x bits being dropped they're prepended to the shifted bit string.
+     *
+     * @param Integer $shift
+     * @return Math_BigInteger
+     * @access public
+     */
+    function bitwise_rightRotate($shift)
+    {
+        return $this->bitwise_leftRotate(-$shift);
+    }
+
+    /**
+     * Set random number generator function
+     *
+     * This function is deprecated.
+     *
+     * @param String $generator
+     * @access public
+     */
+    function setRandomGenerator($generator)
+    {
+    }
+
+    /**
+     * Generate a random number
+     *
+     * @param optional Integer $min
+     * @param optional Integer $max
+     * @return Math_BigInteger
+     * @access public
+     */
+    function random($min = false, $max = false)
+    {
+        if ($min === false) {
+            $min = new Math_BigInteger(0);
+        }
+
+        if ($max === false) {
+            $max = new Math_BigInteger(0x7FFFFFFF);
+        }
+
+        $compare = $max->compare($min);
+
+        if (!$compare) {
+            return $this->_normalize($min);
+        } else if ($compare < 0) {
+            // if $min is bigger then $max, swap $min and $max
+            $temp = $max;
+            $max = $min;
+            $min = $temp;
+        }
+
+        $generator = $this->generator;
+
+        $max = $max->subtract($min);
+        $max = ltrim($max->toBytes(), chr(0));
+        $size = strlen($max) - 1;
+
+        $crypt_random = function_exists('crypt_random_string') || (!class_exists('Crypt_Random') && function_exists('crypt_random_string'));
+        if ($crypt_random) {
+            $random = crypt_random_string($size);
+        } else {
+            $random = '';
+
+            if ($size & 1) {
+                $random.= chr(mt_rand(0, 255));
+            }
+
+            $blocks = $size >> 1;
+            for ($i = 0; $i < $blocks; ++$i) {
+                // mt_rand(-2147483648, 0x7FFFFFFF) always produces -2147483648 on some systems
+                $random.= pack('n', mt_rand(0, 0xFFFF));
+            }
+        }
+
+        $fragment = new Math_BigInteger($random, 256);
+        $leading = $fragment->compare(new Math_BigInteger(substr($max, 1), 256)) > 0 ?
+            ord($max[0]) - 1 : ord($max[0]);
+
+        if (!$crypt_random) {
+            $msb = chr(mt_rand(0, $leading));
+        } else {
+            $cutoff = floor(0xFF / $leading) * $leading;
+            while (true) {
+                $msb = ord(crypt_random_string(1));
+                if ($msb <= $cutoff) {
+                    $msb%= $leading;
+                    break;
+                }
+            }
+            $msb = chr($msb);
+        }
+
+        $random = new Math_BigInteger($msb . $random, 256);
+
+        return $this->_normalize($random->add($min));
+    }
+
+    /**
+     * Generate a random prime number.
+     *
+     * If there's not a prime within the given range, false will be returned.  If more than $timeout seconds have elapsed,
+     * give up and return false.
+     *
+     * @param optional Integer $min
+     * @param optional Integer $max
+     * @param optional Integer $timeout
+     * @return Math_BigInteger
+     * @access public
+     * @internal See {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap4.pdf#page=15 HAC 4.44}.
+     */
+    function randomPrime($min = false, $max = false, $timeout = false)
+    {
+        $compare = $max->compare($min);
+
+        if (!$compare) {
+            return $min;
+        } else if ($compare < 0) {
+            // if $min is bigger then $max, swap $min and $max
+            $temp = $max;
+            $max = $min;
+            $min = $temp;
+        }
+
+        // gmp_nextprime() requires PHP 5 >= 5.2.0 per <http://php.net/gmp-nextprime>.
+        if ( MATH_BIGINTEGER_MODE == MATH_BIGINTEGER_MODE_GMP && function_exists('gmp_nextprime') ) {
+            // we don't rely on Math_BigInteger::random()'s min / max when gmp_nextprime() is being used since this function
+            // does its own checks on $max / $min when gmp_nextprime() is used.  When gmp_nextprime() is not used, however,
+            // the same $max / $min checks are not performed.
+            if ($min === false) {
+                $min = new Math_BigInteger(0);
+            }
+
+            if ($max === false) {
+                $max = new Math_BigInteger(0x7FFFFFFF);
+            }
+
+            $x = $this->random($min, $max);
+
+            $x->value = gmp_nextprime($x->value);
+
+            if ($x->compare($max) <= 0) {
+                return $x;
+            }
+
+            $x->value = gmp_nextprime($min->value);
+
+            if ($x->compare($max) <= 0) {
+                return $x;
+            }
+
+            return false;
+        }
+
+        static $one, $two;
+        if (!isset($one)) {
+            $one = new Math_BigInteger(1);
+            $two = new Math_BigInteger(2);
+        }
+
+        $start = time();
+
+        $x = $this->random($min, $max);
+        if ($x->equals($two)) {
+            return $x;
+        }
+
+        $x->_make_odd();
+        if ($x->compare($max) > 0) {
+            // if $x > $max then $max is even and if $min == $max then no prime number exists between the specified range
+            if ($min->equals($max)) {
+                return false;
+            }
+            $x = $min->copy();
+            $x->_make_odd();
+        }
+
+        $initial_x = $x->copy();
+
+        while (true) {
+            if ($timeout !== false && time() - $start > $timeout) {
+                return false;
+            }
+
+            if ($x->isPrime()) {
+                return $x;
+            }
+
+            $x = $x->add($two);
+
+            if ($x->compare($max) > 0) {
+                $x = $min->copy();
+                if ($x->equals($two)) {
+                    return $x;
+                }
+                $x->_make_odd();
+            }
+
+            if ($x->equals($initial_x)) {
+                return false;
+            }
+        }
+    }
+
+    /**
+     * Make the current number odd
+     *
+     * If the current number is odd it'll be unchanged.  If it's even, one will be added to it.
+     *
+     * @see randomPrime()
+     * @access private
+     */
+    function _make_odd()
+    {
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                gmp_setbit($this->value, 0);
+                break;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                if ($this->value[strlen($this->value) - 1] % 2 == 0) {
+                    $this->value = bcadd($this->value, '1');
+                }
+                break;
+            default:
+                $this->value[0] |= 1;
+        }
+    }
+
+    /**
+     * Checks a numer to see if it's prime
+     *
+     * Assuming the $t parameter is not set, this function has an error rate of 2**-80.  The main motivation for the
+     * $t parameter is distributability.  Math_BigInteger::randomPrime() can be distributed accross multiple pageloads
+     * on a website instead of just one.
+     *
+     * @param optional Integer $t
+     * @return Boolean
+     * @access public
+     * @internal Uses the
+     *     {@link http://en.wikipedia.org/wiki/Miller%E2%80%93Rabin_primality_test Miller-Rabin primality test}.  See 
+     *     {@link http://www.cacr.math.uwaterloo.ca/hac/about/chap4.pdf#page=8 HAC 4.24}.
+     */
+    function isPrime($t = false)
+    {
+        $length = strlen($this->toBytes());
+
+        if (!$t) {
+            // see HAC 4.49 "Note (controlling the error probability)"
+                 if ($length >= 163) { $t =  2; } // floor(1300 / 8)
+            else if ($length >= 106) { $t =  3; } // floor( 850 / 8)
+            else if ($length >= 81 ) { $t =  4; } // floor( 650 / 8)
+            else if ($length >= 68 ) { $t =  5; } // floor( 550 / 8)
+            else if ($length >= 56 ) { $t =  6; } // floor( 450 / 8)
+            else if ($length >= 50 ) { $t =  7; } // floor( 400 / 8)
+            else if ($length >= 43 ) { $t =  8; } // floor( 350 / 8)
+            else if ($length >= 37 ) { $t =  9; } // floor( 300 / 8)
+            else if ($length >= 31 ) { $t = 12; } // floor( 250 / 8)
+            else if ($length >= 25 ) { $t = 15; } // floor( 200 / 8)
+            else if ($length >= 18 ) { $t = 18; } // floor( 150 / 8)
+            else                     { $t = 27; }
+        }
+
+        // ie. gmp_testbit($this, 0)
+        // ie. isEven() or !isOdd()
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                return gmp_prob_prime($this->value, $t) != 0;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                if ($this->value === '2') {
+                    return true;
+                }
+                if ($this->value[strlen($this->value) - 1] % 2 == 0) {
+                    return false;
+                }
+                break;
+            default:
+                if ($this->value == array(2)) {
+                    return true;
+                }
+                if (~$this->value[0] & 1) {
+                    return false;
+                }
+        }
+
+        static $primes, $zero, $one, $two;
+
+        if (!isset($primes)) {
+            $primes = array(
+                3,    5,    7,    11,   13,   17,   19,   23,   29,   31,   37,   41,   43,   47,   53,   59,   
+                61,   67,   71,   73,   79,   83,   89,   97,   101,  103,  107,  109,  113,  127,  131,  137,  
+                139,  149,  151,  157,  163,  167,  173,  179,  181,  191,  193,  197,  199,  211,  223,  227,  
+                229,  233,  239,  241,  251,  257,  263,  269,  271,  277,  281,  283,  293,  307,  311,  313,  
+                317,  331,  337,  347,  349,  353,  359,  367,  373,  379,  383,  389,  397,  401,  409,  419,  
+                421,  431,  433,  439,  443,  449,  457,  461,  463,  467,  479,  487,  491,  499,  503,  509,  
+                521,  523,  541,  547,  557,  563,  569,  571,  577,  587,  593,  599,  601,  607,  613,  617,  
+                619,  631,  641,  643,  647,  653,  659,  661,  673,  677,  683,  691,  701,  709,  719,  727,  
+                733,  739,  743,  751,  757,  761,  769,  773,  787,  797,  809,  811,  821,  823,  827,  829,  
+                839,  853,  857,  859,  863,  877,  881,  883,  887,  907,  911,  919,  929,  937,  941,  947,  
+                953,  967,  971,  977,  983,  991,  997
+            );
+
+            if ( MATH_BIGINTEGER_MODE != MATH_BIGINTEGER_MODE_INTERNAL ) {
+                for ($i = 0; $i < count($primes); ++$i) {
+                    $primes[$i] = new Math_BigInteger($primes[$i]);
+                }
+            }
+
+            $zero = new Math_BigInteger();
+            $one = new Math_BigInteger(1);
+            $two = new Math_BigInteger(2);
+        }
+
+        if ($this->equals($one)) {
+            return false;
+        }
+
+        // see HAC 4.4.1 "Random search for probable primes"
+        if ( MATH_BIGINTEGER_MODE != MATH_BIGINTEGER_MODE_INTERNAL ) {
+            foreach ($primes as $prime) {
+                list(, $r) = $this->divide($prime);
+                if ($r->equals($zero)) {
+                    return $this->equals($prime);
+                }
+            }
+        } else {
+            $value = $this->value;
+            foreach ($primes as $prime) {
+                list(, $r) = $this->_divide_digit($value, $prime);
+                if (!$r) {
+                    return count($value) == 1 && $value[0] == $prime;
+                }
+            }
+        }
+
+        $n   = $this->copy();
+        $n_1 = $n->subtract($one);
+        $n_2 = $n->subtract($two);
+
+        $r = $n_1->copy();
+        $r_value = $r->value;
+        // ie. $s = gmp_scan1($n, 0) and $r = gmp_div_q($n, gmp_pow(gmp_init('2'), $s));
+        if ( MATH_BIGINTEGER_MODE == MATH_BIGINTEGER_MODE_BCMATH ) {
+            $s = 0;
+            // if $n was 1, $r would be 0 and this would be an infinite loop, hence our $this->equals($one) check earlier
+            while ($r->value[strlen($r->value) - 1] % 2 == 0) {
+                $r->value = bcdiv($r->value, '2', 0);
+                ++$s;
+            }
+        } else {
+            for ($i = 0, $r_length = count($r_value); $i < $r_length; ++$i) {
+                $temp = ~$r_value[$i] & 0xFFFFFF;
+                for ($j = 1; ($temp >> $j) & 1; ++$j);
+                if ($j != 25) {
+                    break;
+                }
+            }
+            $s = 26 * $i + $j - 1;
+            $r->_rshift($s);
+        }
+
+        for ($i = 0; $i < $t; ++$i) {
+            $a = $this->random($two, $n_2);
+            $y = $a->modPow($r, $n);
+
+            if (!$y->equals($one) && !$y->equals($n_1)) {
+                for ($j = 1; $j < $s && !$y->equals($n_1); ++$j) {
+                    $y = $y->modPow($two, $n);
+                    if ($y->equals($one)) {
+                        return false;
+                    }
+                }
+
+                if (!$y->equals($n_1)) {
+                    return false;
+                }
+            }
+        }
+        return true;
+    }
+
+    /**
+     * Logical Left Shift
+     *
+     * Shifts BigInteger's by $shift bits.
+     *
+     * @param Integer $shift
+     * @access private
+     */
+    function _lshift($shift)
+    {
+        if ( $shift == 0 ) {
+            return;
+        }
+
+        $num_digits = (int) ($shift / 26);
+        $shift %= 26;
+        $shift = 1 << $shift;
+
+        $carry = 0;
+
+        for ($i = 0; $i < count($this->value); ++$i) {
+            $temp = $this->value[$i] * $shift + $carry;
+            $carry = (int) ($temp / 0x4000000);
+            $this->value[$i] = (int) ($temp - $carry * 0x4000000);
+        }
+
+        if ( $carry ) {
+            $this->value[] = $carry;
+        }
+
+        while ($num_digits--) {
+            array_unshift($this->value, 0);
+        }
+    }
+
+    /**
+     * Logical Right Shift
+     *
+     * Shifts BigInteger's by $shift bits.
+     *
+     * @param Integer $shift
+     * @access private
+     */
+    function _rshift($shift)
+    {
+        if ($shift == 0) {
+            return;
+        }
+
+        $num_digits = (int) ($shift / 26);
+        $shift %= 26;
+        $carry_shift = 26 - $shift;
+        $carry_mask = (1 << $shift) - 1;
+
+        if ( $num_digits ) {
+            $this->value = array_slice($this->value, $num_digits);
+        }
+
+        $carry = 0;
+
+        for ($i = count($this->value) - 1; $i >= 0; --$i) {
+            $temp = $this->value[$i] >> $shift | $carry;
+            $carry = ($this->value[$i] & $carry_mask) << $carry_shift;
+            $this->value[$i] = $temp;
+        }
+
+        $this->value = $this->_trim($this->value);
+    }
+
+    /**
+     * Normalize
+     *
+     * Removes leading zeros and truncates (if necessary) to maintain the appropriate precision
+     *
+     * @param Math_BigInteger
+     * @return Math_BigInteger
+     * @see _trim()
+     * @access private
+     */
+    function _normalize($result)
+    {
+        $result->precision = $this->precision;
+        $result->bitmask = $this->bitmask;
+
+        switch ( MATH_BIGINTEGER_MODE ) {
+            case MATH_BIGINTEGER_MODE_GMP:
+                if (!empty($result->bitmask->value)) {
+                    $result->value = gmp_and($result->value, $result->bitmask->value);
+                }
+
+                return $result;
+            case MATH_BIGINTEGER_MODE_BCMATH:
+                if (!empty($result->bitmask->value)) {
+                    $result->value = bcmod($result->value, $result->bitmask->value);
+                }
+
+                return $result;
+        }
+
+        $value = &$result->value;
+
+        if ( !count($value) ) {
+            return $result;
+        }
+
+        $value = $this->_trim($value);
+
+        if (!empty($result->bitmask->value)) {
+            $length = min(count($value), count($this->bitmask->value));
+            $value = array_slice($value, 0, $length);
+
+            for ($i = 0; $i < $length; ++$i) {
+                $value[$i] = $value[$i] & $this->bitmask->value[$i];
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Trim
+     *
+     * Removes leading zeros
+     *
+     * @return Math_BigInteger
+     * @access private
+     */
+    function _trim($value)
+    {
+        for ($i = count($value) - 1; $i >= 0; --$i) {
+            if ( $value[$i] ) {
+                break;
+            }
+            unset($value[$i]);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Array Repeat
+     *
+     * @param $input Array
+     * @param $multiplier mixed
+     * @return Array
+     * @access private
+     */
+    function _array_repeat($input, $multiplier)
+    {
+        return ($multiplier) ? array_fill(0, $multiplier, $input) : array();
+    }
+
+    /**
+     * Logical Left Shift
+     *
+     * Shifts binary strings $shift bits, essentially multiplying by 2**$shift.
+     *
+     * @param $x String
+     * @param $shift Integer
+     * @return String
+     * @access private
+     */
+    function _base256_lshift(&$x, $shift)
+    {
+        if ($shift == 0) {
+            return;
+        }
+
+        $num_bytes = $shift >> 3; // eg. floor($shift/8)
+        $shift &= 7; // eg. $shift % 8
+
+        $carry = 0;
+        for ($i = strlen($x) - 1; $i >= 0; --$i) {
+            $temp = ord($x[$i]) << $shift | $carry;
+            $x[$i] = chr($temp);
+            $carry = $temp >> 8;
+        }
+        $carry = ($carry != 0) ? chr($carry) : '';
+        $x = $carry . $x . str_repeat(chr(0), $num_bytes);
+    }
+
+    /**
+     * Logical Right Shift
+     *
+     * Shifts binary strings $shift bits, essentially dividing by 2**$shift and returning the remainder.
+     *
+     * @param $x String
+     * @param $shift Integer
+     * @return String
+     * @access private
+     */
+    function _base256_rshift(&$x, $shift)
+    {
+        if ($shift == 0) {
+            $x = ltrim($x, chr(0));
+            return '';
+        }
+
+        $num_bytes = $shift >> 3; // eg. floor($shift/8)
+        $shift &= 7; // eg. $shift % 8
+
+        $remainder = '';
+        if ($num_bytes) {
+            $start = $num_bytes > strlen($x) ? -strlen($x) : -$num_bytes;
+            $remainder = substr($x, $start);
+            $x = substr($x, 0, -$num_bytes);
+        }
+
+        $carry = 0;
+        $carry_shift = 8 - $shift;
+        for ($i = 0; $i < strlen($x); ++$i) {
+            $temp = (ord($x[$i]) >> $shift) | $carry;
+            $carry = (ord($x[$i]) << $carry_shift) & 0xFF;
+            $x[$i] = chr($temp);
+        }
+        $x = ltrim($x, chr(0));
+
+        $remainder = chr($carry >> $carry_shift) . $remainder;
+
+        return ltrim($remainder, chr(0));
+    }
+
+    // one quirk about how the following functions are implemented is that PHP defines N to be an unsigned long
+    // at 32-bits, while java's longs are 64-bits.
+
+    /**
+     * Converts 32-bit integers to bytes.
+     *
+     * @param Integer $x
+     * @return String
+     * @access private
+     */
+    function _int2bytes($x)
+    {
+        return ltrim(pack('N', $x), chr(0));
+    }
+
+    /**
+     * Converts bytes to 32-bit integers
+     *
+     * @param String $x
+     * @return Integer
+     * @access private
+     */
+    function _bytes2int($x)
+    {
+        $temp = unpack('Nint', str_pad($x, 4, chr(0), STR_PAD_LEFT));
+        return $temp['int'];
+    }
+
+    /**
+     * DER-encode an integer
+     *
+     * The ability to DER-encode integers is needed to create RSA public keys for use with OpenSSL
+     *
+     * @see modPow()
+     * @access private
+     * @param Integer $length
+     * @return String
+     */
+    function _encodeASN1Length($length)
+    {
+        if ($length <= 0x7F) {
+            return chr($length);
+        }
+
+        $temp = ltrim(pack('N', $length), chr(0));
+        return pack('Ca*', 0x80 | strlen($temp), $temp);
+    }
+}
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SFTP.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SFTP.php
new file mode 100644
index 0000000000000000000000000000000000000000..8db087d3d99c695fe6b701ce720d6e9c3f9431a7
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SFTP.php
@@ -0,0 +1,2029 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of SFTP.
+ *
+ * PHP versions 4 and 5
+ *
+ * Currently only supports SFTPv2 and v3, which, according to wikipedia.org, "is the most widely used version,
+ * implemented by the popular OpenSSH SFTP server".  If you want SFTPv4/5/6 support, provide me with access
+ * to an SFTPv4/5/6 server.
+ *
+ * The API for this library is modeled after the API from PHP's {@link http://php.net/book.ftp FTP extension}.
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Net/SFTP.php');
+ *
+ *    $sftp = new Net_SFTP('www.domain.tld');
+ *    if (!$sftp->login('username', 'password')) {
+ *        exit('Login Failed');
+ *    }
+ *
+ *    echo $sftp->pwd() . "\r\n";
+ *    $sftp->put('filename.ext', 'hello, world!');
+ *    print_r($sftp->nlist());
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Net
+ * @package    Net_SFTP
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMIX Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Net_SSH2
+ */
+if (!class_exists('Net_SSH2')) {
+    require_once('Net/SSH2.php');
+}
+
+/**#@+
+ * @access public
+ * @see Net_SFTP::getLog()
+ */
+/**
+ * Returns the message numbers
+ */
+define('NET_SFTP_LOG_SIMPLE',  NET_SSH2_LOG_SIMPLE);
+/**
+ * Returns the message content
+ */
+define('NET_SFTP_LOG_COMPLEX', NET_SSH2_LOG_COMPLEX);
+/**
+ * Outputs the message content in real-time.
+ */
+define('NET_SFTP_LOG_REALTIME', 3);
+/**#@-*/
+
+/**
+ * SFTP channel constant
+ *
+ * Net_SSH2::exec() uses 0 and Net_SSH2::read() / Net_SSH2::write() use 1.
+ *
+ * @see Net_SSH2::_send_channel_packet()
+ * @see Net_SSH2::_get_channel_packet()
+ * @access private
+ */
+define('NET_SFTP_CHANNEL', 2);
+
+/**#@+
+ * @access public
+ * @see Net_SFTP::put()
+ */
+/**
+ * Reads data from a local file.
+ */
+define('NET_SFTP_LOCAL_FILE', 1);
+/**
+ * Reads data from a string.
+ */
+// this value isn't really used anymore but i'm keeping it reserved for historical reasons
+define('NET_SFTP_STRING',  2);
+/**
+ * Resumes an upload
+ */
+define('NET_SFTP_RESUME',  4);
+/**#@-*/
+
+/**
+ * Pure-PHP implementations of SFTP.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Net_SFTP
+ */
+class Net_SFTP extends Net_SSH2 {
+    /**
+     * Packet Types
+     *
+     * @see Net_SFTP::Net_SFTP()
+     * @var Array
+     * @access private
+     */
+    var $packet_types = array();
+
+    /**
+     * Status Codes
+     *
+     * @see Net_SFTP::Net_SFTP()
+     * @var Array
+     * @access private
+     */
+    var $status_codes = array();
+
+    /**
+     * The Request ID
+     *
+     * The request ID exists in the off chance that a packet is sent out-of-order.  Of course, this library doesn't support
+     * concurrent actions, so it's somewhat academic, here.
+     *
+     * @var Integer
+     * @see Net_SFTP::_send_sftp_packet()
+     * @access private
+     */
+    var $request_id = false;
+
+    /**
+     * The Packet Type
+     *
+     * The request ID exists in the off chance that a packet is sent out-of-order.  Of course, this library doesn't support
+     * concurrent actions, so it's somewhat academic, here.
+     *
+     * @var Integer
+     * @see Net_SFTP::_get_sftp_packet()
+     * @access private
+     */
+    var $packet_type = -1;
+
+    /**
+     * Packet Buffer
+     *
+     * @var String
+     * @see Net_SFTP::_get_sftp_packet()
+     * @access private
+     */
+    var $packet_buffer = '';
+
+    /**
+     * Extensions supported by the server
+     *
+     * @var Array
+     * @see Net_SFTP::_initChannel()
+     * @access private
+     */
+    var $extensions = array();
+
+    /**
+     * Server SFTP version
+     *
+     * @var Integer
+     * @see Net_SFTP::_initChannel()
+     * @access private
+     */
+    var $version;
+
+    /**
+     * Current working directory
+     *
+     * @var String
+     * @see Net_SFTP::_realpath()
+     * @see Net_SFTP::chdir()
+     * @access private
+     */
+    var $pwd = false;
+
+    /**
+     * Packet Type Log
+     *
+     * @see Net_SFTP::getLog()
+     * @var Array
+     * @access private
+     */
+    var $packet_type_log = array();
+
+    /**
+     * Packet Log
+     *
+     * @see Net_SFTP::getLog()
+     * @var Array
+     * @access private
+     */
+    var $packet_log = array();
+
+    /**
+     * Error information
+     *
+     * @see Net_SFTP::getSFTPErrors()
+     * @see Net_SFTP::getLastSFTPError()
+     * @var String
+     * @access private
+     */
+    var $sftp_errors = array();
+
+    /**
+     * File Type
+     *
+     * @see Net_SFTP::_parseLongname()
+     * @var Integer
+     * @access private
+     */
+    var $fileType = 0;
+
+    /**
+     * Directory Cache
+     *
+     * Rather than always having to open a directory and close it immediately there after to see if a file is a directory or
+     * rather than always 
+     *
+     * @see Net_SFTP::_save_dir()
+     * @see Net_SFTP::_remove_dir()
+     * @see Net_SFTP::_is_dir()
+     * @var Array
+     * @access private
+     */
+    var $dirs = array();
+
+    /**
+     * Default Constructor.
+     *
+     * Connects to an SFTP server
+     *
+     * @param String $host
+     * @param optional Integer $port
+     * @param optional Integer $timeout
+     * @return Net_SFTP
+     * @access public
+     */
+    function Net_SFTP($host, $port = 22, $timeout = 10)
+    {
+        parent::Net_SSH2($host, $port, $timeout);
+        $this->packet_types = array(
+            1  => 'NET_SFTP_INIT',
+            2  => 'NET_SFTP_VERSION',
+            /* the format of SSH_FXP_OPEN changed between SFTPv4 and SFTPv5+:
+                   SFTPv5+: http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.1.1
+               pre-SFTPv5 : http://tools.ietf.org/html/draft-ietf-secsh-filexfer-04#section-6.3 */
+            3  => 'NET_SFTP_OPEN',
+            4  => 'NET_SFTP_CLOSE',
+            5  => 'NET_SFTP_READ',
+            6  => 'NET_SFTP_WRITE',
+            7  => 'NET_SFTP_LSTAT',
+            9  => 'NET_SFTP_SETSTAT',
+            11 => 'NET_SFTP_OPENDIR',
+            12 => 'NET_SFTP_READDIR',
+            13 => 'NET_SFTP_REMOVE',
+            14 => 'NET_SFTP_MKDIR',
+            15 => 'NET_SFTP_RMDIR',
+            16 => 'NET_SFTP_REALPATH',
+            17 => 'NET_SFTP_STAT',
+            /* the format of SSH_FXP_RENAME changed between SFTPv4 and SFTPv5+:
+                   SFTPv5+: http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.3
+               pre-SFTPv5 : http://tools.ietf.org/html/draft-ietf-secsh-filexfer-04#section-6.5 */
+            18 => 'NET_SFTP_RENAME',
+
+            101=> 'NET_SFTP_STATUS',
+            102=> 'NET_SFTP_HANDLE',
+            /* the format of SSH_FXP_NAME changed between SFTPv3 and SFTPv4+:
+                   SFTPv4+: http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-9.4
+               pre-SFTPv4 : http://tools.ietf.org/html/draft-ietf-secsh-filexfer-02#section-7 */
+            103=> 'NET_SFTP_DATA',
+            104=> 'NET_SFTP_NAME',
+            105=> 'NET_SFTP_ATTRS',
+
+            200=> 'NET_SFTP_EXTENDED'
+        );
+        $this->status_codes = array(
+            0 => 'NET_SFTP_STATUS_OK',
+            1 => 'NET_SFTP_STATUS_EOF',
+            2 => 'NET_SFTP_STATUS_NO_SUCH_FILE',
+            3 => 'NET_SFTP_STATUS_PERMISSION_DENIED',
+            4 => 'NET_SFTP_STATUS_FAILURE',
+            5 => 'NET_SFTP_STATUS_BAD_MESSAGE',
+            6 => 'NET_SFTP_STATUS_NO_CONNECTION',
+            7 => 'NET_SFTP_STATUS_CONNECTION_LOST',
+            8 => 'NET_SFTP_STATUS_OP_UNSUPPORTED'
+        );
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-7.1
+        // the order, in this case, matters quite a lot - see Net_SFTP::_parseAttributes() to understand why
+        $this->attributes = array(
+            0x00000001 => 'NET_SFTP_ATTR_SIZE',
+            0x00000002 => 'NET_SFTP_ATTR_UIDGID', // defined in SFTPv3, removed in SFTPv4+
+            0x00000004 => 'NET_SFTP_ATTR_PERMISSIONS',
+            0x00000008 => 'NET_SFTP_ATTR_ACCESSTIME',
+            // 0x80000000 will yield a floating point on 32-bit systems and converting floating points to integers
+            // yields inconsistent behavior depending on how php is compiled.  so we left shift -1 (which, in 
+            // two's compliment, consists of all 1 bits) by 31.  on 64-bit systems this'll yield 0xFFFFFFFF80000000.
+            // that's not a problem, however, and 'anded' and a 32-bit number, as all the leading 1 bits are ignored.
+              -1 << 31 => 'NET_SFTP_ATTR_EXTENDED'
+        );
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-04#section-6.3
+        // the flag definitions change somewhat in SFTPv5+.  if SFTPv5+ support is added to this library, maybe name
+        // the array for that $this->open5_flags and similarily alter the constant names.
+        $this->open_flags = array(
+            0x00000001 => 'NET_SFTP_OPEN_READ',
+            0x00000002 => 'NET_SFTP_OPEN_WRITE',
+            0x00000004 => 'NET_SFTP_OPEN_APPEND',
+            0x00000008 => 'NET_SFTP_OPEN_CREATE',
+            0x00000010 => 'NET_SFTP_OPEN_TRUNCATE'
+        );
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-04#section-5.2
+        // see Net_SFTP::_parseLongname() for an explanation
+        $this->file_types = array(
+            1 => 'NET_SFTP_TYPE_REGULAR',
+            2 => 'NET_SFTP_TYPE_DIRECTORY',
+            3 => 'NET_SFTP_TYPE_SYMLINK',
+            4 => 'NET_SFTP_TYPE_SPECIAL'
+        );
+        $this->_define_array(
+            $this->packet_types,
+            $this->status_codes,
+            $this->attributes,
+            $this->open_flags,
+            $this->file_types
+        );
+    }
+
+    /**
+     * Login
+     *
+     * @param String $username
+     * @param optional String $password
+     * @return Boolean
+     * @access public
+     */
+    function login($username, $password = '')
+    {
+        if (!parent::login($username, $password)) {
+            return false;
+        }
+
+        $this->window_size_client_to_server[NET_SFTP_CHANNEL] = $this->window_size;
+
+        $packet = pack('CNa*N3',
+            NET_SSH2_MSG_CHANNEL_OPEN, strlen('session'), 'session', NET_SFTP_CHANNEL, $this->window_size, 0x4000);
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SFTP_CHANNEL] = NET_SSH2_MSG_CHANNEL_OPEN;
+
+        $response = $this->_get_channel_packet(NET_SFTP_CHANNEL);
+        if ($response === false) {
+            return false;
+        }
+
+        $packet = pack('CNNa*CNa*',
+            NET_SSH2_MSG_CHANNEL_REQUEST, $this->server_channels[NET_SFTP_CHANNEL], strlen('subsystem'), 'subsystem', 1, strlen('sftp'), 'sftp');
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SFTP_CHANNEL] = NET_SSH2_MSG_CHANNEL_REQUEST;
+
+        $response = $this->_get_channel_packet(NET_SFTP_CHANNEL);
+        if ($response === false) {
+            return false;
+        }
+
+        $this->channel_status[NET_SFTP_CHANNEL] = NET_SSH2_MSG_CHANNEL_DATA;
+
+        if (!$this->_send_sftp_packet(NET_SFTP_INIT, "\0\0\0\3")) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_VERSION) {
+            user_error('Expected SSH_FXP_VERSION');
+            return false;
+        }
+
+        extract(unpack('Nversion', $this->_string_shift($response, 4)));
+        $this->version = $version;
+        while (!empty($response)) {
+            extract(unpack('Nlength', $this->_string_shift($response, 4)));
+            $key = $this->_string_shift($response, $length);
+            extract(unpack('Nlength', $this->_string_shift($response, 4)));
+            $value = $this->_string_shift($response, $length);
+            $this->extensions[$key] = $value;
+        }
+
+        /*
+         SFTPv4+ defines a 'newline' extension.  SFTPv3 seems to have unofficial support for it via 'newline@vandyke.com',
+         however, I'm not sure what 'newline@vandyke.com' is supposed to do (the fact that it's unofficial means that it's
+         not in the official SFTPv3 specs) and 'newline@vandyke.com' / 'newline' are likely not drop-in substitutes for
+         one another due to the fact that 'newline' comes with a SSH_FXF_TEXT bitmask whereas it seems unlikely that
+         'newline@vandyke.com' would.
+        */
+        /*
+        if (isset($this->extensions['newline@vandyke.com'])) {
+            $this->extensions['newline'] = $this->extensions['newline@vandyke.com'];
+            unset($this->extensions['newline@vandyke.com']);
+        }
+        */
+
+        $this->request_id = 1;
+
+        /*
+         A Note on SFTPv4/5/6 support:
+         <http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-5.1> states the following:
+
+         "If the client wishes to interoperate with servers that support noncontiguous version
+          numbers it SHOULD send '3'"
+
+         Given that the server only sends its version number after the client has already done so, the above
+         seems to be suggesting that v3 should be the default version.  This makes sense given that v3 is the
+         most popular.
+
+         <http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-5.5> states the following;
+
+         "If the server did not send the "versions" extension, or the version-from-list was not included, the
+          server MAY send a status response describing the failure, but MUST then close the channel without
+          processing any further requests."
+
+         So what do you do if you have a client whose initial SSH_FXP_INIT packet says it implements v3 and
+         a server whose initial SSH_FXP_VERSION reply says it implements v4 and only v4?  If it only implements
+         v4, the "versions" extension is likely not going to have been sent so version re-negotiation as discussed
+         in draft-ietf-secsh-filexfer-13 would be quite impossible.  As such, what Net_SFTP would do is close the
+         channel and reopen it with a new and updated SSH_FXP_INIT packet.
+        */
+        switch ($this->version) {
+            case 2:
+            case 3:
+                break;
+            default:
+                return false;
+        }
+
+        $this->pwd = $this->_realpath('.', false);
+
+        $this->_save_dir($this->pwd);
+
+        return true;
+    }
+
+    /**
+     * Returns the current directory name
+     *
+     * @return Mixed
+     * @access public
+     */
+    function pwd()
+    {
+        return $this->pwd;
+    }
+
+    /**
+     * Logs errors
+     *
+     * @param String $response
+     * @param optional Integer $status
+     * @access public
+     */
+    function _logError($response, $status = -1) {
+        if ($status == -1) {
+            extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        }
+
+        $error = $this->status_codes[$status];
+
+        if ($this->version > 2) {
+            extract(unpack('Nlength', $this->_string_shift($response, 4)));
+            $this->sftp_errors[] = $error . ': ' . $this->_string_shift($response, $length);
+        } else {
+            $this->sftp_errors[] = $error;
+        }
+    }
+
+    /**
+     * Canonicalize the Server-Side Path Name
+     *
+     * SFTP doesn't provide a mechanism by which the current working directory can be changed, so we'll emulate it.  Returns
+     * the absolute (canonicalized) path.
+     *
+     * @see Net_SFTP::chdir()
+     * @param String $dir
+     * @return Mixed
+     * @access private
+     */
+    function _realpath($dir, $check_dir = true)
+    {
+        if ($check_dir && $this->_is_dir($dir)) {
+            return true;
+        }
+
+        /*
+        "This protocol represents file names as strings.  File names are
+         assumed to use the slash ('/') character as a directory separator.
+
+         File names starting with a slash are "absolute", and are relative to
+         the root of the file system.  Names starting with any other character
+         are relative to the user's default directory (home directory).  Note
+         that identifying the user is assumed to take place outside of this
+         protocol."
+
+         -- http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-6
+        */
+        $file = '';
+        if ($this->pwd !== false) {
+            // if the SFTP server returned the canonicalized path even for non-existant files this wouldn't be necessary
+            // on OpenSSH it isn't necessary but on other SFTP servers it is.  that and since the specs say nothing on
+            // the subject, we'll go ahead and work around it with the following.
+            if (empty($dir) || $dir[strlen($dir) - 1] != '/') {
+                $file = basename($dir);
+                $dir = dirname($dir);
+            }
+
+            $dir = $dir[0] == '/' ? '/' . rtrim(substr($dir, 1), '/') : rtrim($dir, '/');
+
+            if ($dir == '.' || $dir == $this->pwd) {
+                $temp = $this->pwd;
+                if (!empty($file)) {
+                    $temp.= '/' . $file;
+                }
+                return $temp;
+            }
+
+            if ($dir[0] != '/') {
+                $dir = $this->pwd . '/' . $dir;
+            }
+            // on the surface it seems like maybe resolving a path beginning with / is unnecessary, but such paths
+            // can contain .'s and ..'s just like any other.  we could parse those out as appropriate or we can let
+            // the server do it.  we'll do the latter.
+        }
+
+        /*
+         that SSH_FXP_REALPATH returns SSH_FXP_NAME does not necessarily mean that anything actually exists at the
+         specified path.  generally speaking, no attributes are returned with this particular SSH_FXP_NAME packet
+         regardless of whether or not a file actually exists.  and in SFTPv3, the longname field and the filename
+         field match for this particular SSH_FXP_NAME packet.  for other SSH_FXP_NAME packets, this will likely
+         not be the case, but for this one, it is.
+        */
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.9
+        if (!$this->_send_sftp_packet(NET_SFTP_REALPATH, pack('Na*', strlen($dir), $dir))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_NAME:
+                // although SSH_FXP_NAME is implemented differently in SFTPv3 than it is in SFTPv4+, the following
+                // should work on all SFTP versions since the only part of the SSH_FXP_NAME packet the following looks
+                // at is the first part and that part is defined the same in SFTP versions 3 through 6.
+                $this->_string_shift($response, 4); // skip over the count - it should be 1, anyway
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $realpath = $this->_string_shift($response, $length);
+                // the following is SFTPv3 only code.  see Net_SFTP::_parseLongname() for more information.
+                // per the above comment, this is a shot in the dark that, on most servers, won't help us in determining
+                // the file type for Net_SFTP::stat() and Net_SFTP::lstat() but it's worth a shot.
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->fileType = $this->_parseLongname($this->_string_shift($response, $length));
+                break;
+            case NET_SFTP_STATUS:
+                $this->_logError($response);
+                return false;
+            default:
+                user_error('Expected SSH_FXP_NAME or SSH_FXP_STATUS');
+                return false;
+        }
+
+        // if $this->pwd isn't set than the only thing $realpath could be is for '.', which is pretty much guaranteed to
+        // be a bonafide directory
+        if (!empty($file)) {
+            $realpath.= '/' . $file;
+        }
+
+        return $realpath;
+    }
+
+    /**
+     * Changes the current directory
+     *
+     * @param String $dir
+     * @return Boolean
+     * @access public
+     */
+    function chdir($dir)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        if ($dir[strlen($dir) - 1] != '/') {
+            $dir.= '/';
+        }
+
+        // confirm that $dir is, in fact, a valid directory
+        if ($this->_is_dir($dir)) {
+            $this->pwd = $dir;
+            return true;
+        }
+
+        $dir = $this->_realpath($dir, false);
+
+        if ($this->_is_dir($dir)) {
+            $this->pwd = $dir;
+            return true;
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_OPENDIR, pack('Na*', strlen($dir), $dir))) {
+            return false;
+        }
+
+        // see Net_SFTP::nlist() for a more thorough explanation of the following
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_HANDLE:
+                $handle = substr($response, 4);
+                break;
+            case NET_SFTP_STATUS:
+                $this->_logError($response);
+                return false;
+            default:
+                user_error('Expected SSH_FXP_HANDLE or SSH_FXP_STATUS');
+                return false;
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_CLOSE, pack('Na*', strlen($handle), $handle))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        $this->_save_dir($dir);
+
+        $this->pwd = $dir;
+        return true;
+    }
+
+    /**
+     * Returns a list of files in the given directory
+     *
+     * @param optional String $dir
+     * @return Mixed
+     * @access public
+     */
+    function nlist($dir = '.')
+    {
+        return $this->_list($dir, false);
+    }
+
+    /**
+     * Returns a detailed list of files in the given directory
+     *
+     * @param optional String $dir
+     * @return Mixed
+     * @access public
+     */
+    function rawlist($dir = '.')
+    {
+        return $this->_list($dir, true);
+    }
+
+    /**
+     * Reads a list, be it detailed or not, of files in the given directory
+     *
+     * $realpath exists because, in the case of the recursive deletes and recursive chmod's $realpath has already
+     * been calculated.
+     *
+     * @param String $dir
+     * @param optional Boolean $raw
+     * @param optional Boolean $realpath
+     * @return Mixed
+     * @access private
+     */
+    function _list($dir, $raw = true, $realpath = true)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $dir = $this->_realpath($dir . '/');
+        if ($dir === false) {
+            return false;
+        }
+
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.1.2
+        if (!$this->_send_sftp_packet(NET_SFTP_OPENDIR, pack('Na*', strlen($dir), $dir))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_HANDLE:
+                // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-9.2
+                // since 'handle' is the last field in the SSH_FXP_HANDLE packet, we'll just remove the first four bytes that
+                // represent the length of the string and leave it at that
+                $handle = substr($response, 4);
+                break;
+            case NET_SFTP_STATUS:
+                // presumably SSH_FX_NO_SUCH_FILE or SSH_FX_PERMISSION_DENIED
+                $this->_logError($response);
+                return false;
+            default:
+                user_error('Expected SSH_FXP_HANDLE or SSH_FXP_STATUS');
+                return false;
+        }
+
+        $this->_save_dir($dir);
+
+        $contents = array();
+        while (true) {
+            // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.2.2
+            // why multiple SSH_FXP_READDIR packets would be sent when the response to a single one can span arbitrarily many
+            // SSH_MSG_CHANNEL_DATA messages is not known to me.
+            if (!$this->_send_sftp_packet(NET_SFTP_READDIR, pack('Na*', strlen($handle), $handle))) {
+                return false;
+            }
+
+            $response = $this->_get_sftp_packet();
+            switch ($this->packet_type) {
+                case NET_SFTP_NAME:
+                    extract(unpack('Ncount', $this->_string_shift($response, 4)));
+                    for ($i = 0; $i < $count; $i++) {
+                        extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                        $shortname = $this->_string_shift($response, $length);
+                        extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                        $longname = $this->_string_shift($response, $length);
+                        $attributes = $this->_parseAttributes($response); // we also don't care about the attributes
+                        if (!$raw) {
+                            $contents[] = $shortname;
+                        } else {
+                            $contents[$shortname] = $attributes;
+                            $fileType = $this->_parseLongname($longname);
+                            if ($fileType) {
+                                if ($fileType == NET_SFTP_TYPE_DIRECTORY && ($shortname != '.' && $shortname != '..')) {
+                                    $this->_save_dir($dir . '/' . $shortname);
+                                }
+                                $contents[$shortname]['type'] = $fileType;
+                            }
+                        }
+                        // SFTPv6 has an optional boolean end-of-list field, but we'll ignore that, since the
+                        // final SSH_FXP_STATUS packet should tell us that, already.
+                    }
+                    break;
+                case NET_SFTP_STATUS:
+                    extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+                    if ($status != NET_SFTP_STATUS_EOF) {
+                        $this->_logError($response, $status);
+                        return false;
+                    }
+                    break 2;
+                default:
+                    user_error('Expected SSH_FXP_NAME or SSH_FXP_STATUS');
+                    return false;
+            }
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_CLOSE, pack('Na*', strlen($handle), $handle))) {
+            return false;
+        }
+
+        // "The client MUST release all resources associated with the handle regardless of the status."
+        //  -- http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.1.3
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        return $contents;
+    }
+
+    /**
+     * Returns the file size, in bytes, or false, on failure
+     *
+     * Files larger than 4GB will show up as being exactly 4GB.
+     *
+     * @param String $filename
+     * @return Mixed
+     * @access public
+     */
+    function size($filename)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $filename = $this->_realpath($filename);
+        if ($filename === false) {
+            return false;
+        }
+
+        return $this->_size($filename);
+    }
+
+    /**
+     * Save directories to cache
+     *
+     * @param String $dir
+     * @access private
+     */
+    function _save_dir($dir)
+    {
+        // preg_replace('#^/|/(?=/)|/$#', '', $dir) == str_replace('//', '/', trim($dir, '/'))
+        $dirs = explode('/', preg_replace('#^/|/(?=/)|/$#', '', $dir));
+
+        $temp = &$this->dirs;
+        foreach ($dirs as $dir) {
+            if (!isset($temp[$dir])) {
+                $temp[$dir] = array();
+            }
+            $temp = &$temp[$dir];
+        }
+    }
+
+    /**
+     * Remove directories from cache
+     *
+     * @param String $dir
+     * @access private
+     */
+    function _remove_dir($dir)
+    {
+        $dirs = explode('/', preg_replace('#^/|/(?=/)|/$#', '', $dir));
+
+        $temp = &$this->dirs;
+        foreach ($dirs as $dir) {
+            if ($dir == end($dirs)) {
+                unset($temp[$dir]);
+                return true;
+            }
+            if (!isset($temp[$dir])) {
+                return false;
+            }
+            $temp = &$temp[$dir];
+        }
+    }
+
+    /**
+     * Checks cache for directory
+     *
+     * @param String $dir
+     * @access private
+     */
+    function _is_dir($dir)
+    {
+        $dirs = explode('/', preg_replace('#^/|/(?=/)|/$#', '', $dir));
+
+        $temp = &$this->dirs;
+        foreach ($dirs as $dir) {
+            if (!isset($temp[$dir])) {
+                return false;
+            }
+            $temp = &$temp[$dir];
+        }
+    }
+
+    /**
+     * Returns general information about a file.
+     *
+     * Returns an array on success and false otherwise.
+     *
+     * @param String $filename
+     * @return Mixed
+     * @access public
+     */
+    function stat($filename)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $filename = $this->_realpath($filename);
+        if ($filename === false) {
+            return false;
+        }
+
+        $stat = $this->_stat($filename, NET_SFTP_STAT);
+        if ($stat === false) {
+            return false;
+        }
+
+        $pwd = $this->pwd;
+        $stat['type'] = $this->chdir($filename) ?
+            NET_SFTP_TYPE_DIRECTORY :
+            NET_SFTP_TYPE_REGULAR;
+        $this->pwd = $pwd;
+
+        return $stat;
+    }
+
+    /**
+     * Returns general information about a file or symbolic link.
+     *
+     * Returns an array on success and false otherwise.
+     *
+     * @param String $filename
+     * @return Mixed
+     * @access public
+     */
+    function lstat($filename)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $filename = $this->_realpath($filename);
+        if ($filename === false) {
+            return false;
+        }
+
+        $lstat = $this->_stat($filename, NET_SFTP_LSTAT);
+        $stat = $this->_stat($filename, NET_SFTP_STAT);
+        if ($stat === false) {
+            return false;
+        }
+
+        if ($lstat != $stat) {
+            return array_merge($lstat, array('type' => NET_SFTP_TYPE_SYMLINK));
+        }
+
+        $pwd = $this->pwd;
+        $lstat['type'] = $this->chdir($filename) ?
+            NET_SFTP_TYPE_DIRECTORY :
+            NET_SFTP_TYPE_REGULAR;
+        $this->pwd = $pwd;
+
+        return $lstat;
+    }
+
+    /**
+     * Returns general information about a file or symbolic link
+     *
+     * Determines information without calling Net_SFTP::_realpath().
+     * The second parameter can be either NET_SFTP_STAT or NET_SFTP_LSTAT.
+     *
+     * @param String $filename
+     * @param Integer $type
+     * @return Mixed
+     * @access private
+     */
+    function _stat($filename, $type)
+    {
+        // SFTPv4+ adds an additional 32-bit integer field - flags - to the following:
+        $packet = pack('Na*', strlen($filename), $filename);
+        if (!$this->_send_sftp_packet($type, $packet)) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_ATTRS:
+                $attributes = $this->_parseAttributes($response);
+                if ($this->fileType) {
+                    $attributes['type'] = $this->fileType;
+                }
+                return $attributes;
+            case NET_SFTP_STATUS:
+                $this->_logError($response);
+                return false;
+        }
+
+        user_error('Expected SSH_FXP_ATTRS or SSH_FXP_STATUS');
+        return false;
+    }
+
+    /**
+     * Attempt to identify the file type
+     *
+     * @param String $path
+     * @param Array $stat
+     * @param Array $lstat
+     * @return Integer
+     * @access private
+     */
+    function _identify_type($path, $stat1, $stat2)
+    {
+        $stat1 = $this->_stat($path, $stat1);
+        $stat2 = $this->_stat($path, $stat2);
+
+        if ($stat1 != $stat2) {
+            return array_merge($stat1, array('type' => NET_SFTP_TYPE_SYMLINK));
+        }
+
+        $pwd = $this->pwd;
+        $stat1['type'] = $this->chdir($path) ?
+            NET_SFTP_TYPE_DIRECTORY :
+            NET_SFTP_TYPE_REGULAR;
+        $this->pwd = $pwd;
+
+        return $stat1;
+    }
+
+    /**
+     * Returns the file size, in bytes, or false, on failure
+     *
+     * Determines the size without calling Net_SFTP::_realpath()
+     *
+     * @param String $filename
+     * @return Mixed
+     * @access private
+     */
+    function _size($filename)
+    {
+        $result = $this->_stat($filename, NET_SFTP_LSTAT);
+        if ($result === false) {
+            return false;
+        }
+        return isset($result['size']) ? $result['size'] : -1;
+    }
+
+    /**
+     * Set permissions on a file.
+     *
+     * Returns the new file permissions on success or FALSE on error.
+     *
+     * @param Integer $mode
+     * @param String $filename
+     * @return Mixed
+     * @access public
+     */
+    function chmod($mode, $filename, $recursive = false)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $filename = $this->_realpath($filename);
+        if ($filename === false) {
+            return false;
+        }
+
+        if ($recursive) {
+            $i = 0;
+            $result = $this->_chmod_recursive($mode, $filename, $i);
+            $this->_read_put_responses($i);
+            return $result;
+        }
+
+        // SFTPv4+ has an additional byte field - type - that would need to be sent, as well. setting it to
+        // SSH_FILEXFER_TYPE_UNKNOWN might work. if not, we'd have to do an SSH_FXP_STAT before doing an SSH_FXP_SETSTAT.
+        $attr = pack('N2', NET_SFTP_ATTR_PERMISSIONS, $mode & 07777);
+        if (!$this->_send_sftp_packet(NET_SFTP_SETSTAT, pack('Na*a*', strlen($filename), $filename, $attr))) {
+            return false;
+        }
+
+        /*
+         "Because some systems must use separate system calls to set various attributes, it is possible that a failure 
+          response will be returned, but yet some of the attributes may be have been successfully modified.  If possible,
+          servers SHOULD avoid this situation; however, clients MUST be aware that this is possible."
+
+          -- http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.6
+        */
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+        }
+
+        // rather than return what the permissions *should* be, we'll return what they actually are.  this will also
+        // tell us if the file actually exists.
+        // incidentally, SFTPv4+ adds an additional 32-bit integer field - flags - to the following:
+        $packet = pack('Na*', strlen($filename), $filename);
+        if (!$this->_send_sftp_packet(NET_SFTP_STAT, $packet)) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_ATTRS:
+                $attrs = $this->_parseAttributes($response);
+                return $attrs['permissions'];
+            case NET_SFTP_STATUS:
+                $this->_logError($response);
+                return false;
+        }
+
+        user_error('Expected SSH_FXP_ATTRS or SSH_FXP_STATUS');
+        return false;
+    }
+
+    /**
+     * Recursively chmods directories on the SFTP server
+     *
+     * Minimizes directory lookups and SSH_FXP_STATUS requests for speed.
+     *
+     * @param Integer $mode
+     * @param String $filename
+     * @return Boolean
+     * @access private
+     */
+    function _chmod_recursive($mode, $path, &$i)
+    {
+        if (!$this->_read_put_responses($i)) {
+            return false;
+        }
+        $i = 0;
+        $entries = $this->_list($path, true, false);
+
+        if ($entries === false) {
+            return $this->chmod($mode, $path);
+        }
+
+        // normally $entries would have at least . and .. but it might not if the directories
+        // permissions didn't allow reading
+        if (empty($entries)) {
+            return false;
+        }
+
+        foreach ($entries as $filename=>$props) {
+            if ($filename == '.' || $filename == '..') {
+                continue;
+            }
+
+            if (!isset($props['type'])) {
+                return false;
+            }
+
+            $temp = $path . '/' . $filename;
+            if ($props['type'] == NET_SFTP_TYPE_DIRECTORY) {
+                if (!$this->_chmod_recursive($mode, $temp, $i)) {
+                    return false;
+                }
+            } else {
+                $attr = pack('N2', NET_SFTP_ATTR_PERMISSIONS, $mode & 07777);
+                if (!$this->_send_sftp_packet(NET_SFTP_SETSTAT, pack('Na*a*', strlen($temp), $temp, $attr))) {
+                    return false;
+                }
+
+                $i++;
+
+                if ($i >= 50) {
+                    if (!$this->_read_put_responses($i)) {
+                        return false;
+                    }
+                    $i = 0;
+                }
+            }
+        }
+
+        $attr = pack('N2', NET_SFTP_ATTR_PERMISSIONS, $mode & 07777);
+        if (!$this->_send_sftp_packet(NET_SFTP_SETSTAT, pack('Na*a*', strlen($path), $path, $attr))) {
+            return false;
+        }
+
+        $i++;
+
+        if ($i >= 50) {
+            if (!$this->_read_put_responses($i)) {
+                return false;
+            }
+            $i = 0;
+        }
+
+        return true;
+    }
+
+    /**
+     * Creates a directory.
+     *
+     * @param String $dir
+     * @return Boolean
+     * @access public
+     */
+    function mkdir($dir)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        if ($dir[0] != '/') {
+            $dir = $this->_realpath(rtrim($dir, '/'));
+            if ($dir === false) {
+                return false;
+            }
+            if (!$this->_mkdir_helper($dir)) {
+                return false;
+            }
+        } else {
+            $dirs = explode('/', preg_replace('#^/|/(?=/)|/$#', '', $dir));
+            $temp = '';
+            foreach ($dirs as $dir) {
+                $temp.= '/' . $dir;
+                $result = $this->_mkdir_helper($temp);
+            }
+            if (!$result) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Helper function for directory creation
+     *
+     * @param String $dir
+     * @return Boolean
+     * @access private
+     */
+    function _mkdir_helper($dir)
+    {
+        // by not providing any permissions, hopefully the server will use the logged in users umask - their 
+        // default permissions.
+        if (!$this->_send_sftp_packet(NET_SFTP_MKDIR, pack('Na*N', strlen($dir), $dir, 0))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        $this->_save_dir($dir);
+
+        return true;
+    }
+
+    /**
+     * Removes a directory.
+     *
+     * @param String $dir
+     * @return Boolean
+     * @access public
+     */
+    function rmdir($dir)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $dir = $this->_realpath($dir);
+        if ($dir === false) {
+            return false;
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_RMDIR, pack('Na*', strlen($dir), $dir))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            // presumably SSH_FX_NO_SUCH_FILE or SSH_FX_PERMISSION_DENIED?
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        $this->_remove_dir($dir);
+
+        return true;
+    }
+
+    /**
+     * Uploads a file to the SFTP server.
+     *
+     * By default, Net_SFTP::put() does not read from the local filesystem.  $data is dumped directly into $remote_file.
+     * So, for example, if you set $data to 'filename.ext' and then do Net_SFTP::get(), you will get a file, twelve bytes
+     * long, containing 'filename.ext' as its contents.
+     *
+     * Setting $mode to NET_SFTP_LOCAL_FILE will change the above behavior.  With NET_SFTP_LOCAL_FILE, $remote_file will 
+     * contain as many bytes as filename.ext does on your local filesystem.  If your filename.ext is 1MB then that is how
+     * large $remote_file will be, as well.
+     *
+     * Currently, only binary mode is supported.  As such, if the line endings need to be adjusted, you will need to take
+     * care of that, yourself.
+     *
+     * @param String $remote_file
+     * @param String $data
+     * @param optional Integer $mode
+     * @return Boolean
+     * @access public
+     * @internal ASCII mode for SFTPv4/5/6 can be supported by adding a new function - Net_SFTP::setMode().
+     */
+    function put($remote_file, $data, $mode = NET_SFTP_STRING)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $remote_file = $this->_realpath($remote_file);
+        if ($remote_file === false) {
+            return false;
+        }
+
+        $flags = NET_SFTP_OPEN_WRITE | NET_SFTP_OPEN_CREATE;
+        // according to the SFTP specs, NET_SFTP_OPEN_APPEND should "force all writes to append data at the end of the file."
+        // in practice, it doesn't seem to do that.
+        //$flags|= ($mode & NET_SFTP_RESUME) ? NET_SFTP_OPEN_APPEND : NET_SFTP_OPEN_TRUNCATE;
+
+        // if NET_SFTP_OPEN_APPEND worked as it should the following (up until the -----------) wouldn't be necessary
+        $offset = 0;
+        if ($mode & NET_SFTP_RESUME) {
+            $size = $this->_size($remote_file);
+            $offset = $size !== false ? $size : 0;
+        } else {
+            $flags|= NET_SFTP_OPEN_TRUNCATE;
+        }
+        // --------------
+
+        $packet = pack('Na*N2', strlen($remote_file), $remote_file, $flags, 0);
+        if (!$this->_send_sftp_packet(NET_SFTP_OPEN, $packet)) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_HANDLE:
+                $handle = substr($response, 4);
+                break;
+            case NET_SFTP_STATUS:
+                $this->_logError($response);
+                return false;
+            default:
+                user_error('Expected SSH_FXP_HANDLE or SSH_FXP_STATUS');
+                return false;
+        }
+
+        $initialize = true;
+
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.2.3
+        if ($mode & NET_SFTP_LOCAL_FILE) {
+            if (!is_file($data)) {
+                user_error("$data is not a valid file");
+                return false;
+            }
+            $fp = @fopen($data, 'rb');
+            if (!$fp) {
+                return false;
+            }
+            $size = filesize($data);
+        } else {
+            $size = strlen($data);
+        }
+
+        $sent = 0;
+        $size = $size < 0 ? ($size & 0x7FFFFFFF) + 0x80000000 : $size;
+
+        $sftp_packet_size = 4096; // PuTTY uses 4096
+        $i = 0;
+        while ($sent < $size) {
+            $temp = $mode & NET_SFTP_LOCAL_FILE ? fread($fp, $sftp_packet_size) : $this->_string_shift($data, $sftp_packet_size);
+            $packet = pack('Na*N3a*', strlen($handle), $handle, 0, $offset + $sent, strlen($temp), $temp);
+            if (!$this->_send_sftp_packet(NET_SFTP_WRITE, $packet)) {
+                fclose($fp);
+                return false;
+            }
+            $sent+= strlen($temp);
+
+            $i++;
+
+            if ($i == 50) {
+                if (!$this->_read_put_responses($i)) {
+                    $i = 0;
+                    break;
+                }
+                $i = 0;
+            }
+        }
+
+        if (!$this->_read_put_responses($i)) {
+            return false;
+        }
+
+        if ($mode & NET_SFTP_LOCAL_FILE) {
+            fclose($fp);
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_CLOSE, pack('Na*', strlen($handle), $handle))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Reads multiple successive SSH_FXP_WRITE responses
+     *
+     * Sending an SSH_FXP_WRITE packet and immediately reading its response isn't as efficient as blindly sending out $i
+     * SSH_FXP_WRITEs, in succession, and then reading $i responses.
+     *
+     * @param Integer $i
+     * @return Boolean
+     * @access private
+     */
+    function _read_put_responses($i)
+    {
+        while ($i--) {
+            $response = $this->_get_sftp_packet();
+            if ($this->packet_type != NET_SFTP_STATUS) {
+                user_error('Expected SSH_FXP_STATUS');
+                return false;
+            }
+
+            extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+            if ($status != NET_SFTP_STATUS_OK) {
+                $this->_logError($response, $status);
+                break;
+            }
+        }
+
+        return $i < 0;
+    }
+
+    /**
+     * Downloads a file from the SFTP server.
+     *
+     * Returns a string containing the contents of $remote_file if $local_file is left undefined or a boolean false if
+     * the operation was unsuccessful.  If $local_file is defined, returns true or false depending on the success of the
+     * operation
+     *
+     * @param String $remote_file
+     * @param optional String $local_file
+     * @return Mixed
+     * @access public
+     */
+    function get($remote_file, $local_file = false, $offset = 0, $length = -1)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $remote_file = $this->_realpath($remote_file);
+        if ($remote_file === false) {
+            return false;
+        }
+
+        $packet = pack('Na*N2', strlen($remote_file), $remote_file, NET_SFTP_OPEN_READ, 0);
+        if (!$this->_send_sftp_packet(NET_SFTP_OPEN, $packet)) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        switch ($this->packet_type) {
+            case NET_SFTP_HANDLE:
+                $handle = substr($response, 4);
+                break;
+            case NET_SFTP_STATUS: // presumably SSH_FX_NO_SUCH_FILE or SSH_FX_PERMISSION_DENIED
+                $this->_logError($response);
+                return false;
+            default:
+                user_error('Expected SSH_FXP_HANDLE or SSH_FXP_STATUS');
+                return false;
+        }
+
+        if ($local_file !== false) {
+            $fp = fopen($local_file, 'wb');
+            if (!$fp) {
+                return false;
+            }
+        } else {
+            $content = '';
+        }
+
+        $size = (1 << 20) < $length || $length < 0 ? 1 << 20 : $length;
+        $start = $offset;
+        while (true) {
+            $packet = pack('Na*N3', strlen($handle), $handle, 0, $offset, $size);
+            if (!$this->_send_sftp_packet(NET_SFTP_READ, $packet)) {
+                if ($local_file !== false) {
+                    fclose($fp);
+                }
+                return false;
+            }
+
+            $response = $this->_get_sftp_packet();
+            switch ($this->packet_type) {
+                case NET_SFTP_DATA:
+                    $temp = substr($response, 4);
+                    $offset+= strlen($temp);
+                    if ($local_file === false) {
+                        $content.= $temp;
+                    } else {
+                        fputs($fp, $temp);
+                    }
+                    break;
+                case NET_SFTP_STATUS:
+                    $this->_logError($response);
+                    break 2;
+                default:
+                    user_error('Expected SSH_FXP_DATA or SSH_FXP_STATUS');
+                    if ($local_file !== false) {
+                        fclose($fp);
+                    }
+                    return false;
+            }
+
+            if ($length > 0 && $length <= $offset - $size) {
+                if ($local_file === false) {
+                    $content = substr($content, 0, $length);
+                } else {
+                    ftruncate($fp, $length);
+                }
+                break;
+            }
+        }
+
+        if ($local_file !== false) {
+            fclose($fp);
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_CLOSE, pack('Na*', strlen($handle), $handle))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        if (isset($content)) {
+            return $content;
+        }
+
+        return true;
+    }
+
+    /**
+     * Deletes a file on the SFTP server.
+     *
+     * @param String $path
+     * @param Boolean $recursive
+     * @return Boolean
+     * @access public
+     */
+    function delete($path, $recursive = true)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $path = $this->_realpath($path);
+        if ($path === false) {
+            return false;
+        }
+
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.3
+        if (!$this->_send_sftp_packet(NET_SFTP_REMOVE, pack('Na*', strlen($path), $path))) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        // if $status isn't SSH_FX_OK it's probably SSH_FX_NO_SUCH_FILE or SSH_FX_PERMISSION_DENIED
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            if (!$recursive) {
+                return false;
+            }
+            $i = 0;
+            $result = $this->_delete_recursive($path, $i);
+            $this->_read_put_responses($i);
+            return $result;
+        }
+
+        return true;
+    }
+
+    /**
+     * Recursively deletes directories on the SFTP server
+     *
+     * Minimizes directory lookups and SSH_FXP_STATUS requests for speed.
+     *
+     * @param String $path
+     * @param Integer $i
+     * @return Boolean
+     * @access private
+     */
+    function _delete_recursive($path, &$i)
+    {
+        if (!$this->_read_put_responses($i)) {
+            return false;
+        }
+        $i = 0;
+        $entries = $this->_list($path, true, false);
+
+        // normally $entries would have at least . and .. but it might not if the directories
+        // permissions didn't allow reading
+        if (empty($entries)) {
+            return false;
+        }
+
+        foreach ($entries as $filename=>$props) {
+            if ($filename == '.' || $filename == '..') {
+                continue;
+            }
+
+            if (!isset($props['type'])) {
+                return false;
+            }
+
+            $temp = $path . '/' . $filename;
+            if ($props['type'] == NET_SFTP_TYPE_DIRECTORY) {
+                if (!$this->_delete_recursive($temp, $i)) {
+                    return false;
+                }
+            } else {
+                if (!$this->_send_sftp_packet(NET_SFTP_REMOVE, pack('Na*', strlen($temp), $temp))) {
+                    return false;
+                }
+
+                $i++;
+
+                if ($i >= 50) {
+                    if (!$this->_read_put_responses($i)) {
+                        return false;
+                    }
+                    $i = 0;
+                }
+            }
+        }
+
+        if (!$this->_send_sftp_packet(NET_SFTP_RMDIR, pack('Na*', strlen($path), $path))) {
+            return false;
+        }
+        $this->_remove_dir($path);
+
+        $i++;
+
+        if ($i >= 50) {
+            if (!$this->_read_put_responses($i)) {
+                return false;
+            }
+            $i = 0;
+        }
+
+        return true;
+    }
+
+    /**
+     * Renames a file or a directory on the SFTP server
+     *
+     * @param String $oldname
+     * @param String $newname
+     * @return Boolean
+     * @access public
+     */
+    function rename($oldname, $newname)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        $oldname = $this->_realpath($oldname);
+        $newname = $this->_realpath($newname);
+        if ($oldname === false || $newname === false) {
+            return false;
+        }
+
+        // http://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#section-8.3
+        $packet = pack('Na*Na*', strlen($oldname), $oldname, strlen($newname), $newname);
+        if (!$this->_send_sftp_packet(NET_SFTP_RENAME, $packet)) {
+            return false;
+        }
+
+        $response = $this->_get_sftp_packet();
+        if ($this->packet_type != NET_SFTP_STATUS) {
+            user_error('Expected SSH_FXP_STATUS');
+            return false;
+        }
+
+        // if $status isn't SSH_FX_OK it's probably SSH_FX_NO_SUCH_FILE or SSH_FX_PERMISSION_DENIED
+        extract(unpack('Nstatus', $this->_string_shift($response, 4)));
+        if ($status != NET_SFTP_STATUS_OK) {
+            $this->_logError($response, $status);
+            return false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Parse Attributes
+     *
+     * See '7.  File Attributes' of draft-ietf-secsh-filexfer-13 for more info.
+     *
+     * @param String $response
+     * @return Array
+     * @access private
+     */
+    function _parseAttributes(&$response)
+    {
+        $attr = array();
+        extract(unpack('Nflags', $this->_string_shift($response, 4)));
+        // SFTPv4+ have a type field (a byte) that follows the above flag field
+        foreach ($this->attributes as $key => $value) {
+            switch ($flags & $key) {
+                case NET_SFTP_ATTR_SIZE: // 0x00000001
+                    // size is represented by a 64-bit integer, so we perhaps ought to be doing the following:
+                    // $attr['size'] = new Math_BigInteger($this->_string_shift($response, 8), 256);
+                    // of course, you shouldn't be using Net_SFTP to transfer files that are in excess of 4GB
+                    // (0xFFFFFFFF bytes), anyway.  as such, we'll just represent all file sizes that are bigger than
+                    // 4GB as being 4GB.
+                    extract(unpack('Nupper/Nsize', $this->_string_shift($response, 8)));
+                    if ($upper) {
+                        $attr['size'] = 0xFFFFFFFF;
+                    } else {
+                        $attr['size'] = $size < 0 ? ($size & 0x7FFFFFFF) + 0x80000000 : $size;
+                    }
+                    break;
+                case NET_SFTP_ATTR_UIDGID: // 0x00000002 (SFTPv3 only)
+                    $attr+= unpack('Nuid/Ngid', $this->_string_shift($response, 8));
+                    break;
+                case NET_SFTP_ATTR_PERMISSIONS: // 0x00000004
+                    $attr+= unpack('Npermissions', $this->_string_shift($response, 4));
+                    break;
+                case NET_SFTP_ATTR_ACCESSTIME: // 0x00000008
+                    $attr+= unpack('Natime/Nmtime', $this->_string_shift($response, 8));
+                    break;
+                case NET_SFTP_ATTR_EXTENDED: // 0x80000000
+                    extract(unpack('Ncount', $this->_string_shift($response, 4)));
+                    for ($i = 0; $i < $count; $i++) {
+                        extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                        $key = $this->_string_shift($response, $length);
+                        extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                        $attr[$key] = $this->_string_shift($response, $length);
+                    }
+            }
+        }
+        return $attr;
+    }
+
+    /**
+     * Parse Longname
+     *
+     * SFTPv3 doesn't provide any easy way of identifying a file type.  You could try to open
+     * a file as a directory and see if an error is returned or you could try to parse the
+     * SFTPv3-specific longname field of the SSH_FXP_NAME packet.  That's what this function does.
+     * The result is returned using the
+     * {@link http://tools.ietf.org/html/draft-ietf-secsh-filexfer-04#section-5.2 SFTPv4 type constants}.
+     *
+     * If the longname is in an unrecognized format bool(false) is returned.
+     *
+     * @param String $longname
+     * @return Mixed
+     * @access private
+     */
+    function _parseLongname($longname)
+    {
+        // http://en.wikipedia.org/wiki/Unix_file_types
+        // http://en.wikipedia.org/wiki/Filesystem_permissions#Notation_of_traditional_Unix_permissions
+        if (preg_match('#^[^/]([r-][w-][xstST-]){3}#', $longname)) {
+            switch ($longname[0]) {
+                case '-':
+                    return NET_SFTP_TYPE_REGULAR;
+                case 'd':
+                    return NET_SFTP_TYPE_DIRECTORY;
+                case 'l':
+                    return NET_SFTP_TYPE_SYMLINK;
+                default:
+                    return NET_SFTP_TYPE_SPECIAL;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Sends SFTP Packets
+     *
+     * See '6. General Packet Format' of draft-ietf-secsh-filexfer-13 for more info.
+     *
+     * @param Integer $type
+     * @param String $data
+     * @see Net_SFTP::_get_sftp_packet()
+     * @see Net_SSH2::_send_channel_packet()
+     * @return Boolean
+     * @access private
+     */
+    function _send_sftp_packet($type, $data)
+    {
+        $packet = $this->request_id !== false ?
+            pack('NCNa*', strlen($data) + 5, $type, $this->request_id, $data) :
+            pack('NCa*',  strlen($data) + 1, $type, $data);
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $result = $this->_send_channel_packet(NET_SFTP_CHANNEL, $packet);
+        $stop = strtok(microtime(), ' ') + strtok('');
+
+        if (defined('NET_SFTP_LOGGING')) {
+            $packet_type = '-> ' . $this->packet_types[$type] . 
+                           ' (' . round($stop - $start, 4) . 's)';
+            if (NET_SFTP_LOGGING == NET_SFTP_LOG_REALTIME) {
+                echo "<pre>\r\n" . $this->_format_log(array($data), array($packet_type)) . "\r\n</pre>\r\n";
+                flush();
+                ob_flush();
+            } else {
+                $this->packet_type_log[] = $packet_type;
+                if (NET_SFTP_LOGGING == NET_SFTP_LOG_COMPLEX) {
+                    $this->packet_log[] = $data;
+                }
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Receives SFTP Packets
+     *
+     * See '6. General Packet Format' of draft-ietf-secsh-filexfer-13 for more info.
+     *
+     * Incidentally, the number of SSH_MSG_CHANNEL_DATA messages has no bearing on the number of SFTP packets present.
+     * There can be one SSH_MSG_CHANNEL_DATA messages containing two SFTP packets or there can be two SSH_MSG_CHANNEL_DATA
+     * messages containing one SFTP packet.
+     *
+     * @see Net_SFTP::_send_sftp_packet()
+     * @return String
+     * @access private
+     */
+    function _get_sftp_packet()
+    {
+        $this->curTimeout = false;
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+
+        // SFTP packet length
+        while (strlen($this->packet_buffer) < 4) {
+            $temp = $this->_get_channel_packet(NET_SFTP_CHANNEL);
+            if (is_bool($temp)) {
+                $this->packet_type = false;
+                $this->packet_buffer = '';
+                return false;
+            }
+            $this->packet_buffer.= $temp;
+        }
+        extract(unpack('Nlength', $this->_string_shift($this->packet_buffer, 4)));
+        $tempLength = $length;
+        $tempLength-= strlen($this->packet_buffer);
+
+        // SFTP packet type and data payload
+        while ($tempLength > 0) {
+            $temp = $this->_get_channel_packet(NET_SFTP_CHANNEL);
+            if (is_bool($temp)) {
+                $this->packet_type = false;
+                $this->packet_buffer = '';
+                return false;
+            }
+            $this->packet_buffer.= $temp;
+            $tempLength-= strlen($temp);
+        }
+
+        $stop = strtok(microtime(), ' ') + strtok('');
+
+        $this->packet_type = ord($this->_string_shift($this->packet_buffer));
+
+        if ($this->request_id !== false) {
+            $this->_string_shift($this->packet_buffer, 4); // remove the request id
+            $length-= 5; // account for the request id and the packet type
+        } else {
+            $length-= 1; // account for the packet type
+        }
+
+        $packet = $this->_string_shift($this->packet_buffer, $length);
+
+        if (defined('NET_SFTP_LOGGING')) {
+            $packet_type = '<- ' . $this->packet_types[$this->packet_type] . 
+                           ' (' . round($stop - $start, 4) . 's)';
+            if (NET_SFTP_LOGGING == NET_SFTP_LOG_REALTIME) {
+                echo "<pre>\r\n" . $this->_format_log(array($packet), array($packet_type)) . "\r\n</pre>\r\n";
+                flush();
+                ob_flush();
+            } else {
+                $this->packet_type_log[] = $packet_type;
+                if (NET_SFTP_LOGGING == NET_SFTP_LOG_COMPLEX) {
+                    $this->packet_log[] = $packet;
+                }
+            }
+        }
+
+        return $packet;
+    }
+
+    /**
+     * Returns a log of the packets that have been sent and received.
+     *
+     * Returns a string if NET_SFTP_LOGGING == NET_SFTP_LOG_COMPLEX, an array if NET_SFTP_LOGGING == NET_SFTP_LOG_SIMPLE and false if !defined('NET_SFTP_LOGGING')
+     *
+     * @access public
+     * @return String or Array
+     */
+    function getSFTPLog()
+    {
+        if (!defined('NET_SFTP_LOGGING')) {
+            return false;
+        }
+
+        switch (NET_SFTP_LOGGING) {
+            case NET_SFTP_LOG_COMPLEX:
+                return $this->_format_log($this->packet_log, $this->packet_type_log);
+                break;
+            //case NET_SFTP_LOG_SIMPLE:
+            default:
+                return $this->packet_type_log;
+        }
+    }
+
+    /**
+     * Returns all errors
+     *
+     * @return String
+     * @access public
+     */
+    function getSFTPErrors()
+    {
+        return $this->sftp_errors;
+    }
+
+    /**
+     * Returns the last error
+     *
+     * @return String
+     * @access public
+     */
+    function getLastSFTPError()
+    {
+        return count($this->sftp_errors) ? $this->sftp_errors[count($this->sftp_errors) - 1] : '';
+    }
+
+    /**
+     * Get supported SFTP versions
+     *
+     * @return Array
+     * @access public
+     */
+    function getSupportedVersions()
+    {
+        $temp = array('version' => $this->version);
+        if (isset($this->extensions['versions'])) {
+            $temp['extensions'] = $this->extensions['versions'];
+        }
+        return $temp;
+    }
+
+    /**
+     * Disconnect
+     *
+     * @param Integer $reason
+     * @return Boolean
+     * @access private
+     */
+    function _disconnect($reason)
+    {
+        $this->pwd = false;
+        parent::_disconnect($reason);
+    }
+}
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH1.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH1.php
new file mode 100644
index 0000000000000000000000000000000000000000..8f5c79938e49f21d223fae387b72911107a3489f
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH1.php
@@ -0,0 +1,1577 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of SSHv1.
+ *
+ * PHP versions 4 and 5
+ *
+ * Here's a short example of how to use this library:
+ * <code>
+ * <?php
+ *    include('Net/SSH1.php');
+ *
+ *    $ssh = new Net_SSH1('www.domain.tld');
+ *    if (!$ssh->login('username', 'password')) {
+ *        exit('Login Failed');
+ *    }
+ *
+ *    echo $ssh->exec('ls -la');
+ * ?>
+ * </code>
+ *
+ * Here's another short example:
+ * <code>
+ * <?php
+ *    include('Net/SSH1.php');
+ *
+ *    $ssh = new Net_SSH1('www.domain.tld');
+ *    if (!$ssh->login('username', 'password')) {
+ *        exit('Login Failed');
+ *    }
+ *
+ *    echo $ssh->read('username@username:~$');
+ *    $ssh->write("ls -la\n");
+ *    echo $ssh->read('username@username:~$');
+ * ?>
+ * </code>
+ *
+ * More information on the SSHv1 specification can be found by reading 
+ * {@link http://www.snailbook.com/docs/protocol-1.5.txt protocol-1.5.txt}.
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Net
+ * @package    Net_SSH1
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: SSH1.php,v 1.15 2010/03/22 22:01:38 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Math_BigInteger
+ *
+ * Used to do RSA encryption.
+ */
+if (!class_exists('Math_BigInteger')) {
+    require_once('Math/BigInteger.php');
+}
+
+/**
+ * Include Crypt_Null
+ */
+//require_once('Crypt/Null.php');
+
+/**
+ * Include Crypt_DES
+ */
+if (!class_exists('Crypt_DES')) {
+    require_once('Crypt/DES.php');
+}
+
+/**
+ * Include Crypt_TripleDES
+ */
+if (!class_exists('Crypt_TripleDES')) {
+    require_once('Crypt/TripleDES.php');
+}
+
+/**
+ * Include Crypt_RC4
+ */
+if (!class_exists('Crypt_RC4')) {
+    require_once('Crypt/RC4.php');
+}
+
+/**
+ * Include Crypt_Random
+ */
+// the class_exists() will only be called if the crypt_random_string function hasn't been defined and
+// will trigger a call to __autoload() if you're wanting to auto-load classes
+// call function_exists() a second time to stop the require_once from being called outside
+// of the auto loader
+if (!function_exists('crypt_random_string') && !class_exists('Crypt_Random') && !function_exists('crypt_random_string')) {
+    require_once('Crypt/Random.php');
+}
+
+/**#@+
+ * Encryption Methods
+ *
+ * @see Net_SSH1::getSupportedCiphers()
+ * @access public
+ */
+/**
+ * No encryption
+ *
+ * Not supported.
+ */
+define('NET_SSH1_CIPHER_NONE',       0);
+/**
+ * IDEA in CFB mode
+ *
+ * Not supported.
+ */
+define('NET_SSH1_CIPHER_IDEA',       1);
+/**
+ * DES in CBC mode
+ */
+define('NET_SSH1_CIPHER_DES',        2);
+/**
+ * Triple-DES in CBC mode
+ *
+ * All implementations are required to support this
+ */
+define('NET_SSH1_CIPHER_3DES',       3);
+/**
+ * TRI's Simple Stream encryption CBC
+ *
+ * Not supported nor is it defined in the official SSH1 specs.  OpenSSH, however, does define it (see cipher.h),
+ * although it doesn't use it (see cipher.c)
+ */
+define('NET_SSH1_CIPHER_BROKEN_TSS', 4);
+/**
+ * RC4
+ *
+ * Not supported.
+ *
+ * @internal According to the SSH1 specs:
+ *
+ *        "The first 16 bytes of the session key are used as the key for
+ *         the server to client direction.  The remaining 16 bytes are used
+ *         as the key for the client to server direction.  This gives
+ *         independent 128-bit keys for each direction."
+ *
+ *     This library currently only supports encryption when the same key is being used for both directions.  This is
+ *     because there's only one $crypto object.  Two could be added ($encrypt and $decrypt, perhaps).
+ */
+define('NET_SSH1_CIPHER_RC4',        5);
+/**
+ * Blowfish
+ *
+ * Not supported nor is it defined in the official SSH1 specs.  OpenSSH, however, defines it (see cipher.h) and
+ * uses it (see cipher.c)
+ */
+define('NET_SSH1_CIPHER_BLOWFISH',   6);
+/**#@-*/
+
+/**#@+
+ * Authentication Methods
+ *
+ * @see Net_SSH1::getSupportedAuthentications()
+ * @access public
+ */
+/**
+ * .rhosts or /etc/hosts.equiv
+ */
+define('NET_SSH1_AUTH_RHOSTS',     1);
+/**
+ * pure RSA authentication
+ */
+define('NET_SSH1_AUTH_RSA',        2);
+/**
+ * password authentication
+ *
+ * This is the only method that is supported by this library.
+ */
+define('NET_SSH1_AUTH_PASSWORD',   3);
+/**
+ * .rhosts with RSA host authentication
+ */
+define('NET_SSH1_AUTH_RHOSTS_RSA', 4);
+/**#@-*/
+
+/**#@+
+ * Terminal Modes
+ *
+ * @link http://3sp.com/content/developer/maverick-net/docs/Maverick.SSH.PseudoTerminalModesMembers.html
+ * @access private
+ */
+define('NET_SSH1_TTY_OP_END',  0);
+/**#@-*/
+
+/**
+ * The Response Type
+ *
+ * @see Net_SSH1::_get_binary_packet()
+ * @access private
+ */
+define('NET_SSH1_RESPONSE_TYPE', 1);
+
+/**
+ * The Response Data
+ *
+ * @see Net_SSH1::_get_binary_packet()
+ * @access private
+ */
+define('NET_SSH1_RESPONSE_DATA', 2);
+
+/**#@+
+ * Execution Bitmap Masks
+ *
+ * @see Net_SSH1::bitmap
+ * @access private
+ */
+define('NET_SSH1_MASK_CONSTRUCTOR', 0x00000001);
+define('NET_SSH1_MASK_LOGIN',       0x00000002);
+define('NET_SSH1_MASK_SHELL',       0x00000004);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Net_SSH1::getLog()
+ */
+/**
+ * Returns the message numbers
+ */
+define('NET_SSH1_LOG_SIMPLE',  1);
+/**
+ * Returns the message content
+ */
+define('NET_SSH1_LOG_COMPLEX', 2);
+/**
+ * Outputs the content real-time
+ */
+define('NET_SSH2_LOG_REALTIME', 3);
+/**
+ * Dumps the content real-time to a file
+ */
+define('NET_SSH2_LOG_REALTIME_FILE', 4);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Net_SSH1::read()
+ */
+/**
+ * Returns when a string matching $expect exactly is found
+ */
+define('NET_SSH1_READ_SIMPLE',  1);
+/**
+ * Returns when a string matching the regular expression $expect is found
+ */
+define('NET_SSH1_READ_REGEX', 2);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of SSHv1.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Net_SSH1
+ */
+class Net_SSH1 {
+    /**
+     * The SSH identifier
+     *
+     * @var String
+     * @access private
+     */
+    var $identifier = 'SSH-1.5-phpseclib';
+
+    /**
+     * The Socket Object
+     *
+     * @var Object
+     * @access private
+     */
+    var $fsock;
+
+    /**
+     * The cryptography object
+     *
+     * @var Object
+     * @access private
+     */
+    var $crypto = false;
+
+    /**
+     * Execution Bitmap
+     *
+     * The bits that are set represent functions that have been called already.  This is used to determine
+     * if a requisite function has been successfully executed.  If not, an error should be thrown.
+     *
+     * @var Integer
+     * @access private
+     */
+    var $bitmap = 0;
+
+    /**
+     * The Server Key Public Exponent
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getServerKeyPublicExponent()
+     * @var String
+     * @access private
+     */
+    var $server_key_public_exponent;
+
+    /**
+     * The Server Key Public Modulus
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getServerKeyPublicModulus()
+     * @var String
+     * @access private
+     */
+    var $server_key_public_modulus;
+
+    /**
+     * The Host Key Public Exponent
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getHostKeyPublicExponent()
+     * @var String
+     * @access private
+     */
+    var $host_key_public_exponent;
+
+    /**
+     * The Host Key Public Modulus
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getHostKeyPublicModulus()
+     * @var String
+     * @access private
+     */
+    var $host_key_public_modulus;
+
+    /**
+     * Supported Ciphers
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getSupportedCiphers()
+     * @var Array
+     * @access private
+     */
+    var $supported_ciphers = array(
+        NET_SSH1_CIPHER_NONE       => 'No encryption',
+        NET_SSH1_CIPHER_IDEA       => 'IDEA in CFB mode',
+        NET_SSH1_CIPHER_DES        => 'DES in CBC mode',
+        NET_SSH1_CIPHER_3DES       => 'Triple-DES in CBC mode',
+        NET_SSH1_CIPHER_BROKEN_TSS => 'TRI\'s Simple Stream encryption CBC',
+        NET_SSH1_CIPHER_RC4        => 'RC4',
+        NET_SSH1_CIPHER_BLOWFISH   => 'Blowfish'
+    );
+
+    /**
+     * Supported Authentications
+     *
+     * Logged for debug purposes
+     *
+     * @see Net_SSH1::getSupportedAuthentications()
+     * @var Array
+     * @access private
+     */
+    var $supported_authentications = array(
+        NET_SSH1_AUTH_RHOSTS     => '.rhosts or /etc/hosts.equiv',
+        NET_SSH1_AUTH_RSA        => 'pure RSA authentication',
+        NET_SSH1_AUTH_PASSWORD   => 'password authentication',
+        NET_SSH1_AUTH_RHOSTS_RSA => '.rhosts with RSA host authentication'
+    );
+
+    /**
+     * Server Identification
+     *
+     * @see Net_SSH1::getServerIdentification()
+     * @var String
+     * @access private
+     */
+    var $server_identification = '';
+
+    /**
+     * Protocol Flags
+     *
+     * @see Net_SSH1::Net_SSH1()
+     * @var Array
+     * @access private
+     */
+    var $protocol_flags = array();
+
+    /**
+     * Protocol Flag Log
+     *
+     * @see Net_SSH1::getLog()
+     * @var Array
+     * @access private
+     */
+    var $protocol_flag_log = array();
+
+    /**
+     * Message Log
+     *
+     * @see Net_SSH1::getLog()
+     * @var Array
+     * @access private
+     */
+    var $message_log = array();
+
+    /**
+     * Real-time log file pointer
+     *
+     * @see Net_SSH1::_append_log()
+     * @var Resource
+     * @access private
+     */
+    var $realtime_log_file;
+
+    /**
+     * Real-time log file size
+     *
+     * @see Net_SSH1::_append_log()
+     * @var Integer
+     * @access private
+     */
+    var $realtime_log_size;
+
+    /**
+     * Real-time log file wrap boolean
+     *
+     * @see Net_SSH1::_append_log()
+     * @var Boolean
+     * @access private
+     */
+    var $realtime_log_wrap;
+
+    /**
+     * Interactive Buffer
+     *
+     * @see Net_SSH1::read()
+     * @var Array
+     * @access private
+     */
+    var $interactiveBuffer = '';
+
+    /**
+     * Timeout
+     *
+     * @see Net_SSH1::setTimeout()
+     * @access private
+     */
+    var $timeout;
+
+    /**
+     * Current Timeout
+     *
+     * @see Net_SSH2::_get_channel_packet()
+     * @access private
+     */
+    var $curTimeout;
+
+    /**
+     * Default Constructor.
+     *
+     * Connects to an SSHv1 server
+     *
+     * @param String $host
+     * @param optional Integer $port
+     * @param optional Integer $timeout
+     * @param optional Integer $cipher
+     * @return Net_SSH1
+     * @access public
+     */
+    function Net_SSH1($host, $port = 22, $timeout = 10, $cipher = NET_SSH1_CIPHER_3DES)
+    {
+        $this->protocol_flags = array(
+            1  => 'NET_SSH1_MSG_DISCONNECT',
+            2  => 'NET_SSH1_SMSG_PUBLIC_KEY',
+            3  => 'NET_SSH1_CMSG_SESSION_KEY',
+            4  => 'NET_SSH1_CMSG_USER',
+            9  => 'NET_SSH1_CMSG_AUTH_PASSWORD',
+            10 => 'NET_SSH1_CMSG_REQUEST_PTY',
+            12 => 'NET_SSH1_CMSG_EXEC_SHELL',
+            13 => 'NET_SSH1_CMSG_EXEC_CMD',
+            14 => 'NET_SSH1_SMSG_SUCCESS',
+            15 => 'NET_SSH1_SMSG_FAILURE',
+            16 => 'NET_SSH1_CMSG_STDIN_DATA',
+            17 => 'NET_SSH1_SMSG_STDOUT_DATA',
+            18 => 'NET_SSH1_SMSG_STDERR_DATA',
+            19 => 'NET_SSH1_CMSG_EOF',
+            20 => 'NET_SSH1_SMSG_EXITSTATUS',
+            33 => 'NET_SSH1_CMSG_EXIT_CONFIRMATION'
+        );
+
+        $this->_define_array($this->protocol_flags);
+
+        $this->fsock = @fsockopen($host, $port, $errno, $errstr, $timeout);
+        if (!$this->fsock) {
+            user_error(rtrim("Cannot connect to $host. Error $errno. $errstr"));
+            return;
+        }
+
+        $this->server_identification = $init_line = fgets($this->fsock, 255);
+
+        if (defined('NET_SSH1_LOGGING')) {
+            $this->_append_log('<-', $this->server_identification);
+            $this->_append_log('->', $this->identifier . "\r\n");
+        }
+
+        if (!preg_match('#SSH-([0-9\.]+)-(.+)#', $init_line, $parts)) {
+            user_error('Can only connect to SSH servers');
+            return;
+        }
+        if ($parts[1][0] != 1) {
+            user_error("Cannot connect to SSH $parts[1] servers");
+            return;
+        }
+
+        fputs($this->fsock, $this->identifier."\r\n");
+
+        $response = $this->_get_binary_packet();
+        if ($response[NET_SSH1_RESPONSE_TYPE] != NET_SSH1_SMSG_PUBLIC_KEY) {
+            user_error('Expected SSH_SMSG_PUBLIC_KEY');
+            return;
+        }
+
+        $anti_spoofing_cookie = $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 8);
+
+        $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 4);
+
+        $temp = unpack('nlen', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 2));
+        $server_key_public_exponent = new Math_BigInteger($this->_string_shift($response[NET_SSH1_RESPONSE_DATA], ceil($temp['len'] / 8)), 256);
+        $this->server_key_public_exponent = $server_key_public_exponent;
+
+        $temp = unpack('nlen', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 2));
+        $server_key_public_modulus = new Math_BigInteger($this->_string_shift($response[NET_SSH1_RESPONSE_DATA], ceil($temp['len'] / 8)), 256);
+        $this->server_key_public_modulus = $server_key_public_modulus;
+
+        $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 4);
+
+        $temp = unpack('nlen', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 2));
+        $host_key_public_exponent = new Math_BigInteger($this->_string_shift($response[NET_SSH1_RESPONSE_DATA], ceil($temp['len'] / 8)), 256);
+        $this->host_key_public_exponent = $host_key_public_exponent;
+
+        $temp = unpack('nlen', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 2));
+        $host_key_public_modulus = new Math_BigInteger($this->_string_shift($response[NET_SSH1_RESPONSE_DATA], ceil($temp['len'] / 8)), 256);
+        $this->host_key_public_modulus = $host_key_public_modulus;
+
+        $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 4);
+
+        // get a list of the supported ciphers
+        extract(unpack('Nsupported_ciphers_mask', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 4)));
+        foreach ($this->supported_ciphers as $mask=>$name) {
+            if (($supported_ciphers_mask & (1 << $mask)) == 0) {
+                unset($this->supported_ciphers[$mask]);
+            }
+        }
+
+        // get a list of the supported authentications
+        extract(unpack('Nsupported_authentications_mask', $this->_string_shift($response[NET_SSH1_RESPONSE_DATA], 4)));
+        foreach ($this->supported_authentications as $mask=>$name) {
+            if (($supported_authentications_mask & (1 << $mask)) == 0) {
+                unset($this->supported_authentications[$mask]);
+            }
+        }
+
+        $session_id = pack('H*', md5($host_key_public_modulus->toBytes() . $server_key_public_modulus->toBytes() . $anti_spoofing_cookie));
+
+        $session_key = crypt_random_string(32);
+        $double_encrypted_session_key = $session_key ^ str_pad($session_id, 32, chr(0));
+
+        if ($server_key_public_modulus->compare($host_key_public_modulus) < 0) {
+            $double_encrypted_session_key = $this->_rsa_crypt(
+                $double_encrypted_session_key,
+                array(
+                    $server_key_public_exponent,
+                    $server_key_public_modulus
+                )
+            );
+            $double_encrypted_session_key = $this->_rsa_crypt(
+                $double_encrypted_session_key,
+                array(
+                    $host_key_public_exponent,
+                    $host_key_public_modulus
+                )
+            );
+        } else {
+            $double_encrypted_session_key = $this->_rsa_crypt(
+                $double_encrypted_session_key,
+                array(
+                    $host_key_public_exponent,
+                    $host_key_public_modulus
+                )
+            );
+            $double_encrypted_session_key = $this->_rsa_crypt(
+                $double_encrypted_session_key,
+                array(
+                    $server_key_public_exponent,
+                    $server_key_public_modulus
+                )
+            );
+        }
+
+        $cipher = isset($this->supported_ciphers[$cipher]) ? $cipher : NET_SSH1_CIPHER_3DES;
+        $data = pack('C2a*na*N', NET_SSH1_CMSG_SESSION_KEY, $cipher, $anti_spoofing_cookie, 8 * strlen($double_encrypted_session_key), $double_encrypted_session_key, 0);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_SESSION_KEY');
+            return;
+        }
+
+        switch ($cipher) {
+            //case NET_SSH1_CIPHER_NONE:
+            //    $this->crypto = new Crypt_Null();
+            //    break;
+            case NET_SSH1_CIPHER_DES:
+                $this->crypto = new Crypt_DES();
+                $this->crypto->disablePadding();
+                $this->crypto->enableContinuousBuffer();
+                $this->crypto->setKey(substr($session_key, 0,  8));
+                break;
+            case NET_SSH1_CIPHER_3DES:
+                $this->crypto = new Crypt_TripleDES(CRYPT_DES_MODE_3CBC);
+                $this->crypto->disablePadding();
+                $this->crypto->enableContinuousBuffer();
+                $this->crypto->setKey(substr($session_key, 0, 24));
+                break;
+            //case NET_SSH1_CIPHER_RC4:
+            //    $this->crypto = new Crypt_RC4();
+            //    $this->crypto->enableContinuousBuffer();
+            //    $this->crypto->setKey(substr($session_key, 0,  16));
+            //    break;
+        }
+
+        $response = $this->_get_binary_packet();
+
+        if ($response[NET_SSH1_RESPONSE_TYPE] != NET_SSH1_SMSG_SUCCESS) {
+            user_error('Expected SSH_SMSG_SUCCESS');
+            return;
+        }
+
+        $this->bitmap = NET_SSH1_MASK_CONSTRUCTOR;
+    }
+
+    /**
+     * Login
+     *
+     * @param String $username
+     * @param optional String $password
+     * @return Boolean
+     * @access public
+     */
+    function login($username, $password = '')
+    {
+        if (!($this->bitmap & NET_SSH1_MASK_CONSTRUCTOR)) {
+            return false;
+        }
+
+        $data = pack('CNa*', NET_SSH1_CMSG_USER, strlen($username), $username);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_USER');
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+
+        if ($response === true) {
+            return false;
+        }
+        if ($response[NET_SSH1_RESPONSE_TYPE] == NET_SSH1_SMSG_SUCCESS) {
+            $this->bitmap |= NET_SSH1_MASK_LOGIN;
+            return true;
+        } else if ($response[NET_SSH1_RESPONSE_TYPE] != NET_SSH1_SMSG_FAILURE) {
+            user_error('Expected SSH_SMSG_SUCCESS or SSH_SMSG_FAILURE');
+            return false;
+        }
+
+        $data = pack('CNa*', NET_SSH1_CMSG_AUTH_PASSWORD, strlen($password), $password);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_AUTH_PASSWORD');
+            return false;
+        }
+
+        // remove the username and password from the last logged packet
+        if (defined('NET_SSH1_LOGGING') && NET_SSH1_LOGGING == NET_SSH1_LOG_COMPLEX) {
+            $data = pack('CNa*', NET_SSH1_CMSG_AUTH_PASSWORD, strlen('password'), 'password');
+            $this->message_log[count($this->message_log) - 1] = $data;
+        }
+
+        $response = $this->_get_binary_packet();
+
+        if ($response === true) {
+            return false;
+        }
+        if ($response[NET_SSH1_RESPONSE_TYPE] == NET_SSH1_SMSG_SUCCESS) {
+            $this->bitmap |= NET_SSH1_MASK_LOGIN;
+            return true;
+        } else if ($response[NET_SSH1_RESPONSE_TYPE] == NET_SSH1_SMSG_FAILURE) {
+            return false;
+        } else {
+            user_error('Expected SSH_SMSG_SUCCESS or SSH_SMSG_FAILURE');
+            return false;
+        }
+    }
+
+    /**
+     * Set Timeout
+     *
+     * $ssh->exec('ping 127.0.0.1'); on a Linux host will never return and will run indefinitely.  setTimeout() makes it so it'll timeout.
+     * Setting $timeout to false or 0 will mean there is no timeout.
+     *
+     * @param Mixed $timeout
+     */
+    function setTimeout($timeout)
+    {
+        $this->timeout = $this->curTimeout = $timeout;
+    }
+
+    /**
+     * Executes a command on a non-interactive shell, returns the output, and quits.
+     *
+     * An SSH1 server will close the connection after a command has been executed on a non-interactive shell.  SSH2
+     * servers don't, however, this isn't an SSH2 client.  The way this works, on the server, is by initiating a
+     * shell with the -s option, as discussed in the following links:
+     *
+     * {@link http://www.faqs.org/docs/bashman/bashref_65.html http://www.faqs.org/docs/bashman/bashref_65.html}
+     * {@link http://www.faqs.org/docs/bashman/bashref_62.html http://www.faqs.org/docs/bashman/bashref_62.html}
+     *
+     * To execute further commands, a new Net_SSH1 object will need to be created.
+     *
+     * Returns false on failure and the output, otherwise.
+     *
+     * @see Net_SSH1::interactiveRead()
+     * @see Net_SSH1::interactiveWrite()
+     * @param String $cmd
+     * @return mixed
+     * @access public
+     */
+    function exec($cmd, $block = true)
+    {
+        if (!($this->bitmap & NET_SSH1_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        $data = pack('CNa*', NET_SSH1_CMSG_EXEC_CMD, strlen($cmd), $cmd);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_EXEC_CMD');
+            return false;
+        }
+
+        if (!$block) {
+            return true;
+        }
+
+        $output = '';
+        $response = $this->_get_binary_packet();
+
+        if ($response !== false) {
+            do {
+                $output.= substr($response[NET_SSH1_RESPONSE_DATA], 4);
+                $response = $this->_get_binary_packet();
+            } while (is_array($response) && $response[NET_SSH1_RESPONSE_TYPE] != NET_SSH1_SMSG_EXITSTATUS);
+        }
+
+        $data = pack('C', NET_SSH1_CMSG_EXIT_CONFIRMATION);
+
+        // i don't think it's really all that important if this packet gets sent or not.
+        $this->_send_binary_packet($data);
+
+        fclose($this->fsock);
+
+        // reset the execution bitmap - a new Net_SSH1 object needs to be created.
+        $this->bitmap = 0;
+
+        return $output;
+    }
+
+    /**
+     * Creates an interactive shell
+     *
+     * @see Net_SSH1::interactiveRead()
+     * @see Net_SSH1::interactiveWrite()
+     * @return Boolean
+     * @access private
+     */
+    function _initShell()
+    {
+        // connect using the sample parameters in protocol-1.5.txt.
+        // according to wikipedia.org's entry on text terminals, "the fundamental type of application running on a text
+        // terminal is a command line interpreter or shell".  thus, opening a terminal session to run the shell.
+        $data = pack('CNa*N4C', NET_SSH1_CMSG_REQUEST_PTY, strlen('vt100'), 'vt100', 24, 80, 0, 0, NET_SSH1_TTY_OP_END);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_REQUEST_PTY');
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+
+        if ($response === true) {
+            return false;
+        }
+        if ($response[NET_SSH1_RESPONSE_TYPE] != NET_SSH1_SMSG_SUCCESS) {
+            user_error('Expected SSH_SMSG_SUCCESS');
+            return false;
+        }
+
+        $data = pack('C', NET_SSH1_CMSG_EXEC_SHELL);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_EXEC_SHELL');
+            return false;
+        }
+
+        $this->bitmap |= NET_SSH1_MASK_SHELL;
+
+        //stream_set_blocking($this->fsock, 0);
+
+        return true;
+    }
+
+    /**
+     * Inputs a command into an interactive shell.
+     *
+     * @see Net_SSH1::interactiveWrite()
+     * @param String $cmd
+     * @return Boolean
+     * @access public
+     */
+    function write($cmd)
+    {
+        return $this->interactiveWrite($cmd);
+    }
+
+    /**
+     * Returns the output of an interactive shell when there's a match for $expect
+     *
+     * $expect can take the form of a string literal or, if $mode == NET_SSH1_READ_REGEX,
+     * a regular expression.
+     *
+     * @see Net_SSH1::write()
+     * @param String $expect
+     * @param Integer $mode
+     * @return Boolean
+     * @access public
+     */
+    function read($expect, $mode = NET_SSH1_READ_SIMPLE)
+    {
+        if (!($this->bitmap & NET_SSH1_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        if (!($this->bitmap & NET_SSH1_MASK_SHELL) && !$this->_initShell()) {
+            user_error('Unable to initiate an interactive shell session');
+            return false;
+        }
+
+        $match = $expect;
+        while (true) {
+            if ($mode == NET_SSH1_READ_REGEX) {
+                preg_match($expect, $this->interactiveBuffer, $matches);
+                $match = isset($matches[0]) ? $matches[0] : '';
+            }
+            $pos = strlen($match) ? strpos($this->interactiveBuffer, $match) : false;
+            if ($pos !== false) {
+                return $this->_string_shift($this->interactiveBuffer, $pos + strlen($match));
+            }
+            $response = $this->_get_binary_packet();
+
+            if ($response === true) {
+                return $this->_string_shift($this->interactiveBuffer, strlen($this->interactiveBuffer));
+            }
+            $this->interactiveBuffer.= substr($response[NET_SSH1_RESPONSE_DATA], 4);
+        }
+    }
+
+    /**
+     * Inputs a command into an interactive shell.
+     *
+     * @see Net_SSH1::interactiveRead()
+     * @param String $cmd
+     * @return Boolean
+     * @access public
+     */
+    function interactiveWrite($cmd)
+    {
+        if (!($this->bitmap & NET_SSH1_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        if (!($this->bitmap & NET_SSH1_MASK_SHELL) && !$this->_initShell()) {
+            user_error('Unable to initiate an interactive shell session');
+            return false;
+        }
+
+        $data = pack('CNa*', NET_SSH1_CMSG_STDIN_DATA, strlen($cmd), $cmd);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Error sending SSH_CMSG_STDIN');
+            return false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Returns the output of an interactive shell when no more output is available.
+     *
+     * Requires PHP 4.3.0 or later due to the use of the stream_select() function.  If you see stuff like
+     * "", you're seeing ANSI escape codes.  According to
+     * {@link http://support.microsoft.com/kb/101875 How to Enable ANSI.SYS in a Command Window}, "Windows NT
+     * does not support ANSI escape sequences in Win32 Console applications", so if you're a Windows user,
+     * there's not going to be much recourse.
+     *
+     * @see Net_SSH1::interactiveRead()
+     * @return String
+     * @access public
+     */
+    function interactiveRead()
+    {
+        if (!($this->bitmap & NET_SSH1_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        if (!($this->bitmap & NET_SSH1_MASK_SHELL) && !$this->_initShell()) {
+            user_error('Unable to initiate an interactive shell session');
+            return false;
+        }
+
+        $read = array($this->fsock);
+        $write = $except = null;
+        if (stream_select($read, $write, $except, 0)) {
+            $response = $this->_get_binary_packet();
+            return substr($response[NET_SSH1_RESPONSE_DATA], 4);
+        } else {
+            return '';
+        }
+    }
+
+    /**
+     * Disconnect
+     *
+     * @access public
+     */
+    function disconnect()
+    {
+        $this->_disconnect();
+    }
+
+    /**
+     * Destructor.
+     *
+     * Will be called, automatically, if you're supporting just PHP5.  If you're supporting PHP4, you'll need to call
+     * disconnect().
+     *
+     * @access public
+     */
+    function __destruct()
+    {
+        $this->_disconnect();
+    }
+
+    /**
+     * Disconnect
+     *
+     * @param String $msg
+     * @access private
+     */
+    function _disconnect($msg = 'Client Quit')
+    {
+        if ($this->bitmap) {
+            $data = pack('C', NET_SSH1_CMSG_EOF);
+            $this->_send_binary_packet($data);
+            /*
+            $response = $this->_get_binary_packet();
+            if ($response === true) {
+                $response = array(NET_SSH1_RESPONSE_TYPE => -1);
+            }
+            switch ($response[NET_SSH1_RESPONSE_TYPE]) {
+                case NET_SSH1_SMSG_EXITSTATUS:
+                    $data = pack('C', NET_SSH1_CMSG_EXIT_CONFIRMATION);
+                    break;
+                default:
+                    $data = pack('CNa*', NET_SSH1_MSG_DISCONNECT, strlen($msg), $msg);
+            }
+            */
+            $data = pack('CNa*', NET_SSH1_MSG_DISCONNECT, strlen($msg), $msg);
+
+            $this->_send_binary_packet($data);
+            fclose($this->fsock);
+            $this->bitmap = 0;
+        }
+    }
+
+    /**
+     * Gets Binary Packets
+     *
+     * See 'The Binary Packet Protocol' of protocol-1.5.txt for more info.
+     *
+     * Also, this function could be improved upon by adding detection for the following exploit:
+     * http://www.securiteam.com/securitynews/5LP042K3FY.html
+     *
+     * @see Net_SSH1::_send_binary_packet()
+     * @return Array
+     * @access private
+     */
+    function _get_binary_packet()
+    {
+        if (feof($this->fsock)) {
+            //user_error('connection closed prematurely');
+            return false;
+        }
+
+        if ($this->curTimeout) {
+            $read = array($this->fsock);
+            $write = $except = NULL;
+
+            $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+            $sec = floor($this->curTimeout);
+            $usec = 1000000 * ($this->curTimeout - $sec);
+            // on windows this returns a "Warning: Invalid CRT parameters detected" error
+            if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {
+                //$this->_disconnect('Timeout');
+                return true;
+            }
+            $elapsed = strtok(microtime(), ' ') + strtok('') - $start;
+            $this->curTimeout-= $elapsed;
+        }
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $temp = unpack('Nlength', fread($this->fsock, 4));
+
+        $padding_length = 8 - ($temp['length'] & 7);
+        $length = $temp['length'] + $padding_length;
+
+        while ($length > 0) {
+            $temp = fread($this->fsock, $length);
+            $raw.= $temp;
+            $length-= strlen($temp);
+        }
+        $stop = strtok(microtime(), ' ') + strtok('');
+
+        if (strlen($raw) && $this->crypto !== false) {
+            $raw = $this->crypto->decrypt($raw);
+        }
+
+        $padding = substr($raw, 0, $padding_length);
+        $type = $raw[$padding_length];
+        $data = substr($raw, $padding_length + 1, -4);
+
+        $temp = unpack('Ncrc', substr($raw, -4));
+
+        //if ( $temp['crc'] != $this->_crc($padding . $type . $data) ) {
+        //    user_error('Bad CRC in packet from server');
+        //    return false;
+        //}
+
+        $type = ord($type);
+
+        if (defined('NET_SSH1_LOGGING')) {
+            $temp = isset($this->protocol_flags[$type]) ? $this->protocol_flags[$type] : 'UNKNOWN';
+            $temp = '<- ' . $temp .
+                    ' (' . round($stop - $start, 4) . 's)';
+            $this->_append_log($temp, $data);
+        }
+
+        return array(
+            NET_SSH1_RESPONSE_TYPE => $type,
+            NET_SSH1_RESPONSE_DATA => $data
+        );
+    }
+
+    /**
+     * Sends Binary Packets
+     *
+     * Returns true on success, false on failure.
+     *
+     * @see Net_SSH1::_get_binary_packet()
+     * @param String $data
+     * @return Boolean
+     * @access private
+     */
+    function _send_binary_packet($data)
+    {
+        if (feof($this->fsock)) {
+            //user_error('connection closed prematurely');
+            return false;
+        }
+
+        $length = strlen($data) + 4;
+
+        $padding = crypt_random_string(8 - ($length & 7));
+
+        $orig = $data;
+        $data = $padding . $data;
+        $data.= pack('N', $this->_crc($data));
+
+        if ($this->crypto !== false) {
+            $data = $this->crypto->encrypt($data);
+        }
+
+        $packet = pack('Na*', $length, $data);
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $result = strlen($packet) == fputs($this->fsock, $packet);
+        $stop = strtok(microtime(), ' ') + strtok('');
+
+        if (defined('NET_SSH1_LOGGING')) {
+            $temp = isset($this->protocol_flags[ord($orig[0])]) ? $this->protocol_flags[ord($orig[0])] : 'UNKNOWN';
+            $temp = '-> ' . $temp .
+                    ' (' . round($stop - $start, 4) . 's)';
+            $this->_append_log($temp, $orig);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Cyclic Redundancy Check (CRC)
+     *
+     * PHP's crc32 function is implemented slightly differently than the one that SSH v1 uses, so
+     * we've reimplemented it. A more detailed discussion of the differences can be found after
+     * $crc_lookup_table's initialization.
+     *
+     * @see Net_SSH1::_get_binary_packet()
+     * @see Net_SSH1::_send_binary_packet()
+     * @param String $data
+     * @return Integer
+     * @access private
+     */
+    function _crc($data)
+    {
+        static $crc_lookup_table = array(
+            0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA,
+            0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3,
+            0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988,
+            0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91,
+            0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE,
+            0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7,
+            0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC,
+            0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5,
+            0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172,
+            0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,
+            0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940,
+            0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59,
+            0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116,
+            0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F,
+            0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924,
+            0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D,
+            0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A,
+            0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433,
+            0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818,
+            0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,
+            0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E,
+            0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457,
+            0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C,
+            0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65,
+            0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2,
+            0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB,
+            0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0,
+            0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9,
+            0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086,
+            0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,
+            0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4,
+            0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD,
+            0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A,
+            0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683,
+            0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8,
+            0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1,
+            0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE,
+            0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7,
+            0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC,
+            0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,
+            0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252,
+            0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B,
+            0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60,
+            0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79,
+            0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236,
+            0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F,
+            0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04,
+            0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D,
+            0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A,
+            0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,
+            0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38,
+            0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21,
+            0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E,
+            0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777,
+            0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C,
+            0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45,
+            0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2,
+            0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB,
+            0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0,
+            0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,
+            0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6,
+            0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF,
+            0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94,
+            0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D
+        );
+
+        // For this function to yield the same output as PHP's crc32 function, $crc would have to be
+        // set to 0xFFFFFFFF, initially - not 0x00000000 as it currently is.
+        $crc = 0x00000000;
+        $length = strlen($data);
+
+        for ($i=0;$i<$length;$i++) {
+            // We AND $crc >> 8 with 0x00FFFFFF because we want the eight newly added bits to all
+            // be zero.  PHP, unfortunately, doesn't always do this.  0x80000000 >> 8, as an example,
+            // yields 0xFF800000 - not 0x00800000.  The following link elaborates:
+            // http://www.php.net/manual/en/language.operators.bitwise.php#57281
+            $crc = (($crc >> 8) & 0x00FFFFFF) ^ $crc_lookup_table[($crc & 0xFF) ^ ord($data[$i])];
+        }
+
+        // In addition to having to set $crc to 0xFFFFFFFF, initially, the return value must be XOR'd with
+        // 0xFFFFFFFF for this function to return the same thing that PHP's crc32 function would.
+        return $crc;
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+
+    /**
+     * RSA Encrypt
+     *
+     * Returns mod(pow($m, $e), $n), where $n should be the product of two (large) primes $p and $q and where $e
+     * should be a number with the property that gcd($e, ($p - 1) * ($q - 1)) == 1.  Could just make anything that
+     * calls this call modexp, instead, but I think this makes things clearer, maybe...
+     *
+     * @see Net_SSH1::Net_SSH1()
+     * @param Math_BigInteger $m
+     * @param Array $key
+     * @return Math_BigInteger
+     * @access private
+     */
+    function _rsa_crypt($m, $key)
+    {
+        /*
+        if (!class_exists('Crypt_RSA')) {
+            require_once('Crypt/RSA.php');
+        }
+
+        $rsa = new Crypt_RSA();
+        $rsa->loadKey($key, CRYPT_RSA_PUBLIC_FORMAT_RAW);
+        $rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_PKCS1);
+        return $rsa->encrypt($m);
+        */
+
+        // To quote from protocol-1.5.txt:
+        // The most significant byte (which is only partial as the value must be
+        // less than the public modulus, which is never a power of two) is zero.
+        //
+        // The next byte contains the value 2 (which stands for public-key
+        // encrypted data in the PKCS standard [PKCS#1]).  Then, there are non-
+        // zero random bytes to fill any unused space, a zero byte, and the data
+        // to be encrypted in the least significant bytes, the last byte of the
+        // data in the least significant byte.
+
+        // Presumably the part of PKCS#1 they're refering to is "Section 7.2.1 Encryption Operation",
+        // under "7.2 RSAES-PKCS1-v1.5" and "7 Encryption schemes" of the following URL:
+        // ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1.pdf
+        $modulus = $key[1]->toBytes();
+        $length = strlen($modulus) - strlen($m) - 3;
+        $random = '';
+        while (strlen($random) != $length) {
+            $block = crypt_random_string($length - strlen($random));
+            $block = str_replace("\x00", '', $block);
+            $random.= $block;
+        }
+        $temp = chr(0) . chr(2) . $random . chr(0) . $m;
+
+        $m = new Math_BigInteger($temp, 256);
+        $m = $m->modPow($key[0], $key[1]);
+
+        return $m->toBytes();
+    }
+
+    /**
+     * Define Array
+     *
+     * Takes any number of arrays whose indices are integers and whose values are strings and defines a bunch of
+     * named constants from it, using the value as the name of the constant and the index as the value of the constant.
+     * If any of the constants that would be defined already exists, none of the constants will be defined.
+     *
+     * @param Array $array
+     * @access private
+     */
+    function _define_array()
+    {
+        $args = func_get_args();
+        foreach ($args as $arg) {
+            foreach ($arg as $key=>$value) {
+                if (!defined($value)) {
+                    define($value, $key);
+                } else {
+                    break 2;
+                }
+            }
+        }
+    }
+
+    /**
+     * Returns a log of the packets that have been sent and received.
+     *
+     * Returns a string if NET_SSH2_LOGGING == NET_SSH2_LOG_COMPLEX, an array if NET_SSH2_LOGGING == NET_SSH2_LOG_SIMPLE and false if !defined('NET_SSH2_LOGGING')
+     *
+     * @access public
+     * @return String or Array
+     */
+    function getLog()
+    {
+        if (!defined('NET_SSH1_LOGGING')) {
+            return false;
+        }
+
+        switch (NET_SSH1_LOGGING) {
+            case NET_SSH1_LOG_SIMPLE:
+                return $this->message_number_log;
+                break;
+            case NET_SSH1_LOG_COMPLEX:
+                return $this->_format_log($this->message_log, $this->protocol_flags_log);
+                break;
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Formats a log for printing
+     *
+     * @param Array $message_log
+     * @param Array $message_number_log
+     * @access private
+     * @return String
+     */
+    function _format_log($message_log, $message_number_log)
+    {
+        static $boundary = ':', $long_width = 65, $short_width = 16;
+
+        $output = '';
+        for ($i = 0; $i < count($message_log); $i++) {
+            $output.= $message_number_log[$i] . "\r\n";
+            $current_log = $message_log[$i];
+            $j = 0;
+            do {
+                if (strlen($current_log)) {
+                    $output.= str_pad(dechex($j), 7, '0', STR_PAD_LEFT) . '0  ';
+                }
+                $fragment = $this->_string_shift($current_log, $short_width);
+                $hex = substr(
+                           preg_replace(
+                               '#(.)#es',
+                               '"' . $boundary . '" . str_pad(dechex(ord(substr("\\1", -1))), 2, "0", STR_PAD_LEFT)',
+                               $fragment),
+                           strlen($boundary)
+                       );
+                // replace non ASCII printable characters with dots
+                // http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
+                // also replace < with a . since < messes up the output on web browsers
+                $raw = preg_replace('#[^\x20-\x7E]|<#', '.', $fragment);
+                $output.= str_pad($hex, $long_width - $short_width, ' ') . $raw . "\r\n";
+                $j++;
+            } while (strlen($current_log));
+            $output.= "\r\n";
+        }
+
+        return $output;
+    }
+
+    /**
+     * Return the server key public exponent
+     *
+     * Returns, by default, the base-10 representation.  If $raw_output is set to true, returns, instead,
+     * the raw bytes.  This behavior is similar to PHP's md5() function.
+     *
+     * @param optional Boolean $raw_output
+     * @return String
+     * @access public
+     */
+    function getServerKeyPublicExponent($raw_output = false)
+    {
+        return $raw_output ? $this->server_key_public_exponent->toBytes() : $this->server_key_public_exponent->toString();
+    }
+
+    /**
+     * Return the server key public modulus
+     *
+     * Returns, by default, the base-10 representation.  If $raw_output is set to true, returns, instead,
+     * the raw bytes.  This behavior is similar to PHP's md5() function.
+     *
+     * @param optional Boolean $raw_output
+     * @return String
+     * @access public
+     */
+    function getServerKeyPublicModulus($raw_output = false)
+    {
+        return $raw_output ? $this->server_key_public_modulus->toBytes() : $this->server_key_public_modulus->toString();
+    }
+
+    /**
+     * Return the host key public exponent
+     *
+     * Returns, by default, the base-10 representation.  If $raw_output is set to true, returns, instead,
+     * the raw bytes.  This behavior is similar to PHP's md5() function.
+     *
+     * @param optional Boolean $raw_output
+     * @return String
+     * @access public
+     */
+    function getHostKeyPublicExponent($raw_output = false)
+    {
+        return $raw_output ? $this->host_key_public_exponent->toBytes() : $this->host_key_public_exponent->toString();
+    }
+
+    /**
+     * Return the host key public modulus
+     *
+     * Returns, by default, the base-10 representation.  If $raw_output is set to true, returns, instead,
+     * the raw bytes.  This behavior is similar to PHP's md5() function.
+     *
+     * @param optional Boolean $raw_output
+     * @return String
+     * @access public
+     */
+    function getHostKeyPublicModulus($raw_output = false)
+    {
+        return $raw_output ? $this->host_key_public_modulus->toBytes() : $this->host_key_public_modulus->toString();
+    }
+
+    /**
+     * Return a list of ciphers supported by SSH1 server.
+     *
+     * Just because a cipher is supported by an SSH1 server doesn't mean it's supported by this library. If $raw_output
+     * is set to true, returns, instead, an array of constants.  ie. instead of array('Triple-DES in CBC mode'), you'll
+     * get array(NET_SSH1_CIPHER_3DES).
+     *
+     * @param optional Boolean $raw_output
+     * @return Array
+     * @access public
+     */
+    function getSupportedCiphers($raw_output = false)
+    {
+        return $raw_output ? array_keys($this->supported_ciphers) : array_values($this->supported_ciphers);
+    }
+
+    /**
+     * Return a list of authentications supported by SSH1 server.
+     *
+     * Just because a cipher is supported by an SSH1 server doesn't mean it's supported by this library. If $raw_output
+     * is set to true, returns, instead, an array of constants.  ie. instead of array('password authentication'), you'll
+     * get array(NET_SSH1_AUTH_PASSWORD).
+     *
+     * @param optional Boolean $raw_output
+     * @return Array
+     * @access public
+     */
+    function getSupportedAuthentications($raw_output = false)
+    {
+        return $raw_output ? array_keys($this->supported_authentications) : array_values($this->supported_authentications);
+    }
+
+    /**
+     * Return the server identification.
+     *
+     * @return String
+     * @access public
+     */
+    function getServerIdentification()
+    {
+        return rtrim($this->server_identification);
+    }
+
+    /**
+     * Logs data packets
+     *
+     * Makes sure that only the last 1MB worth of packets will be logged
+     *
+     * @param String $data
+     * @access private
+     */
+    function _append_log($protocol_flags, $message)
+    {
+            switch (NET_SSH1_LOGGING) {
+                // useful for benchmarks
+                case NET_SSH1_LOG_SIMPLE:
+                    $this->protocol_flags_log[] = $protocol_flags;
+                    break;
+                // the most useful log for SSH1
+                case NET_SSH1_LOG_COMPLEX:
+                    $this->protocol_flags_log[] = $protocol_flags;
+                    $this->_string_shift($message);
+                    $this->log_size+= strlen($message);
+                    $this->message_log[] = $message;
+                    while ($this->log_size > NET_SSH2_LOG_MAX_SIZE) {
+                        $this->log_size-= strlen(array_shift($this->message_log));
+                        array_shift($this->protocol_flags_log);
+                    }
+                    break;
+                // dump the output out realtime; packets may be interspersed with non packets,
+                // passwords won't be filtered out and select other packets may not be correctly
+                // identified
+                case NET_SSH1_LOG_REALTIME:
+                    echo "<pre>\r\n" . $this->_format_log(array($message), array($protocol_flags)) . "\r\n</pre>\r\n";
+                    @flush();
+                    @ob_flush();
+                    break;
+                // basically the same thing as NET_SSH1_LOG_REALTIME with the caveat that NET_SSH1_LOG_REALTIME_FILE
+                // needs to be defined and that the resultant log file will be capped out at NET_SSH1_LOG_MAX_SIZE. 
+                // the earliest part of the log file is denoted by the first <<< START >>> and is not going to necessarily
+                // at the beginning of the file
+                case NET_SSH1_LOG_REALTIME_FILE:
+                    if (!isset($this->realtime_log_file)) {
+                        // PHP doesn't seem to like using constants in fopen()
+                        $filename = NET_SSH2_LOG_REALTIME_FILE;
+                        $fp = fopen($filename, 'w');
+                        $this->realtime_log_file = $fp;
+                    }
+                    if (!is_resource($this->realtime_log_file)) {
+                        break;
+                    }
+                    $entry = $this->_format_log(array($message), array($protocol_flags));
+                    if ($this->realtime_log_wrap) {
+                        $temp = "<<< START >>>\r\n";
+                        $entry.= $temp;
+                        fseek($this->realtime_log_file, ftell($this->realtime_log_file) - strlen($temp));
+                    }
+                    $this->realtime_log_size+= strlen($entry);
+                    if ($this->realtime_log_size > NET_SSH1_LOG_MAX_SIZE) {
+                        fseek($this->realtime_log_file, 0);
+                        $this->realtime_log_size = strlen($entry);
+                        $this->realtime_log_wrap = true;
+                    }
+                    fputs($this->realtime_log_file, $entry);
+            }
+    }
+}
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH2.php b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH2.php
new file mode 100644
index 0000000000000000000000000000000000000000..43bfbca2dbe17abbd111da70af3a6b61399acb71
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH2.php
@@ -0,0 +1,3009 @@
+<?php
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Pure-PHP implementation of SSHv2.
+ *
+ * PHP versions 4 and 5
+ *
+ * Here are some examples of how to use this library:
+ * <code>
+ * <?php
+ *    include('Net/SSH2.php');
+ *
+ *    $ssh = new Net_SSH2('www.domain.tld');
+ *    if (!$ssh->login('username', 'password')) {
+ *        exit('Login Failed');
+ *    }
+ *
+ *    echo $ssh->exec('pwd');
+ *    echo $ssh->exec('ls -la');
+ * ?>
+ * </code>
+ *
+ * <code>
+ * <?php
+ *    include('Crypt/RSA.php');
+ *    include('Net/SSH2.php');
+ *
+ *    $key = new Crypt_RSA();
+ *    //$key->setPassword('whatever');
+ *    $key->loadKey(file_get_contents('privatekey'));
+ *
+ *    $ssh = new Net_SSH2('www.domain.tld');
+ *    if (!$ssh->login('username', $key)) {
+ *        exit('Login Failed');
+ *    }
+ *
+ *    echo $ssh->read('username@username:~$');
+ *    $ssh->write("ls -la\n");
+ *    echo $ssh->read('username@username:~$');
+ * ?>
+ * </code>
+ *
+ * LICENSE: Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * @category   Net
+ * @package    Net_SSH2
+ * @author     Jim Wigginton <terrafrost@php.net>
+ * @copyright  MMVII Jim Wigginton
+ * @license    http://www.opensource.org/licenses/mit-license.html  MIT License
+ * @version    $Id: SSH2.php,v 1.53 2010-10-24 01:24:30 terrafrost Exp $
+ * @link       http://phpseclib.sourceforge.net
+ */
+
+/**
+ * Include Math_BigInteger
+ *
+ * Used to do Diffie-Hellman key exchange and DSA/RSA signature verification.
+ */
+if (!class_exists('Math_BigInteger')) {
+    require_once('Math/BigInteger.php');
+}
+
+/**
+ * Include Crypt_Random
+ */
+// the class_exists() will only be called if the crypt_random_string function hasn't been defined and
+// will trigger a call to __autoload() if you're wanting to auto-load classes
+// call function_exists() a second time to stop the require_once from being called outside
+// of the auto loader
+if (!function_exists('crypt_random_string') && !class_exists('Crypt_Random') && !function_exists('crypt_random_string')) {
+    require_once('Crypt/Random.php');
+}
+
+/**
+ * Include Crypt_Hash
+ */
+if (!class_exists('Crypt_Hash')) {
+    require_once('Crypt/Hash.php');
+}
+
+/**
+ * Include Crypt_TripleDES
+ */
+if (!class_exists('Crypt_TripleDES')) {
+    require_once('Crypt/TripleDES.php');
+}
+
+/**
+ * Include Crypt_RC4
+ */
+if (!class_exists('Crypt_RC4')) {
+    require_once('Crypt/RC4.php');
+}
+
+/**
+ * Include Crypt_AES
+ */
+if (!class_exists('Crypt_AES')) {
+    require_once('Crypt/AES.php');
+}
+
+/**#@+
+ * Execution Bitmap Masks
+ *
+ * @see Net_SSH2::bitmap
+ * @access private
+ */
+define('NET_SSH2_MASK_CONSTRUCTOR', 0x00000001);
+define('NET_SSH2_MASK_LOGIN',       0x00000002);
+define('NET_SSH2_MASK_SHELL',       0x00000004);
+/**#@-*/
+
+/**#@+
+ * Channel constants
+ *
+ * RFC4254 refers not to client and server channels but rather to sender and recipient channels.  we don't refer
+ * to them in that way because RFC4254 toggles the meaning. the client sends a SSH_MSG_CHANNEL_OPEN message with
+ * a sender channel and the server sends a SSH_MSG_CHANNEL_OPEN_CONFIRMATION in response, with a sender and a
+ * recepient channel.  at first glance, you might conclude that SSH_MSG_CHANNEL_OPEN_CONFIRMATION's sender channel
+ * would be the same thing as SSH_MSG_CHANNEL_OPEN's sender channel, but it's not, per this snipet:
+ *     The 'recipient channel' is the channel number given in the original
+ *     open request, and 'sender channel' is the channel number allocated by
+ *     the other side.
+ *
+ * @see Net_SSH2::_send_channel_packet()
+ * @see Net_SSH2::_get_channel_packet()
+ * @access private
+ */
+define('NET_SSH2_CHANNEL_EXEC', 0); // PuTTy uses 0x100
+define('NET_SSH2_CHANNEL_SHELL',1);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Net_SSH2::getLog()
+ */
+/**
+ * Returns the message numbers
+ */
+define('NET_SSH2_LOG_SIMPLE',  1);
+/**
+ * Returns the message content
+ */
+define('NET_SSH2_LOG_COMPLEX', 2);
+/**
+ * Outputs the content real-time
+ */
+define('NET_SSH2_LOG_REALTIME', 3);
+/**
+ * Dumps the content real-time to a file
+ */
+define('NET_SSH2_LOG_REALTIME_FILE', 4);
+/**#@-*/
+
+/**#@+
+ * @access public
+ * @see Net_SSH2::read()
+ */
+/**
+ * Returns when a string matching $expect exactly is found
+ */
+define('NET_SSH2_READ_SIMPLE',  1);
+/**
+ * Returns when a string matching the regular expression $expect is found
+ */
+define('NET_SSH2_READ_REGEX', 2);
+/**
+ * Make sure that the log never gets larger than this
+ */
+define('NET_SSH2_LOG_MAX_SIZE', 1024 * 1024);
+/**#@-*/
+
+/**
+ * Pure-PHP implementation of SSHv2.
+ *
+ * @author  Jim Wigginton <terrafrost@php.net>
+ * @version 0.1.0
+ * @access  public
+ * @package Net_SSH2
+ */
+class Net_SSH2 {
+    /**
+     * The SSH identifier
+     *
+     * @var String
+     * @access private
+     */
+    var $identifier = 'SSH-2.0-phpseclib_0.3';
+
+    /**
+     * The Socket Object
+     *
+     * @var Object
+     * @access private
+     */
+    var $fsock;
+
+    /**
+     * Execution Bitmap
+     *
+     * The bits that are set represent functions that have been called already.  This is used to determine
+     * if a requisite function has been successfully executed.  If not, an error should be thrown.
+     *
+     * @var Integer
+     * @access private
+     */
+    var $bitmap = 0;
+
+    /**
+     * Error information
+     *
+     * @see Net_SSH2::getErrors()
+     * @see Net_SSH2::getLastError()
+     * @var String
+     * @access private
+     */
+    var $errors = array();
+
+    /**
+     * Server Identifier
+     *
+     * @see Net_SSH2::getServerIdentification()
+     * @var String
+     * @access private
+     */
+    var $server_identifier = '';
+
+    /**
+     * Key Exchange Algorithms
+     *
+     * @see Net_SSH2::getKexAlgorithims()
+     * @var Array
+     * @access private
+     */
+    var $kex_algorithms;
+
+    /**
+     * Server Host Key Algorithms
+     *
+     * @see Net_SSH2::getServerHostKeyAlgorithms()
+     * @var Array
+     * @access private
+     */
+    var $server_host_key_algorithms;
+
+    /**
+     * Encryption Algorithms: Client to Server
+     *
+     * @see Net_SSH2::getEncryptionAlgorithmsClient2Server()
+     * @var Array
+     * @access private
+     */
+    var $encryption_algorithms_client_to_server;
+
+    /**
+     * Encryption Algorithms: Server to Client
+     *
+     * @see Net_SSH2::getEncryptionAlgorithmsServer2Client()
+     * @var Array
+     * @access private
+     */
+    var $encryption_algorithms_server_to_client;
+
+    /**
+     * MAC Algorithms: Client to Server
+     *
+     * @see Net_SSH2::getMACAlgorithmsClient2Server()
+     * @var Array
+     * @access private
+     */
+    var $mac_algorithms_client_to_server;
+
+    /**
+     * MAC Algorithms: Server to Client
+     *
+     * @see Net_SSH2::getMACAlgorithmsServer2Client()
+     * @var Array
+     * @access private
+     */
+    var $mac_algorithms_server_to_client;
+
+    /**
+     * Compression Algorithms: Client to Server
+     *
+     * @see Net_SSH2::getCompressionAlgorithmsClient2Server()
+     * @var Array
+     * @access private
+     */
+    var $compression_algorithms_client_to_server;
+
+    /**
+     * Compression Algorithms: Server to Client
+     *
+     * @see Net_SSH2::getCompressionAlgorithmsServer2Client()
+     * @var Array
+     * @access private
+     */
+    var $compression_algorithms_server_to_client;
+
+    /**
+     * Languages: Server to Client
+     *
+     * @see Net_SSH2::getLanguagesServer2Client()
+     * @var Array
+     * @access private
+     */
+    var $languages_server_to_client;
+
+    /**
+     * Languages: Client to Server
+     *
+     * @see Net_SSH2::getLanguagesClient2Server()
+     * @var Array
+     * @access private
+     */
+    var $languages_client_to_server;
+
+    /**
+     * Block Size for Server to Client Encryption
+     *
+     * "Note that the length of the concatenation of 'packet_length',
+     *  'padding_length', 'payload', and 'random padding' MUST be a multiple
+     *  of the cipher block size or 8, whichever is larger.  This constraint
+     *  MUST be enforced, even when using stream ciphers."
+     *
+     *  -- http://tools.ietf.org/html/rfc4253#section-6
+     *
+     * @see Net_SSH2::Net_SSH2()
+     * @see Net_SSH2::_send_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $encrypt_block_size = 8;
+
+    /**
+     * Block Size for Client to Server Encryption
+     *
+     * @see Net_SSH2::Net_SSH2()
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $decrypt_block_size = 8;
+
+    /**
+     * Server to Client Encryption Object
+     *
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Object
+     * @access private
+     */
+    var $decrypt = false;
+
+    /**
+     * Client to Server Encryption Object
+     *
+     * @see Net_SSH2::_send_binary_packet()
+     * @var Object
+     * @access private
+     */
+    var $encrypt = false;
+
+    /**
+     * Client to Server HMAC Object
+     *
+     * @see Net_SSH2::_send_binary_packet()
+     * @var Object
+     * @access private
+     */
+    var $hmac_create = false;
+
+    /**
+     * Server to Client HMAC Object
+     *
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Object
+     * @access private
+     */
+    var $hmac_check = false;
+
+    /**
+     * Size of server to client HMAC
+     *
+     * We need to know how big the HMAC will be for the server to client direction so that we know how many bytes to read.
+     * For the client to server side, the HMAC object will make the HMAC as long as it needs to be.  All we need to do is
+     * append it.
+     *
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $hmac_size = false;
+
+    /**
+     * Server Public Host Key
+     *
+     * @see Net_SSH2::getServerPublicHostKey()
+     * @var String
+     * @access private
+     */
+    var $server_public_host_key;
+
+    /**
+     * Session identifer
+     *
+     * "The exchange hash H from the first key exchange is additionally
+     *  used as the session identifier, which is a unique identifier for
+     *  this connection."
+     *
+     *  -- http://tools.ietf.org/html/rfc4253#section-7.2
+     *
+     * @see Net_SSH2::_key_exchange()
+     * @var String
+     * @access private
+     */
+    var $session_id = false;
+
+    /**
+     * Exchange hash
+     *
+     * The current exchange hash
+     *
+     * @see Net_SSH2::_key_exchange()
+     * @var String
+     * @access private
+     */
+    var $exchange_hash = false;
+
+    /**
+     * Message Numbers
+     *
+     * @see Net_SSH2::Net_SSH2()
+     * @var Array
+     * @access private
+     */
+    var $message_numbers = array();
+
+    /**
+     * Disconnection Message 'reason codes' defined in RFC4253
+     *
+     * @see Net_SSH2::Net_SSH2()
+     * @var Array
+     * @access private
+     */
+    var $disconnect_reasons = array();
+
+    /**
+     * SSH_MSG_CHANNEL_OPEN_FAILURE 'reason codes', defined in RFC4254
+     *
+     * @see Net_SSH2::Net_SSH2()
+     * @var Array
+     * @access private
+     */
+    var $channel_open_failure_reasons = array();
+
+    /**
+     * Terminal Modes
+     *
+     * @link http://tools.ietf.org/html/rfc4254#section-8
+     * @see Net_SSH2::Net_SSH2()
+     * @var Array
+     * @access private
+     */
+    var $terminal_modes = array();
+
+    /**
+     * SSH_MSG_CHANNEL_EXTENDED_DATA's data_type_codes
+     *
+     * @link http://tools.ietf.org/html/rfc4254#section-5.2
+     * @see Net_SSH2::Net_SSH2()
+     * @var Array
+     * @access private
+     */
+    var $channel_extended_data_type_codes = array();
+
+    /**
+     * Send Sequence Number
+     *
+     * See 'Section 6.4.  Data Integrity' of rfc4253 for more info.
+     *
+     * @see Net_SSH2::_send_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $send_seq_no = 0;
+
+    /**
+     * Get Sequence Number
+     *
+     * See 'Section 6.4.  Data Integrity' of rfc4253 for more info.
+     *
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $get_seq_no = 0;
+
+    /**
+     * Server Channels
+     *
+     * Maps client channels to server channels
+     *
+     * @see Net_SSH2::_get_channel_packet()
+     * @see Net_SSH2::exec()
+     * @var Array
+     * @access private
+     */
+    var $server_channels = array();
+
+    /**
+     * Channel Buffers
+     *
+     * If a client requests a packet from one channel but receives two packets from another those packets should
+     * be placed in a buffer
+     *
+     * @see Net_SSH2::_get_channel_packet()
+     * @see Net_SSH2::exec()
+     * @var Array
+     * @access private
+     */
+    var $channel_buffers = array();
+
+    /**
+     * Channel Status
+     *
+     * Contains the type of the last sent message
+     *
+     * @see Net_SSH2::_get_channel_packet()
+     * @var Array
+     * @access private
+     */
+    var $channel_status = array();
+
+    /**
+     * Packet Size
+     *
+     * Maximum packet size indexed by channel
+     *
+     * @see Net_SSH2::_send_channel_packet()
+     * @var Array
+     * @access private
+     */
+    var $packet_size_client_to_server = array();
+
+    /**
+     * Message Number Log
+     *
+     * @see Net_SSH2::getLog()
+     * @var Array
+     * @access private
+     */
+    var $message_number_log = array();
+
+    /**
+     * Message Log
+     *
+     * @see Net_SSH2::getLog()
+     * @var Array
+     * @access private
+     */
+    var $message_log = array();
+
+    /**
+     * The Window Size
+     *
+     * Bytes the other party can send before it must wait for the window to be adjusted (0x7FFFFFFF = 4GB)
+     *
+     * @var Integer
+     * @see Net_SSH2::_send_channel_packet()
+     * @see Net_SSH2::exec()
+     * @access private
+     */
+    var $window_size = 0x7FFFFFFF;
+
+    /**
+     * Window size
+     *
+     * Window size indexed by channel
+     *
+     * @see Net_SSH2::_send_channel_packet()
+     * @var Array
+     * @access private
+     */
+    var $window_size_client_to_server = array();
+
+    /**
+     * Server signature
+     *
+     * Verified against $this->session_id
+     *
+     * @see Net_SSH2::getServerPublicHostKey()
+     * @var String
+     * @access private
+     */
+    var $signature = '';
+
+    /**
+     * Server signature format
+     *
+     * ssh-rsa or ssh-dss.
+     *
+     * @see Net_SSH2::getServerPublicHostKey()
+     * @var String
+     * @access private
+     */
+    var $signature_format = '';
+
+    /**
+     * Interactive Buffer
+     *
+     * @see Net_SSH2::read()
+     * @var Array
+     * @access private
+     */
+    var $interactiveBuffer = '';
+
+    /**
+     * Current log size
+     *
+     * Should never exceed NET_SSH2_LOG_MAX_SIZE
+     *
+     * @see Net_SSH2::_send_binary_packet()
+     * @see Net_SSH2::_get_binary_packet()
+     * @var Integer
+     * @access private
+     */
+    var $log_size;
+
+    /**
+     * Timeout
+     *
+     * @see Net_SSH2::setTimeout()
+     * @access private
+     */
+    var $timeout;
+
+    /**
+     * Current Timeout
+     *
+     * @see Net_SSH2::_get_channel_packet()
+     * @access private
+     */
+    var $curTimeout;
+
+    /**
+     * Real-time log file pointer
+     *
+     * @see Net_SSH2::_append_log()
+     * @var Resource
+     * @access private
+     */
+    var $realtime_log_file;
+
+    /**
+     * Real-time log file size
+     *
+     * @see Net_SSH2::_append_log()
+     * @var Integer
+     * @access private
+     */
+    var $realtime_log_size;
+
+    /**
+     * Has the signature been validated?
+     *
+     * @see Net_SSH2::getServerPublicHostKey()
+     * @var Boolean
+     * @access private
+     */
+    var $signature_validated = false;
+
+    /**
+     * Real-time log file wrap boolean
+     *
+     * @see Net_SSH2::_append_log()
+     * @access private
+     */
+    var $realtime_log_wrap;
+
+    /**
+     * Flag to suppress stderr from output
+     *
+     * @see Net_SSH2::enableQuietMode()
+     * @access private
+     */
+    var $quiet_mode = false;
+
+    /**
+     * Time of first network activity
+     *
+     * @access private
+     */
+    var $last_packet;
+
+    /**
+     * Exit status returned from ssh if any
+     *
+     * @var Integer
+     * @access private
+     */
+    var $exit_status;
+
+    /**
+     * Default Constructor.
+     *
+     * Connects to an SSHv2 server
+     *
+     * @param String $host
+     * @param optional Integer $port
+     * @param optional Integer $timeout
+     * @return Net_SSH2
+     * @access public
+     */
+    function Net_SSH2($host, $port = 22, $timeout = 10)
+    {
+        $this->last_packet = strtok(microtime(), ' ') + strtok(''); // == microtime(true) in PHP5
+        $this->message_numbers = array(
+            1 => 'NET_SSH2_MSG_DISCONNECT',
+            2 => 'NET_SSH2_MSG_IGNORE',
+            3 => 'NET_SSH2_MSG_UNIMPLEMENTED',
+            4 => 'NET_SSH2_MSG_DEBUG',
+            5 => 'NET_SSH2_MSG_SERVICE_REQUEST',
+            6 => 'NET_SSH2_MSG_SERVICE_ACCEPT',
+            20 => 'NET_SSH2_MSG_KEXINIT',
+            21 => 'NET_SSH2_MSG_NEWKEYS',
+            30 => 'NET_SSH2_MSG_KEXDH_INIT',
+            31 => 'NET_SSH2_MSG_KEXDH_REPLY',
+            50 => 'NET_SSH2_MSG_USERAUTH_REQUEST',
+            51 => 'NET_SSH2_MSG_USERAUTH_FAILURE',
+            52 => 'NET_SSH2_MSG_USERAUTH_SUCCESS',
+            53 => 'NET_SSH2_MSG_USERAUTH_BANNER',
+
+            80 => 'NET_SSH2_MSG_GLOBAL_REQUEST',
+            81 => 'NET_SSH2_MSG_REQUEST_SUCCESS',
+            82 => 'NET_SSH2_MSG_REQUEST_FAILURE',
+            90 => 'NET_SSH2_MSG_CHANNEL_OPEN',
+            91 => 'NET_SSH2_MSG_CHANNEL_OPEN_CONFIRMATION',
+            92 => 'NET_SSH2_MSG_CHANNEL_OPEN_FAILURE',
+            93 => 'NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST',
+            94 => 'NET_SSH2_MSG_CHANNEL_DATA',
+            95 => 'NET_SSH2_MSG_CHANNEL_EXTENDED_DATA',
+            96 => 'NET_SSH2_MSG_CHANNEL_EOF',
+            97 => 'NET_SSH2_MSG_CHANNEL_CLOSE',
+            98 => 'NET_SSH2_MSG_CHANNEL_REQUEST',
+            99 => 'NET_SSH2_MSG_CHANNEL_SUCCESS',
+            100 => 'NET_SSH2_MSG_CHANNEL_FAILURE'
+        );
+        $this->disconnect_reasons = array(
+            1 => 'NET_SSH2_DISCONNECT_HOST_NOT_ALLOWED_TO_CONNECT',
+            2 => 'NET_SSH2_DISCONNECT_PROTOCOL_ERROR',
+            3 => 'NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED',
+            4 => 'NET_SSH2_DISCONNECT_RESERVED',
+            5 => 'NET_SSH2_DISCONNECT_MAC_ERROR',
+            6 => 'NET_SSH2_DISCONNECT_COMPRESSION_ERROR',
+            7 => 'NET_SSH2_DISCONNECT_SERVICE_NOT_AVAILABLE',
+            8 => 'NET_SSH2_DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED',
+            9 => 'NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE',
+            10 => 'NET_SSH2_DISCONNECT_CONNECTION_LOST',
+            11 => 'NET_SSH2_DISCONNECT_BY_APPLICATION',
+            12 => 'NET_SSH2_DISCONNECT_TOO_MANY_CONNECTIONS',
+            13 => 'NET_SSH2_DISCONNECT_AUTH_CANCELLED_BY_USER',
+            14 => 'NET_SSH2_DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE',
+            15 => 'NET_SSH2_DISCONNECT_ILLEGAL_USER_NAME'
+        );
+        $this->channel_open_failure_reasons = array(
+            1 => 'NET_SSH2_OPEN_ADMINISTRATIVELY_PROHIBITED'
+        );
+        $this->terminal_modes = array(
+            0 => 'NET_SSH2_TTY_OP_END'
+        );
+        $this->channel_extended_data_type_codes = array(
+            1 => 'NET_SSH2_EXTENDED_DATA_STDERR'
+        );
+
+        $this->_define_array(
+            $this->message_numbers,
+            $this->disconnect_reasons,
+            $this->channel_open_failure_reasons,
+            $this->terminal_modes,
+            $this->channel_extended_data_type_codes,
+            array(60 => 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ'),
+            array(60 => 'NET_SSH2_MSG_USERAUTH_PK_OK'),
+            array(60 => 'NET_SSH2_MSG_USERAUTH_INFO_REQUEST',
+                  61 => 'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE')
+        );
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $this->fsock = @fsockopen($host, $port, $errno, $errstr, $timeout);
+        if (!$this->fsock) {
+            user_error(rtrim("Cannot connect to $host. Error $errno. $errstr"));
+            return;
+        }
+        $elapsed = strtok(microtime(), ' ') + strtok('') - $start;
+
+        $timeout-= $elapsed;
+
+        if ($timeout <= 0) {
+            user_error(rtrim("Cannot connect to $host. Timeout error"));
+            return;
+        }
+
+        $read = array($this->fsock);
+        $write = $except = NULL;
+
+        $sec = floor($timeout);
+        $usec = 1000000 * ($timeout - $sec);
+
+        // on windows this returns a "Warning: Invalid CRT parameters detected" error
+        // the !count() is done as a workaround for <https://bugs.php.net/42682>
+        if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {
+            user_error(rtrim("Cannot connect to $host. Banner timeout"));
+            return;
+        }
+
+        /* According to the SSH2 specs,
+
+          "The server MAY send other lines of data before sending the version
+           string.  Each line SHOULD be terminated by a Carriage Return and Line
+           Feed.  Such lines MUST NOT begin with "SSH-", and SHOULD be encoded
+           in ISO-10646 UTF-8 [RFC3629] (language is not specified).  Clients
+           MUST be able to process such lines." */
+        $temp = '';
+        $extra = '';
+        while (!feof($this->fsock) && !preg_match('#^SSH-(\d\.\d+)#', $temp, $matches)) {
+            if (substr($temp, -2) == "\r\n") {
+                $extra.= $temp;
+                $temp = '';
+            }
+            $temp.= fgets($this->fsock, 255);
+        }
+
+        if (feof($this->fsock)) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        $ext = array();
+        if (extension_loaded('mcrypt')) {
+            $ext[] = 'mcrypt';
+        }
+        if (extension_loaded('gmp')) {
+            $ext[] = 'gmp';
+        } else if (extension_loaded('bcmath')) {
+            $ext[] = 'bcmath';
+        }
+
+        if (!empty($ext)) {
+            $this->identifier.= ' (' . implode(', ', $ext) . ')';
+        }
+
+        if (defined('NET_SSH2_LOGGING')) {
+            $this->_append_log('<-', $extra . $temp);
+            $this->_append_log('->', $this->identifier . "\r\n");
+        }
+
+        $this->server_identifier = trim($temp, "\r\n");
+        if (strlen($extra)) {
+            $this->errors[] = utf8_decode($extra);
+        }
+
+        if ($matches[1] != '1.99' && $matches[1] != '2.0') {
+            user_error("Cannot connect to SSH $matches[1] servers");
+            return;
+        }
+
+        fputs($this->fsock, $this->identifier . "\r\n");
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return;
+        }
+
+        if (ord($response[0]) != NET_SSH2_MSG_KEXINIT) {
+            user_error('Expected SSH_MSG_KEXINIT');
+            return;
+        }
+
+        if (!$this->_key_exchange($response)) {
+            return;
+        }
+
+        $this->bitmap = NET_SSH2_MASK_CONSTRUCTOR;
+    }
+
+    /**
+     * Key Exchange
+     *
+     * @param String $kexinit_payload_server
+     * @access private
+     */
+    function _key_exchange($kexinit_payload_server)
+    {
+        static $kex_algorithms = array(
+            'diffie-hellman-group1-sha1', // REQUIRED
+            'diffie-hellman-group14-sha1' // REQUIRED
+        );
+
+        static $server_host_key_algorithms = array(
+            'ssh-rsa', // RECOMMENDED  sign   Raw RSA Key
+            'ssh-dss'  // REQUIRED     sign   Raw DSS Key
+        );
+
+        static $encryption_algorithms = array(
+            // from <http://tools.ietf.org/html/rfc4345#section-4>:
+            'arcfour256',
+            'arcfour128',
+
+            'arcfour',    // OPTIONAL          the ARCFOUR stream cipher with a 128-bit key
+
+            'aes128-cbc', // RECOMMENDED       AES with a 128-bit key
+            'aes192-cbc', // OPTIONAL          AES with a 192-bit key
+            'aes256-cbc', // OPTIONAL          AES in CBC mode, with a 256-bit key
+
+            // from <http://tools.ietf.org/html/rfc4344#section-4>:
+            'aes128-ctr', // RECOMMENDED       AES (Rijndael) in SDCTR mode, with 128-bit key
+            'aes192-ctr', // RECOMMENDED       AES with 192-bit key
+            'aes256-ctr', // RECOMMENDED       AES with 256-bit key
+            '3des-ctr',   // RECOMMENDED       Three-key 3DES in SDCTR mode
+
+            '3des-cbc',   // REQUIRED          three-key 3DES in CBC mode
+            'none'        // OPTIONAL          no encryption; NOT RECOMMENDED
+        );
+
+        static $mac_algorithms = array(
+            'hmac-sha1-96', // RECOMMENDED     first 96 bits of HMAC-SHA1 (digest length = 12, key length = 20)
+            'hmac-sha1',    // REQUIRED        HMAC-SHA1 (digest length = key length = 20)
+            'hmac-md5-96',  // OPTIONAL        first 96 bits of HMAC-MD5 (digest length = 12, key length = 16)
+            'hmac-md5',     // OPTIONAL        HMAC-MD5 (digest length = key length = 16)
+            'none'          // OPTIONAL        no MAC; NOT RECOMMENDED
+        );
+
+        static $compression_algorithms = array(
+            'none'   // REQUIRED        no compression
+            //'zlib' // OPTIONAL        ZLIB (LZ77) compression
+        );
+
+        // some SSH servers have buggy implementations of some of the above algorithms
+        switch ($this->server_identifier) {
+            case 'SSH-2.0-SSHD':
+                $mac_algorithms = array_values(array_diff(
+                    $mac_algorithms,
+                    array('hmac-sha1-96', 'hmac-md5-96')
+                ));
+        }
+
+        static $str_kex_algorithms, $str_server_host_key_algorithms,
+               $encryption_algorithms_server_to_client, $mac_algorithms_server_to_client, $compression_algorithms_server_to_client,
+               $encryption_algorithms_client_to_server, $mac_algorithms_client_to_server, $compression_algorithms_client_to_server;
+
+        if (empty($str_kex_algorithms)) {
+            $str_kex_algorithms = implode(',', $kex_algorithms);
+            $str_server_host_key_algorithms = implode(',', $server_host_key_algorithms);
+            $encryption_algorithms_server_to_client = $encryption_algorithms_client_to_server = implode(',', $encryption_algorithms);
+            $mac_algorithms_server_to_client = $mac_algorithms_client_to_server = implode(',', $mac_algorithms);
+            $compression_algorithms_server_to_client = $compression_algorithms_client_to_server = implode(',', $compression_algorithms);
+        }
+
+        $client_cookie = crypt_random_string(16);
+
+        $response = $kexinit_payload_server;
+        $this->_string_shift($response, 1); // skip past the message number (it should be SSH_MSG_KEXINIT)
+        $server_cookie = $this->_string_shift($response, 16);
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->kex_algorithms = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->server_host_key_algorithms = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->encryption_algorithms_client_to_server = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->encryption_algorithms_server_to_client = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->mac_algorithms_client_to_server = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->mac_algorithms_server_to_client = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->compression_algorithms_client_to_server = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->compression_algorithms_server_to_client = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->languages_client_to_server = explode(',', $this->_string_shift($response, $temp['length']));
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->languages_server_to_client = explode(',', $this->_string_shift($response, $temp['length']));
+
+        extract(unpack('Cfirst_kex_packet_follows', $this->_string_shift($response, 1)));
+        $first_kex_packet_follows = $first_kex_packet_follows != 0;
+
+        // the sending of SSH2_MSG_KEXINIT could go in one of two places.  this is the second place.
+        $kexinit_payload_client = pack('Ca*Na*Na*Na*Na*Na*Na*Na*Na*Na*Na*CN',
+            NET_SSH2_MSG_KEXINIT, $client_cookie, strlen($str_kex_algorithms), $str_kex_algorithms,
+            strlen($str_server_host_key_algorithms), $str_server_host_key_algorithms, strlen($encryption_algorithms_client_to_server),
+            $encryption_algorithms_client_to_server, strlen($encryption_algorithms_server_to_client), $encryption_algorithms_server_to_client,
+            strlen($mac_algorithms_client_to_server), $mac_algorithms_client_to_server, strlen($mac_algorithms_server_to_client),
+            $mac_algorithms_server_to_client, strlen($compression_algorithms_client_to_server), $compression_algorithms_client_to_server,
+            strlen($compression_algorithms_server_to_client), $compression_algorithms_server_to_client, 0, '', 0, '',
+            0, 0
+        );
+
+        if (!$this->_send_binary_packet($kexinit_payload_client)) {
+            return false;
+        }
+        // here ends the second place.
+
+        // we need to decide upon the symmetric encryption algorithms before we do the diffie-hellman key exchange
+        for ($i = 0; $i < count($encryption_algorithms) && !in_array($encryption_algorithms[$i], $this->encryption_algorithms_server_to_client); $i++);
+        if ($i == count($encryption_algorithms)) {
+            user_error('No compatible server to client encryption algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        // we don't initialize any crypto-objects, yet - we do that, later. for now, we need the lengths to make the
+        // diffie-hellman key exchange as fast as possible
+        $decrypt = $encryption_algorithms[$i];
+        switch ($decrypt) {
+            case '3des-cbc':
+            case '3des-ctr':
+                $decryptKeyLength = 24; // eg. 192 / 8
+                break;
+            case 'aes256-cbc':
+            case 'aes256-ctr':
+                $decryptKeyLength = 32; // eg. 256 / 8
+                break;
+            case 'aes192-cbc':
+            case 'aes192-ctr':
+                $decryptKeyLength = 24; // eg. 192 / 8
+                break;
+            case 'aes128-cbc':
+            case 'aes128-ctr':
+                $decryptKeyLength = 16; // eg. 128 / 8
+                break;
+            case 'arcfour':
+            case 'arcfour128':
+                $decryptKeyLength = 16; // eg. 128 / 8
+                break;
+            case 'arcfour256':
+                $decryptKeyLength = 32; // eg. 128 / 8
+                break;
+            case 'none';
+                $decryptKeyLength = 0;
+        }
+
+        for ($i = 0; $i < count($encryption_algorithms) && !in_array($encryption_algorithms[$i], $this->encryption_algorithms_client_to_server); $i++);
+        if ($i == count($encryption_algorithms)) {
+            user_error('No compatible client to server encryption algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        $encrypt = $encryption_algorithms[$i];
+        switch ($encrypt) {
+            case '3des-cbc':
+            case '3des-ctr':
+                $encryptKeyLength = 24;
+                break;
+            case 'aes256-cbc':
+            case 'aes256-ctr':
+                $encryptKeyLength = 32;
+                break;
+            case 'aes192-cbc':
+            case 'aes192-ctr':
+                $encryptKeyLength = 24;
+                break;
+            case 'aes128-cbc':
+            case 'aes128-ctr':
+                $encryptKeyLength = 16;
+                break;
+            case 'arcfour':
+            case 'arcfour128':
+                $encryptKeyLength = 16;
+                break;
+            case 'arcfour256':
+                $encryptKeyLength = 32;
+                break;
+            case 'none';
+                $encryptKeyLength = 0;
+        }
+
+        $keyLength = $decryptKeyLength > $encryptKeyLength ? $decryptKeyLength : $encryptKeyLength;
+
+        // through diffie-hellman key exchange a symmetric key is obtained
+        for ($i = 0; $i < count($kex_algorithms) && !in_array($kex_algorithms[$i], $this->kex_algorithms); $i++);
+        if ($i == count($kex_algorithms)) {
+            user_error('No compatible key exchange algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        switch ($kex_algorithms[$i]) {
+            // see http://tools.ietf.org/html/rfc2409#section-6.2 and 
+            // http://tools.ietf.org/html/rfc2412, appendex E
+            case 'diffie-hellman-group1-sha1':
+                $p = pack('H256', 'FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74' . 
+                                  '020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F1437' . 
+                                  '4FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED' . 
+                                  'EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381FFFFFFFFFFFFFFFF');
+                $keyLength = $keyLength < 160 ? $keyLength : 160;
+                $hash = 'sha1';
+                break;
+            // see http://tools.ietf.org/html/rfc3526#section-3
+            case 'diffie-hellman-group14-sha1':
+                $p = pack('H512', 'FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74' . 
+                                  '020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F1437' . 
+                                  '4FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED' . 
+                                  'EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF05' . 
+                                  '98DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB' . 
+                                  '9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B' . 
+                                  'E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF695581718' . 
+                                  '3995497CEA956AE515D2261898FA051015728E5A8AACAA68FFFFFFFFFFFFFFFF');
+                $keyLength = $keyLength < 160 ? $keyLength : 160;
+                $hash = 'sha1';
+        }
+
+        $p = new Math_BigInteger($p, 256);
+        //$q = $p->bitwise_rightShift(1);
+
+        /* To increase the speed of the key exchange, both client and server may
+           reduce the size of their private exponents.  It should be at least
+           twice as long as the key material that is generated from the shared
+           secret.  For more details, see the paper by van Oorschot and Wiener
+           [VAN-OORSCHOT].
+
+           -- http://tools.ietf.org/html/rfc4419#section-6.2 */
+        $q = new Math_BigInteger(1);
+        $q = $q->bitwise_leftShift(2 * $keyLength);
+        $q = $q->subtract(new Math_BigInteger(1));
+
+        $g = new Math_BigInteger(2);
+        $x = new Math_BigInteger();
+        $x = $x->random(new Math_BigInteger(1), $q);
+        $e = $g->modPow($x, $p);
+
+        $eBytes = $e->toBytes(true);
+        $data = pack('CNa*', NET_SSH2_MSG_KEXDH_INIT, strlen($eBytes), $eBytes);
+
+        if (!$this->_send_binary_packet($data)) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        if ($type != NET_SSH2_MSG_KEXDH_REPLY) {
+            user_error('Expected SSH_MSG_KEXDH_REPLY');
+            return false;
+        }
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->server_public_host_key = $server_public_host_key = $this->_string_shift($response, $temp['length']);
+
+        $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+        $public_key_format = $this->_string_shift($server_public_host_key, $temp['length']);
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $fBytes = $this->_string_shift($response, $temp['length']);
+        $f = new Math_BigInteger($fBytes, -256);
+
+        $temp = unpack('Nlength', $this->_string_shift($response, 4));
+        $this->signature = $this->_string_shift($response, $temp['length']);
+
+        $temp = unpack('Nlength', $this->_string_shift($this->signature, 4));
+        $this->signature_format = $this->_string_shift($this->signature, $temp['length']);
+
+        $key = $f->modPow($x, $p);
+        $keyBytes = $key->toBytes(true);
+
+        $this->exchange_hash = pack('Na*Na*Na*Na*Na*Na*Na*Na*',
+            strlen($this->identifier), $this->identifier, strlen($this->server_identifier), $this->server_identifier,
+            strlen($kexinit_payload_client), $kexinit_payload_client, strlen($kexinit_payload_server),
+            $kexinit_payload_server, strlen($this->server_public_host_key), $this->server_public_host_key, strlen($eBytes),
+            $eBytes, strlen($fBytes), $fBytes, strlen($keyBytes), $keyBytes
+        );
+
+        $this->exchange_hash = pack('H*', $hash($this->exchange_hash));
+
+        if ($this->session_id === false) {
+            $this->session_id = $this->exchange_hash;
+        }
+
+        for ($i = 0; $i < count($server_host_key_algorithms) && !in_array($server_host_key_algorithms[$i], $this->server_host_key_algorithms); $i++);
+        if ($i == count($server_host_key_algorithms)) {
+            user_error('No compatible server host key algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        if ($public_key_format != $server_host_key_algorithms[$i] || $this->signature_format != $server_host_key_algorithms[$i]) {
+            user_error('Sever Host Key Algorithm Mismatch');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        $packet = pack('C',
+            NET_SSH2_MSG_NEWKEYS
+        );
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        if ($type != NET_SSH2_MSG_NEWKEYS) {
+            user_error('Expected SSH_MSG_NEWKEYS');
+            return false;
+        }
+
+        switch ($encrypt) {
+            case '3des-cbc':
+                $this->encrypt = new Crypt_TripleDES();
+                // $this->encrypt_block_size = 64 / 8 == the default
+                break;
+            case '3des-ctr':
+                $this->encrypt = new Crypt_TripleDES(CRYPT_DES_MODE_CTR);
+                // $this->encrypt_block_size = 64 / 8 == the default
+                break;
+            case 'aes256-cbc':
+            case 'aes192-cbc':
+            case 'aes128-cbc':
+                $this->encrypt = new Crypt_AES();
+                $this->encrypt_block_size = 16; // eg. 128 / 8
+                break;
+            case 'aes256-ctr':
+            case 'aes192-ctr':
+            case 'aes128-ctr':
+                $this->encrypt = new Crypt_AES(CRYPT_AES_MODE_CTR);
+                $this->encrypt_block_size = 16; // eg. 128 / 8
+                break;
+            case 'arcfour':
+            case 'arcfour128':
+            case 'arcfour256':
+                $this->encrypt = new Crypt_RC4();
+                break;
+            case 'none';
+                //$this->encrypt = new Crypt_Null();
+        }
+
+        switch ($decrypt) {
+            case '3des-cbc':
+                $this->decrypt = new Crypt_TripleDES();
+                break;
+            case '3des-ctr':
+                $this->decrypt = new Crypt_TripleDES(CRYPT_DES_MODE_CTR);
+                break;
+            case 'aes256-cbc':
+            case 'aes192-cbc':
+            case 'aes128-cbc':
+                $this->decrypt = new Crypt_AES();
+                $this->decrypt_block_size = 16;
+                break;
+            case 'aes256-ctr':
+            case 'aes192-ctr':
+            case 'aes128-ctr':
+                $this->decrypt = new Crypt_AES(CRYPT_AES_MODE_CTR);
+                $this->decrypt_block_size = 16;
+                break;
+            case 'arcfour':
+            case 'arcfour128':
+            case 'arcfour256':
+                $this->decrypt = new Crypt_RC4();
+                break;
+            case 'none';
+                //$this->decrypt = new Crypt_Null();
+        }
+
+        $keyBytes = pack('Na*', strlen($keyBytes), $keyBytes);
+
+        if ($this->encrypt) {
+            $this->encrypt->enableContinuousBuffer();
+            $this->encrypt->disablePadding();
+
+            $iv = pack('H*', $hash($keyBytes . $this->exchange_hash . 'A' . $this->session_id));
+            while ($this->encrypt_block_size > strlen($iv)) {
+                $iv.= pack('H*', $hash($keyBytes . $this->exchange_hash . $iv));
+            }
+            $this->encrypt->setIV(substr($iv, 0, $this->encrypt_block_size));
+
+            $key = pack('H*', $hash($keyBytes . $this->exchange_hash . 'C' . $this->session_id));
+            while ($encryptKeyLength > strlen($key)) {
+                $key.= pack('H*', $hash($keyBytes . $this->exchange_hash . $key));
+            }
+            $this->encrypt->setKey(substr($key, 0, $encryptKeyLength));
+        }
+
+        if ($this->decrypt) {
+            $this->decrypt->enableContinuousBuffer();
+            $this->decrypt->disablePadding();
+
+            $iv = pack('H*', $hash($keyBytes . $this->exchange_hash . 'B' . $this->session_id));
+            while ($this->decrypt_block_size > strlen($iv)) {
+                $iv.= pack('H*', $hash($keyBytes . $this->exchange_hash . $iv));
+            }
+            $this->decrypt->setIV(substr($iv, 0, $this->decrypt_block_size));
+
+            $key = pack('H*', $hash($keyBytes . $this->exchange_hash . 'D' . $this->session_id));
+            while ($decryptKeyLength > strlen($key)) {
+                $key.= pack('H*', $hash($keyBytes . $this->exchange_hash . $key));
+            }
+            $this->decrypt->setKey(substr($key, 0, $decryptKeyLength));
+        }
+
+        /* The "arcfour128" algorithm is the RC4 cipher, as described in
+           [SCHNEIER], using a 128-bit key.  The first 1536 bytes of keystream
+           generated by the cipher MUST be discarded, and the first byte of the
+           first encrypted packet MUST be encrypted using the 1537th byte of
+           keystream.
+
+           -- http://tools.ietf.org/html/rfc4345#section-4 */
+        if ($encrypt == 'arcfour128' || $encrypt == 'arcfour256') {
+            $this->encrypt->encrypt(str_repeat("\0", 1536));
+        }
+        if ($decrypt == 'arcfour128' || $decrypt == 'arcfour256') {
+            $this->decrypt->decrypt(str_repeat("\0", 1536));
+        }
+
+        for ($i = 0; $i < count($mac_algorithms) && !in_array($mac_algorithms[$i], $this->mac_algorithms_client_to_server); $i++);
+        if ($i == count($mac_algorithms)) {
+            user_error('No compatible client to server message authentication algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        $createKeyLength = 0; // ie. $mac_algorithms[$i] == 'none'
+        switch ($mac_algorithms[$i]) {
+            case 'hmac-sha1':
+                $this->hmac_create = new Crypt_Hash('sha1');
+                $createKeyLength = 20;
+                break;
+            case 'hmac-sha1-96':
+                $this->hmac_create = new Crypt_Hash('sha1-96');
+                $createKeyLength = 20;
+                break;
+            case 'hmac-md5':
+                $this->hmac_create = new Crypt_Hash('md5');
+                $createKeyLength = 16;
+                break;
+            case 'hmac-md5-96':
+                $this->hmac_create = new Crypt_Hash('md5-96');
+                $createKeyLength = 16;
+        }
+
+        for ($i = 0; $i < count($mac_algorithms) && !in_array($mac_algorithms[$i], $this->mac_algorithms_server_to_client); $i++);
+        if ($i == count($mac_algorithms)) {
+            user_error('No compatible server to client message authentication algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+
+        $checkKeyLength = 0;
+        $this->hmac_size = 0;
+        switch ($mac_algorithms[$i]) {
+            case 'hmac-sha1':
+                $this->hmac_check = new Crypt_Hash('sha1');
+                $checkKeyLength = 20;
+                $this->hmac_size = 20;
+                break;
+            case 'hmac-sha1-96':
+                $this->hmac_check = new Crypt_Hash('sha1-96');
+                $checkKeyLength = 20;
+                $this->hmac_size = 12;
+                break;
+            case 'hmac-md5':
+                $this->hmac_check = new Crypt_Hash('md5');
+                $checkKeyLength = 16;
+                $this->hmac_size = 16;
+                break;
+            case 'hmac-md5-96':
+                $this->hmac_check = new Crypt_Hash('md5-96');
+                $checkKeyLength = 16;
+                $this->hmac_size = 12;
+        }
+
+        $key = pack('H*', $hash($keyBytes . $this->exchange_hash . 'E' . $this->session_id));
+        while ($createKeyLength > strlen($key)) {
+            $key.= pack('H*', $hash($keyBytes . $this->exchange_hash . $key));
+        }
+        $this->hmac_create->setKey(substr($key, 0, $createKeyLength));
+
+        $key = pack('H*', $hash($keyBytes . $this->exchange_hash . 'F' . $this->session_id));
+        while ($checkKeyLength > strlen($key)) {
+            $key.= pack('H*', $hash($keyBytes . $this->exchange_hash . $key));
+        }
+        $this->hmac_check->setKey(substr($key, 0, $checkKeyLength));
+
+        for ($i = 0; $i < count($compression_algorithms) && !in_array($compression_algorithms[$i], $this->compression_algorithms_server_to_client); $i++);
+        if ($i == count($compression_algorithms)) {
+            user_error('No compatible server to client compression algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+        $this->decompress = $compression_algorithms[$i] == 'zlib';
+
+        for ($i = 0; $i < count($compression_algorithms) && !in_array($compression_algorithms[$i], $this->compression_algorithms_client_to_server); $i++);
+        if ($i == count($compression_algorithms)) {
+            user_error('No compatible client to server compression algorithms found');
+            return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+        }
+        $this->compress = $compression_algorithms[$i] == 'zlib';
+
+        return true;
+    }
+
+    /**
+     * Login
+     *
+     * The $password parameter can be a plaintext password or a Crypt_RSA object.
+     *
+     * @param String $username
+     * @param optional String $password
+     * @return Boolean
+     * @access public
+     * @internal It might be worthwhile, at some point, to protect against {@link http://tools.ietf.org/html/rfc4251#section-9.3.9 traffic analysis}
+     *           by sending dummy SSH_MSG_IGNORE messages.
+     */
+    function login($username, $password = null)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_CONSTRUCTOR)) {
+            return false;
+        }
+
+        $packet = pack('CNa*',
+            NET_SSH2_MSG_SERVICE_REQUEST, strlen('ssh-userauth'), 'ssh-userauth'
+        );
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        if ($type != NET_SSH2_MSG_SERVICE_ACCEPT) {
+            user_error('Expected SSH_MSG_SERVICE_ACCEPT');
+            return false;
+        }
+
+        // although PHP5's get_class() preserves the case, PHP4's does not
+        if (is_object($password) && strtolower(get_class($password)) == 'crypt_rsa') {
+            return $this->_privatekey_login($username, $password);
+        }
+
+        if (!isset($password)) {
+            $packet = pack('CNa*Na*Na*',
+                NET_SSH2_MSG_USERAUTH_REQUEST, strlen($username), $username, strlen('ssh-connection'), 'ssh-connection',
+                strlen('none'), 'none'
+            );
+
+            if (!$this->_send_binary_packet($packet)) {
+                return false;
+            }
+
+            $response = $this->_get_binary_packet();
+            if ($response === false) {
+                user_error('Connection closed by server');
+                return false;
+            }
+
+            extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+            switch ($type) {
+                case NET_SSH2_MSG_USERAUTH_SUCCESS:
+                    $this->bitmap |= NET_SSH2_MASK_LOGIN;
+                    return true;
+                //case NET_SSH2_MSG_USERAUTH_FAILURE:
+                default:
+                    return false;
+            }
+        }
+
+        $packet = pack('CNa*Na*Na*CNa*',
+            NET_SSH2_MSG_USERAUTH_REQUEST, strlen($username), $username, strlen('ssh-connection'), 'ssh-connection',
+            strlen('password'), 'password', 0, strlen($password), $password
+        );
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        // remove the username and password from the last logged packet
+        if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == NET_SSH2_LOG_COMPLEX) {
+            $packet = pack('CNa*Na*Na*CNa*',
+                NET_SSH2_MSG_USERAUTH_REQUEST, strlen('username'), 'username', strlen('ssh-connection'), 'ssh-connection',
+                strlen('password'), 'password', 0, strlen('password'), 'password'
+            );
+            $this->message_log[count($this->message_log) - 1] = $packet;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        switch ($type) {
+            case NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ: // in theory, the password can be changed
+                if (defined('NET_SSH2_LOGGING')) {
+                    $this->message_number_log[count($this->message_number_log) - 1] = 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ';
+                }
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->errors[] = 'SSH_MSG_USERAUTH_PASSWD_CHANGEREQ: ' . utf8_decode($this->_string_shift($response, $length));
+                return $this->_disconnect(NET_SSH2_DISCONNECT_AUTH_CANCELLED_BY_USER);
+            case NET_SSH2_MSG_USERAUTH_FAILURE:
+                // can we use keyboard-interactive authentication?  if not then either the login is bad or the server employees
+                // multi-factor authentication
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $auth_methods = explode(',', $this->_string_shift($response, $length));
+                if (in_array('keyboard-interactive', $auth_methods)) {
+                    if ($this->_keyboard_interactive_login($username, $password)) {
+                        $this->bitmap |= NET_SSH2_MASK_LOGIN;
+                        return true;
+                    }
+                    return false;
+                }
+                return false;
+            case NET_SSH2_MSG_USERAUTH_SUCCESS:
+                $this->bitmap |= NET_SSH2_MASK_LOGIN;
+                return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Login via keyboard-interactive authentication
+     *
+     * See {@link http://tools.ietf.org/html/rfc4256 RFC4256} for details.  This is not a full-featured keyboard-interactive authenticator.
+     *
+     * @param String $username
+     * @param String $password
+     * @return Boolean
+     * @access private
+     */
+    function _keyboard_interactive_login($username, $password)
+    {
+        $packet = pack('CNa*Na*Na*Na*Na*', 
+            NET_SSH2_MSG_USERAUTH_REQUEST, strlen($username), $username, strlen('ssh-connection'), 'ssh-connection',
+            strlen('keyboard-interactive'), 'keyboard-interactive', 0, '', 0, ''
+        );
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        return $this->_keyboard_interactive_process($password);
+    }
+
+    /**
+     * Handle the keyboard-interactive requests / responses.
+     *
+     * @param String $responses...
+     * @return Boolean
+     * @access private
+     */
+    function _keyboard_interactive_process()
+    {
+        $responses = func_get_args();
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        switch ($type) {
+            case NET_SSH2_MSG_USERAUTH_INFO_REQUEST:
+                // see http://tools.ietf.org/html/rfc4256#section-3.2
+                if (defined('NET_SSH2_LOGGING')) {
+                    $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
+                        'UNKNOWN',
+                        'NET_SSH2_MSG_USERAUTH_INFO_REQUEST',
+                        $this->message_number_log[count($this->message_number_log) - 1]
+                    );
+                }
+
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->_string_shift($response, $length); // name; may be empty
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->_string_shift($response, $length); // instruction; may be empty
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->_string_shift($response, $length); // language tag; may be empty
+                extract(unpack('Nnum_prompts', $this->_string_shift($response, 4)));
+                /*
+                for ($i = 0; $i < $num_prompts; $i++) {
+                    extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                    // prompt - ie. "Password: "; must not be empty
+                    $this->_string_shift($response, $length);
+                    $echo = $this->_string_shift($response) != chr(0);
+                }
+                */
+
+                /*
+                   After obtaining the requested information from the user, the client
+                   MUST respond with an SSH_MSG_USERAUTH_INFO_RESPONSE message.
+                */
+                // see http://tools.ietf.org/html/rfc4256#section-3.4
+                $packet = $logged = pack('CN', NET_SSH2_MSG_USERAUTH_INFO_RESPONSE, count($responses));
+                for ($i = 0; $i < count($responses); $i++) {
+                    $packet.= pack('Na*', strlen($responses[$i]), $responses[$i]);
+                    $logged.= pack('Na*', strlen('dummy-answer'), 'dummy-answer');
+                }
+
+                if (!$this->_send_binary_packet($packet)) {
+                    return false;
+                }
+
+                if (defined('NET_SSH2_LOGGING')) {
+                    $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
+                        'UNKNOWN',
+                        'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE',
+                        $this->message_number_log[count($this->message_number_log) - 1]
+                    );
+                    $this->message_log[count($this->message_log) - 1] = $logged;
+                }
+
+                /*
+                   After receiving the response, the server MUST send either an
+                   SSH_MSG_USERAUTH_SUCCESS, SSH_MSG_USERAUTH_FAILURE, or another
+                   SSH_MSG_USERAUTH_INFO_REQUEST message.
+                */
+                // maybe phpseclib should force close the connection after x request / responses?  unless something like that is done
+                // there could be an infinite loop of request / responses.
+                return $this->_keyboard_interactive_process();
+            case NET_SSH2_MSG_USERAUTH_SUCCESS:
+                return true;
+            case NET_SSH2_MSG_USERAUTH_FAILURE:
+                return false;
+        }
+
+        return false;
+    }
+
+    /**
+     * Login with an RSA private key
+     *
+     * @param String $username
+     * @param Crypt_RSA $password
+     * @return Boolean
+     * @access private
+     * @internal It might be worthwhile, at some point, to protect against {@link http://tools.ietf.org/html/rfc4251#section-9.3.9 traffic analysis}
+     *           by sending dummy SSH_MSG_IGNORE messages.
+     */
+    function _privatekey_login($username, $privatekey)
+    {
+        // see http://tools.ietf.org/html/rfc4253#page-15
+        $publickey = $privatekey->getPublicKey(CRYPT_RSA_PUBLIC_FORMAT_RAW);
+        if ($publickey === false) {
+            return false;
+        }
+
+        $publickey = array(
+            'e' => $publickey['e']->toBytes(true),
+            'n' => $publickey['n']->toBytes(true)
+        );
+        $publickey = pack('Na*Na*Na*',
+            strlen('ssh-rsa'), 'ssh-rsa', strlen($publickey['e']), $publickey['e'], strlen($publickey['n']), $publickey['n']
+        );
+
+        $part1 = pack('CNa*Na*Na*',
+            NET_SSH2_MSG_USERAUTH_REQUEST, strlen($username), $username, strlen('ssh-connection'), 'ssh-connection',
+            strlen('publickey'), 'publickey'
+        );
+        $part2 = pack('Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($publickey), $publickey);
+
+        $packet = $part1 . chr(0) . $part2;
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        switch ($type) {
+            case NET_SSH2_MSG_USERAUTH_FAILURE:
+                extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                $this->errors[] = 'SSH_MSG_USERAUTH_FAILURE: ' . $this->_string_shift($response, $length);
+                return $this->_disconnect(NET_SSH2_DISCONNECT_AUTH_CANCELLED_BY_USER);
+            case NET_SSH2_MSG_USERAUTH_PK_OK:
+                // we'll just take it on faith that the public key blob and the public key algorithm name are as
+                // they should be
+                if (defined('NET_SSH2_LOGGING')) {
+                    $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
+                        'UNKNOWN',
+                        'NET_SSH2_MSG_USERAUTH_PK_OK',
+                        $this->message_number_log[count($this->message_number_log) - 1]
+                    );
+                }
+        }
+
+        $packet = $part1 . chr(1) . $part2;
+        $privatekey->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);
+        $signature = $privatekey->sign(pack('Na*a*', strlen($this->session_id), $this->session_id, $packet));
+        $signature = pack('Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($signature), $signature);
+        $packet.= pack('Na*', strlen($signature), $signature);
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        extract(unpack('Ctype', $this->_string_shift($response, 1)));
+
+        switch ($type) {
+            case NET_SSH2_MSG_USERAUTH_FAILURE:
+                // either the login is bad or the server employs multi-factor authentication
+                return false;
+            case NET_SSH2_MSG_USERAUTH_SUCCESS:
+                $this->bitmap |= NET_SSH2_MASK_LOGIN;
+                return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Set Timeout
+     *
+     * $ssh->exec('ping 127.0.0.1'); on a Linux host will never return and will run indefinitely.  setTimeout() makes it so it'll timeout.
+     * Setting $timeout to false or 0 will mean there is no timeout.
+     *
+     * @param Mixed $timeout
+     */
+    function setTimeout($timeout)
+    {
+        $this->timeout = $this->curTimeout = $timeout;
+    }
+
+    /**
+     * Execute Command
+     *
+     * If $block is set to false then Net_SSH2::_get_channel_packet(NET_SSH2_CHANNEL_EXEC) will need to be called manually.
+     * In all likelihood, this is not a feature you want to be taking advantage of.
+     *
+     * @param String $command
+     * @param optional Boolean $block
+     * @return String
+     * @access public
+     */
+    function exec($command, $block = true)
+    {
+        $this->curTimeout = $this->timeout;
+
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            return false;
+        }
+
+        // RFC4254 defines the (client) window size as "bytes the other party can send before it must wait for the window to
+        // be adjusted".  0x7FFFFFFF is, at 4GB, the max size.  technically, it should probably be decremented, but, 
+        // honestly, if you're transfering more than 4GB, you probably shouldn't be using phpseclib, anyway.
+        // see http://tools.ietf.org/html/rfc4254#section-5.2 for more info
+        $this->window_size_client_to_server[NET_SSH2_CHANNEL_EXEC] = 0x7FFFFFFF;
+        // 0x8000 is the maximum max packet size, per http://tools.ietf.org/html/rfc4253#section-6.1, although since PuTTy
+        // uses 0x4000, that's what will be used here, as well.
+        $packet_size = 0x4000;
+
+        $packet = pack('CNa*N3',
+            NET_SSH2_MSG_CHANNEL_OPEN, strlen('session'), 'session', NET_SSH2_CHANNEL_EXEC, $this->window_size_client_to_server[NET_SSH2_CHANNEL_EXEC], $packet_size);
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_EXEC] = NET_SSH2_MSG_CHANNEL_OPEN;
+
+        $response = $this->_get_channel_packet(NET_SSH2_CHANNEL_EXEC);
+        if ($response === false) {
+            return false;
+        }
+
+        // sending a pty-req SSH_MSG_CHANNEL_REQUEST message is unnecessary and, in fact, in most cases, slows things
+        // down.  the one place where it might be desirable is if you're doing something like Net_SSH2::exec('ping localhost &').
+        // with a pty-req SSH_MSG_CHANNEL_REQUEST, exec() will return immediately and the ping process will then
+        // then immediately terminate.  without such a request exec() will loop indefinitely.  the ping process won't end but
+        // neither will your script.
+
+        // although, in theory, the size of SSH_MSG_CHANNEL_REQUEST could exceed the maximum packet size established by
+        // SSH_MSG_CHANNEL_OPEN_CONFIRMATION, RFC4254#section-5.1 states that the "maximum packet size" refers to the 
+        // "maximum size of an individual data packet". ie. SSH_MSG_CHANNEL_DATA.  RFC4254#section-5.2 corroborates.
+        $packet = pack('CNNa*CNa*',
+            NET_SSH2_MSG_CHANNEL_REQUEST, $this->server_channels[NET_SSH2_CHANNEL_EXEC], strlen('exec'), 'exec', 1, strlen($command), $command);
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_EXEC] = NET_SSH2_MSG_CHANNEL_REQUEST;
+
+        $response = $this->_get_channel_packet(NET_SSH2_CHANNEL_EXEC);
+        if ($response === false) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_EXEC] = NET_SSH2_MSG_CHANNEL_DATA;
+
+        if (!$block) {
+            return true;
+        }
+
+        $output = '';
+        while (true) {
+            $temp = $this->_get_channel_packet(NET_SSH2_CHANNEL_EXEC);
+            switch (true) {
+                case $temp === true:
+                    return $output;
+                case $temp === false:
+                    return false;
+                default:
+                    $output.= $temp;
+            }
+        }
+    }
+
+    /**
+     * Creates an interactive shell
+     *
+     * @see Net_SSH2::read()
+     * @see Net_SSH2::write()
+     * @return Boolean
+     * @access private
+     */
+    function _initShell()
+    {
+        $this->window_size_client_to_server[NET_SSH2_CHANNEL_SHELL] = 0x7FFFFFFF;
+        $packet_size = 0x4000;
+
+        $packet = pack('CNa*N3',
+            NET_SSH2_MSG_CHANNEL_OPEN, strlen('session'), 'session', NET_SSH2_CHANNEL_SHELL, $this->window_size_client_to_server[NET_SSH2_CHANNEL_SHELL], $packet_size);
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_SHELL] = NET_SSH2_MSG_CHANNEL_OPEN;
+
+        $response = $this->_get_channel_packet(NET_SSH2_CHANNEL_SHELL);
+        if ($response === false) {
+            return false;
+        }
+
+        $terminal_modes = pack('C', NET_SSH2_TTY_OP_END);
+        $packet = pack('CNNa*CNa*N5a*',
+            NET_SSH2_MSG_CHANNEL_REQUEST, $this->server_channels[NET_SSH2_CHANNEL_SHELL], strlen('pty-req'), 'pty-req', 1, strlen('vt100'), 'vt100',
+            80, 24, 0, 0, strlen($terminal_modes), $terminal_modes);
+
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $response = $this->_get_binary_packet();
+        if ($response === false) {
+            user_error('Connection closed by server');
+            return false;
+        }
+
+        list(, $type) = unpack('C', $this->_string_shift($response, 1));
+
+        switch ($type) {
+            case NET_SSH2_MSG_CHANNEL_SUCCESS:
+                break;
+            case NET_SSH2_MSG_CHANNEL_FAILURE:
+            default:
+                user_error('Unable to request pseudo-terminal');
+                return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+        }
+
+        $packet = pack('CNNa*C',
+            NET_SSH2_MSG_CHANNEL_REQUEST, $this->server_channels[NET_SSH2_CHANNEL_SHELL], strlen('shell'), 'shell', 1);
+        if (!$this->_send_binary_packet($packet)) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_SHELL] = NET_SSH2_MSG_CHANNEL_REQUEST;
+
+        $response = $this->_get_channel_packet(NET_SSH2_CHANNEL_SHELL);
+        if ($response === false) {
+            return false;
+        }
+
+        $this->channel_status[NET_SSH2_CHANNEL_SHELL] = NET_SSH2_MSG_CHANNEL_DATA;
+
+        $this->bitmap |= NET_SSH2_MASK_SHELL;
+
+        return true;
+    }
+
+    /**
+     * Returns the output of an interactive shell
+     *
+     * Returns when there's a match for $expect, which can take the form of a string literal or,
+     * if $mode == NET_SSH2_READ_REGEX, a regular expression.
+     *
+     * @see Net_SSH2::read()
+     * @param String $expect
+     * @param Integer $mode
+     * @return String
+     * @access public
+     */
+    function read($expect = '', $mode = NET_SSH2_READ_SIMPLE)
+    {
+        $this->curTimeout = $this->timeout;
+
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        if (!($this->bitmap & NET_SSH2_MASK_SHELL) && !$this->_initShell()) {
+            user_error('Unable to initiate an interactive shell session');
+            return false;
+        }
+
+        $match = $expect;
+        while (true) {
+            if ($mode == NET_SSH2_READ_REGEX) {
+                preg_match($expect, $this->interactiveBuffer, $matches);
+                $match = isset($matches[0]) ? $matches[0] : '';
+            }
+            $pos = strlen($match) ? strpos($this->interactiveBuffer, $match) : false;
+            if ($pos !== false) {
+                return $this->_string_shift($this->interactiveBuffer, $pos + strlen($match));
+            }
+            $response = $this->_get_channel_packet(NET_SSH2_CHANNEL_SHELL);
+            if (is_bool($response)) {
+                return $response ? $this->_string_shift($this->interactiveBuffer, strlen($this->interactiveBuffer)) : false;
+            }
+
+            $this->interactiveBuffer.= $response;
+        }
+    }
+
+    /**
+     * Inputs a command into an interactive shell.
+     *
+     * @see Net_SSH1::interactiveWrite()
+     * @param String $cmd
+     * @return Boolean
+     * @access public
+     */
+    function write($cmd)
+    {
+        if (!($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            user_error('Operation disallowed prior to login()');
+            return false;
+        }
+
+        if (!($this->bitmap & NET_SSH2_MASK_SHELL) && !$this->_initShell()) {
+            user_error('Unable to initiate an interactive shell session');
+            return false;
+        }
+
+        return $this->_send_channel_packet(NET_SSH2_CHANNEL_SHELL, $cmd);
+    }
+
+    /**
+     * Disconnect
+     *
+     * @access public
+     */
+    function disconnect()
+    {
+        $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+        if (isset($this->realtime_log_file) && is_resource($this->realtime_log_file)) {
+            fclose($this->realtime_log_file);
+        }
+    }
+
+    /**
+     * Destructor.
+     *
+     * Will be called, automatically, if you're supporting just PHP5.  If you're supporting PHP4, you'll need to call
+     * disconnect().
+     *
+     * @access public
+     */
+    function __destruct()
+    {
+        $this->disconnect();
+    }
+
+    /**
+     * Gets Binary Packets
+     *
+     * See '6. Binary Packet Protocol' of rfc4253 for more info.
+     *
+     * @see Net_SSH2::_send_binary_packet()
+     * @return String
+     * @access private
+     */
+    function _get_binary_packet()
+    {
+        if (!is_resource($this->fsock) || feof($this->fsock)) {
+            user_error('Connection closed prematurely');
+            $this->bitmask = 0;
+            return false;
+        }
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $raw = fread($this->fsock, $this->decrypt_block_size);
+
+        if (!strlen($raw)) {
+            return '';
+        }
+
+        if ($this->decrypt !== false) {
+            $raw = $this->decrypt->decrypt($raw);
+        }
+        if ($raw === false) {
+            user_error('Unable to decrypt content');
+            return false;
+        }
+
+        extract(unpack('Npacket_length/Cpadding_length', $this->_string_shift($raw, 5)));
+
+        $remaining_length = $packet_length + 4 - $this->decrypt_block_size;
+
+        // quoting <http://tools.ietf.org/html/rfc4253#section-6.1>,
+        // "implementations SHOULD check that the packet length is reasonable"
+        // PuTTY uses 0x9000 as the actual max packet size and so to shall we
+        if ($remaining_length < -$this->decrypt_block_size || $remaining_length > 0x9000 || $remaining_length % $this->decrypt_block_size != 0) {
+            user_error('Invalid size');
+            return false;
+        }
+
+        $buffer = '';
+        while ($remaining_length > 0) {
+            $temp = fread($this->fsock, $remaining_length);
+            $buffer.= $temp;
+            $remaining_length-= strlen($temp);
+        }
+        $stop = strtok(microtime(), ' ') + strtok('');
+        if (strlen($buffer)) {
+            $raw.= $this->decrypt !== false ? $this->decrypt->decrypt($buffer) : $buffer;
+        }
+
+        $payload = $this->_string_shift($raw, $packet_length - $padding_length - 1);
+        $padding = $this->_string_shift($raw, $padding_length); // should leave $raw empty
+
+        if ($this->hmac_check !== false) {
+            $hmac = fread($this->fsock, $this->hmac_size);
+            if ($hmac != $this->hmac_check->hash(pack('NNCa*', $this->get_seq_no, $packet_length, $padding_length, $payload . $padding))) {
+                user_error('Invalid HMAC');
+                return false;
+            }
+        }
+
+        //if ($this->decompress) {
+        //    $payload = gzinflate(substr($payload, 2));
+        //}
+
+        $this->get_seq_no++;
+
+        if (defined('NET_SSH2_LOGGING')) {
+            $current = strtok(microtime(), ' ') + strtok('');
+            $message_number = isset($this->message_numbers[ord($payload[0])]) ? $this->message_numbers[ord($payload[0])] : 'UNKNOWN (' . ord($payload[0]) . ')';
+            $message_number = '<- ' . $message_number .
+                              ' (since last: ' . round($current - $this->last_packet, 4) . ', network: ' . round($stop - $start, 4) . 's)';
+            $this->_append_log($message_number, $payload);
+            $this->last_packet = $current;
+        }
+
+        return $this->_filter($payload);
+    }
+
+    /**
+     * Filter Binary Packets
+     *
+     * Because some binary packets need to be ignored...
+     *
+     * @see Net_SSH2::_get_binary_packet()
+     * @return String
+     * @access private
+     */
+    function _filter($payload)
+    {
+        switch (ord($payload[0])) {
+            case NET_SSH2_MSG_DISCONNECT:
+                $this->_string_shift($payload, 1);
+                extract(unpack('Nreason_code/Nlength', $this->_string_shift($payload, 8)));
+                $this->errors[] = 'SSH_MSG_DISCONNECT: ' . $this->disconnect_reasons[$reason_code] . "\r\n" . utf8_decode($this->_string_shift($payload, $length));
+                $this->bitmask = 0;
+                return false;
+            case NET_SSH2_MSG_IGNORE:
+                $payload = $this->_get_binary_packet();
+                break;
+            case NET_SSH2_MSG_DEBUG:
+                $this->_string_shift($payload, 2);
+                extract(unpack('Nlength', $this->_string_shift($payload, 4)));
+                $this->errors[] = 'SSH_MSG_DEBUG: ' . utf8_decode($this->_string_shift($payload, $length));
+                $payload = $this->_get_binary_packet();
+                break;
+            case NET_SSH2_MSG_UNIMPLEMENTED:
+                return false;
+            case NET_SSH2_MSG_KEXINIT:
+                if ($this->session_id !== false) {
+                    if (!$this->_key_exchange($payload)) {
+                        $this->bitmask = 0;
+                        return false;
+                    }
+                    $payload = $this->_get_binary_packet();
+                }
+        }
+
+        // see http://tools.ietf.org/html/rfc4252#section-5.4; only called when the encryption has been activated and when we haven't already logged in
+        if (($this->bitmap & NET_SSH2_MASK_CONSTRUCTOR) && !($this->bitmap & NET_SSH2_MASK_LOGIN) && ord($payload[0]) == NET_SSH2_MSG_USERAUTH_BANNER) {
+            $this->_string_shift($payload, 1);
+            extract(unpack('Nlength', $this->_string_shift($payload, 4)));
+            $this->errors[] = 'SSH_MSG_USERAUTH_BANNER: ' . utf8_decode($this->_string_shift($payload, $length));
+            $payload = $this->_get_binary_packet();
+        }
+
+        // only called when we've already logged in
+        if (($this->bitmap & NET_SSH2_MASK_CONSTRUCTOR) && ($this->bitmap & NET_SSH2_MASK_LOGIN)) {
+            switch (ord($payload[0])) {
+                case NET_SSH2_MSG_GLOBAL_REQUEST: // see http://tools.ietf.org/html/rfc4254#section-4
+                    $this->_string_shift($payload, 1);
+                    extract(unpack('Nlength', $this->_string_shift($payload)));
+                    $this->errors[] = 'SSH_MSG_GLOBAL_REQUEST: ' . utf8_decode($this->_string_shift($payload, $length));
+
+                    if (!$this->_send_binary_packet(pack('C', NET_SSH2_MSG_REQUEST_FAILURE))) {
+                        return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+                    }
+
+                    $payload = $this->_get_binary_packet();
+                    break;
+                case NET_SSH2_MSG_CHANNEL_OPEN: // see http://tools.ietf.org/html/rfc4254#section-5.1
+                    $this->_string_shift($payload, 1);
+                    extract(unpack('N', $this->_string_shift($payload, 4)));
+                    $this->errors[] = 'SSH_MSG_CHANNEL_OPEN: ' . utf8_decode($this->_string_shift($payload, $length));
+
+                    $this->_string_shift($payload, 4); // skip over client channel
+                    extract(unpack('Nserver_channel', $this->_string_shift($payload, 4)));
+
+                    $packet = pack('CN3a*Na*',
+                        NET_SSH2_MSG_REQUEST_FAILURE, $server_channel, NET_SSH2_OPEN_ADMINISTRATIVELY_PROHIBITED, 0, '', 0, '');
+
+                    if (!$this->_send_binary_packet($packet)) {
+                        return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+                    }
+
+                    $payload = $this->_get_binary_packet();
+                    break;
+                case NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST:
+                    $payload = $this->_get_binary_packet();
+            }
+        }
+
+        return $payload;
+    }
+
+    /**
+     * Enable Quiet Mode
+     *
+     * Suppress stderr from output
+     *
+     * @access public
+     */
+    function enableQuietMode()
+    {
+        $this->quiet_mode = true;
+    }
+
+    /**
+     * Disable Quiet Mode
+     *
+     * Show stderr in output
+     *
+     * @access public
+     */
+    function disableQuietMode()
+    {
+        $this->quiet_mode = false;
+    }
+
+    /**
+     * Gets channel data
+     *
+     * Returns the data as a string if it's available and false if not.
+     *
+     * @param $client_channel
+     * @return Mixed
+     * @access private
+     */
+    function _get_channel_packet($client_channel, $skip_extended = false)
+    {
+        if (!empty($this->channel_buffers[$client_channel])) {
+            return array_shift($this->channel_buffers[$client_channel]);
+        }
+
+        while (true) {
+            if ($this->curTimeout) {
+                $read = array($this->fsock);
+                $write = $except = NULL;
+
+                $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+                $sec = floor($this->curTimeout);
+                $usec = 1000000 * ($this->curTimeout - $sec);
+                // on windows this returns a "Warning: Invalid CRT parameters detected" error
+                if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {
+                    $this->_close_channel($client_channel);
+                    return true;
+                }
+                $elapsed = strtok(microtime(), ' ') + strtok('') - $start;
+                $this->curTimeout-= $elapsed;
+            }
+
+            $response = $this->_get_binary_packet();
+            if ($response === false) {
+                user_error('Connection closed by server');
+                return false;
+            }
+
+            if (!strlen($response)) {
+                return '';
+            }
+
+            extract(unpack('Ctype/Nchannel', $this->_string_shift($response, 5)));
+
+            switch ($this->channel_status[$channel]) {
+                case NET_SSH2_MSG_CHANNEL_OPEN:
+                    switch ($type) {
+                        case NET_SSH2_MSG_CHANNEL_OPEN_CONFIRMATION:
+                            extract(unpack('Nserver_channel', $this->_string_shift($response, 4)));
+                            $this->server_channels[$channel] = $server_channel;
+                            $this->_string_shift($response, 4); // skip over (server) window size
+                            $temp = unpack('Npacket_size_client_to_server', $this->_string_shift($response, 4));
+                            $this->packet_size_client_to_server[$channel] = $temp['packet_size_client_to_server'];
+                            return $client_channel == $channel ? true : $this->_get_channel_packet($client_channel, $skip_extended);
+                        //case NET_SSH2_MSG_CHANNEL_OPEN_FAILURE:
+                        default:
+                            user_error('Unable to open channel');
+                            return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+                    }
+                    break;
+                case NET_SSH2_MSG_CHANNEL_REQUEST:
+                    switch ($type) {
+                        case NET_SSH2_MSG_CHANNEL_SUCCESS:
+                            return true;
+                        //case NET_SSH2_MSG_CHANNEL_FAILURE:
+                        default:
+                            user_error('Unable to request pseudo-terminal');
+                            return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+                    }
+                case NET_SSH2_MSG_CHANNEL_CLOSE:
+                    return $type == NET_SSH2_MSG_CHANNEL_CLOSE ? true : $this->_get_channel_packet($client_channel, $skip_extended);
+            }
+
+            switch ($type) {
+                case NET_SSH2_MSG_CHANNEL_DATA:
+                    /*
+                    if ($client_channel == NET_SSH2_CHANNEL_EXEC) {
+                        // SCP requires null packets, such as this, be sent.  further, in the case of the ssh.com SSH server
+                        // this actually seems to make things twice as fast.  more to the point, the message right after 
+                        // SSH_MSG_CHANNEL_DATA (usually SSH_MSG_IGNORE) won't block for as long as it would have otherwise.
+                        // in OpenSSH it slows things down but only by a couple thousandths of a second.
+                        $this->_send_channel_packet($client_channel, chr(0));
+                    }
+                    */
+                    extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                    $data = $this->_string_shift($response, $length);
+                    if ($client_channel == $channel) {
+                        return $data;
+                    }
+                    if (!isset($this->channel_buffers[$client_channel])) {
+                        $this->channel_buffers[$client_channel] = array();
+                    }
+                    $this->channel_buffers[$client_channel][] = $data;
+                    break;
+                case NET_SSH2_MSG_CHANNEL_EXTENDED_DATA:
+                    if ($skip_extended || $this->quiet_mode) {
+                        break;
+                    }
+                    /*
+                    if ($client_channel == NET_SSH2_CHANNEL_EXEC) {
+                        $this->_send_channel_packet($client_channel, chr(0));
+                    }
+                    */
+                    // currently, there's only one possible value for $data_type_code: NET_SSH2_EXTENDED_DATA_STDERR
+                    extract(unpack('Ndata_type_code/Nlength', $this->_string_shift($response, 8)));
+                    $data = $this->_string_shift($response, $length);
+                    if ($client_channel == $channel) {
+                        return $data;
+                    }
+                    if (!isset($this->channel_buffers[$client_channel])) {
+                        $this->channel_buffers[$client_channel] = array();
+                    }
+                    $this->channel_buffers[$client_channel][] = $data;
+                    break;
+                case NET_SSH2_MSG_CHANNEL_REQUEST:
+                    extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                    $value = $this->_string_shift($response, $length);
+                    switch ($value) {
+                        case 'exit-signal':
+                            $this->_string_shift($response, 1);
+                            extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                            $this->errors[] = 'SSH_MSG_CHANNEL_REQUEST (exit-signal): ' . $this->_string_shift($response, $length);
+                            $this->_string_shift($response, 1);
+                            extract(unpack('Nlength', $this->_string_shift($response, 4)));
+                            if ($length) {
+                                $this->errors[count($this->errors)].= "\r\n" . $this->_string_shift($response, $length);
+                            }
+                        case 'exit-status':
+                            extract(unpack('Cfalse/Nexit_status', $this->_string_shift($response, 5)));
+                            $this->exit_status = $exit_status;
+                            // "The channel needs to be closed with SSH_MSG_CHANNEL_CLOSE after this message."
+                            // -- http://tools.ietf.org/html/rfc4254#section-6.10
+                            $this->_send_binary_packet(pack('CN', NET_SSH2_MSG_CHANNEL_EOF, $this->server_channels[$client_channel]));
+                            $this->_send_binary_packet(pack('CN', NET_SSH2_MSG_CHANNEL_CLOSE, $this->server_channels[$channel]));
+
+                            $this->channel_status[$channel] = NET_SSH2_MSG_CHANNEL_EOF;
+                        default:
+                            // "Some systems may not implement signals, in which case they SHOULD ignore this message."
+                            //  -- http://tools.ietf.org/html/rfc4254#section-6.9
+                            break;
+                    }
+                    break;
+                case NET_SSH2_MSG_CHANNEL_CLOSE:
+                    $this->curTimeout = 0;
+
+                    if ($this->bitmap & NET_SSH2_MASK_SHELL) {
+                        $this->bitmap&= ~NET_SSH2_MASK_SHELL;
+                    }
+                    if ($this->channel_status[$channel] != NET_SSH2_MSG_CHANNEL_EOF) {
+                        $this->_send_binary_packet(pack('CN', NET_SSH2_MSG_CHANNEL_CLOSE, $this->server_channels[$channel]));
+                    }
+
+                    $this->channel_status[$channel] = NET_SSH2_MSG_CHANNEL_CLOSE;
+                    return true;
+                case NET_SSH2_MSG_CHANNEL_EOF:
+                    break;
+                default:
+                    user_error('Error reading channel data');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_BY_APPLICATION);
+            }
+        }
+    }
+
+    /**
+     * Sends Binary Packets
+     *
+     * See '6. Binary Packet Protocol' of rfc4253 for more info.
+     *
+     * @param String $data
+     * @see Net_SSH2::_get_binary_packet()
+     * @return Boolean
+     * @access private
+     */
+    function _send_binary_packet($data)
+    {
+        if (!is_resource($this->fsock) || feof($this->fsock)) {
+            user_error('Connection closed prematurely');
+            $this->bitmask = 0;
+            return false;
+        }
+
+        //if ($this->compress) {
+        //    // the -4 removes the checksum:
+        //    // http://php.net/function.gzcompress#57710
+        //    $data = substr(gzcompress($data), 0, -4);
+        //}
+
+        // 4 (packet length) + 1 (padding length) + 4 (minimal padding amount) == 9
+        $packet_length = strlen($data) + 9;
+        // round up to the nearest $this->encrypt_block_size
+        $packet_length+= (($this->encrypt_block_size - 1) * $packet_length) % $this->encrypt_block_size;
+        // subtracting strlen($data) is obvious - subtracting 5 is necessary because of packet_length and padding_length
+        $padding_length = $packet_length - strlen($data) - 5;
+        $padding = crypt_random_string($padding_length);
+
+        // we subtract 4 from packet_length because the packet_length field isn't supposed to include itself
+        $packet = pack('NCa*', $packet_length - 4, $padding_length, $data . $padding);
+
+        $hmac = $this->hmac_create !== false ? $this->hmac_create->hash(pack('Na*', $this->send_seq_no, $packet)) : '';
+        $this->send_seq_no++;
+
+        if ($this->encrypt !== false) {
+            $packet = $this->encrypt->encrypt($packet);
+        }
+
+        $packet.= $hmac;
+
+        $start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
+        $result = strlen($packet) == fputs($this->fsock, $packet);
+        $stop = strtok(microtime(), ' ') + strtok('');
+
+        if (defined('NET_SSH2_LOGGING')) {
+            $current = strtok(microtime(), ' ') + strtok('');
+            $message_number = isset($this->message_numbers[ord($data[0])]) ? $this->message_numbers[ord($data[0])] : 'UNKNOWN (' . ord($data[0]) . ')';
+            $message_number = '-> ' . $message_number .
+                              ' (since last: ' . round($current - $this->last_packet, 4) . ', network: ' . round($stop - $start, 4) . 's)';
+            $this->_append_log($message_number, $data);
+            $this->last_packet = $current;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Logs data packets
+     *
+     * Makes sure that only the last 1MB worth of packets will be logged
+     *
+     * @param String $data
+     * @access private
+     */
+    function _append_log($message_number, $message)
+    {
+            switch (NET_SSH2_LOGGING) {
+                // useful for benchmarks
+                case NET_SSH2_LOG_SIMPLE:
+                    $this->message_number_log[] = $message_number;
+                    break;
+                // the most useful log for SSH2
+                case NET_SSH2_LOG_COMPLEX:
+                    $this->message_number_log[] = $message_number;
+                    $this->_string_shift($message);
+                    $this->log_size+= strlen($message);
+                    $this->message_log[] = $message;
+                    while ($this->log_size > NET_SSH2_LOG_MAX_SIZE) {
+                        $this->log_size-= strlen(array_shift($this->message_log));
+                        array_shift($this->message_number_log);
+                    }
+                    break;
+                // dump the output out realtime; packets may be interspersed with non packets,
+                // passwords won't be filtered out and select other packets may not be correctly
+                // identified
+                case NET_SSH2_LOG_REALTIME:
+                    echo "<pre>\r\n" . $this->_format_log(array($message), array($message_number)) . "\r\n</pre>\r\n";
+                    @flush();
+                    @ob_flush();
+                    break;
+                // basically the same thing as NET_SSH2_LOG_REALTIME with the caveat that NET_SSH2_LOG_REALTIME_FILE
+                // needs to be defined and that the resultant log file will be capped out at NET_SSH2_LOG_MAX_SIZE. 
+                // the earliest part of the log file is denoted by the first <<< START >>> and is not going to necessarily
+                // at the beginning of the file
+                case NET_SSH2_LOG_REALTIME_FILE:
+                    if (!isset($this->realtime_log_file)) {
+                        // PHP doesn't seem to like using constants in fopen()
+                        $filename = NET_SSH2_LOG_REALTIME_FILE;
+                        $fp = fopen($filename, 'w');
+                        $this->realtime_log_file = $fp;
+                    }
+                    if (!is_resource($this->realtime_log_file)) {
+                        break;
+                    }
+                    $entry = $this->_format_log(array($message), array($message_number));
+                    if ($this->realtime_log_wrap) {
+                        $temp = "<<< START >>>\r\n";
+                        $entry.= $temp;
+                        fseek($this->realtime_log_file, ftell($this->realtime_log_file) - strlen($temp));
+                    }
+                    $this->realtime_log_size+= strlen($entry);
+                    if ($this->realtime_log_size > NET_SSH2_LOG_MAX_SIZE) {
+                        fseek($this->realtime_log_file, 0);
+                        $this->realtime_log_size = strlen($entry);
+                        $this->realtime_log_wrap = true;
+                    }
+                    fputs($this->realtime_log_file, $entry);
+            }
+    }
+
+    /**
+     * Sends channel data
+     *
+     * Spans multiple SSH_MSG_CHANNEL_DATAs if appropriate
+     *
+     * @param Integer $client_channel
+     * @param String $data
+     * @return Boolean
+     * @access private
+     */
+    function _send_channel_packet($client_channel, $data)
+    {
+        while (strlen($data) > $this->packet_size_client_to_server[$client_channel]) {
+            // resize the window, if appropriate
+            $this->window_size_client_to_server[$client_channel]-= $this->packet_size_client_to_server[$client_channel];
+            if ($this->window_size_client_to_server[$client_channel] < 0) {
+                $packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$client_channel], $this->window_size);
+                if (!$this->_send_binary_packet($packet)) {
+                    return false;
+                }
+                $this->window_size_client_to_server[$client_channel]+= $this->window_size;
+            }
+
+            $packet = pack('CN2a*',
+                NET_SSH2_MSG_CHANNEL_DATA,
+                $this->server_channels[$client_channel],
+                $this->packet_size_client_to_server[$client_channel],
+                $this->_string_shift($data, $this->packet_size_client_to_server[$client_channel])
+            );
+
+            if (!$this->_send_binary_packet($packet)) {
+                return false;
+            }
+        }
+
+        // resize the window, if appropriate
+        $this->window_size_client_to_server[$client_channel]-= strlen($data);
+        if ($this->window_size_client_to_server[$client_channel] < 0) {
+            $packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$client_channel], $this->window_size);
+            if (!$this->_send_binary_packet($packet)) {
+                return false;
+            }
+            $this->window_size_client_to_server[$client_channel]+= $this->window_size;
+        }
+
+        return $this->_send_binary_packet(pack('CN2a*',
+            NET_SSH2_MSG_CHANNEL_DATA,
+            $this->server_channels[$client_channel],
+            strlen($data),
+            $data));
+    }
+
+    /**
+     * Closes and flushes a channel
+     *
+     * Net_SSH2 doesn't properly close most channels.  For exec() channels are normally closed by the server
+     * and for SFTP channels are presumably closed when the client disconnects.  This functions is intended
+     * for SCP more than anything.
+     *
+     * @param Integer $client_channel
+     * @return Boolean
+     * @access private
+     */
+    function _close_channel($client_channel)
+    {
+        // see http://tools.ietf.org/html/rfc4254#section-5.3
+
+        $this->_send_binary_packet(pack('CN', NET_SSH2_MSG_CHANNEL_EOF, $this->server_channels[$client_channel]));
+
+        $this->_send_binary_packet(pack('CN', NET_SSH2_MSG_CHANNEL_CLOSE, $this->server_channels[$client_channel]));
+
+        $this->channel_status[$client_channel] = NET_SSH2_MSG_CHANNEL_CLOSE;
+
+        $this->curTimeout = 0;
+
+        while (!is_bool($this->_get_channel_packet($client_channel)));
+
+        if ($this->bitmap & NET_SSH2_MASK_SHELL) {
+            $this->bitmap&= ~NET_SSH2_MASK_SHELL;
+        }
+    }
+
+    /**
+     * Disconnect
+     *
+     * @param Integer $reason
+     * @return Boolean
+     * @access private
+     */
+    function _disconnect($reason)
+    {
+        if ($this->bitmap) {
+            $data = pack('CNNa*Na*', NET_SSH2_MSG_DISCONNECT, $reason, 0, '', 0, '');
+            $this->_send_binary_packet($data);
+            $this->bitmap = 0;
+            fclose($this->fsock);
+            return false;
+        }
+    }
+
+    /**
+     * String Shift
+     *
+     * Inspired by array_shift
+     *
+     * @param String $string
+     * @param optional Integer $index
+     * @return String
+     * @access private
+     */
+    function _string_shift(&$string, $index = 1)
+    {
+        $substr = substr($string, 0, $index);
+        $string = substr($string, $index);
+        return $substr;
+    }
+
+    /**
+     * Define Array
+     *
+     * Takes any number of arrays whose indices are integers and whose values are strings and defines a bunch of
+     * named constants from it, using the value as the name of the constant and the index as the value of the constant.
+     * If any of the constants that would be defined already exists, none of the constants will be defined.
+     *
+     * @param Array $array
+     * @access private
+     */
+    function _define_array()
+    {
+        $args = func_get_args();
+        foreach ($args as $arg) {
+            foreach ($arg as $key=>$value) {
+                if (!defined($value)) {
+                    define($value, $key);
+                } else {
+                    break 2;
+                }
+            }
+        }
+    }
+
+    /**
+     * Returns a log of the packets that have been sent and received.
+     *
+     * Returns a string if NET_SSH2_LOGGING == NET_SSH2_LOG_COMPLEX, an array if NET_SSH2_LOGGING == NET_SSH2_LOG_SIMPLE and false if !defined('NET_SSH2_LOGGING')
+     *
+     * @access public
+     * @return String or Array
+     */
+    function getLog()
+    {
+        if (!defined('NET_SSH2_LOGGING')) {
+            return false;
+        }
+
+        switch (NET_SSH2_LOGGING) {
+            case NET_SSH2_LOG_SIMPLE:
+                return $this->message_number_log;
+                break;
+            case NET_SSH2_LOG_COMPLEX:
+                return $this->_format_log($this->message_log, $this->message_number_log);
+                break;
+            default:
+                return false;
+        }
+    }
+
+    /**
+     * Formats a log for printing
+     *
+     * @param Array $message_log
+     * @param Array $message_number_log
+     * @access private
+     * @return String
+     */
+    function _format_log($message_log, $message_number_log)
+    {
+        static $boundary = ':', $long_width = 65, $short_width = 16;
+
+        $output = '';
+        for ($i = 0; $i < count($message_log); $i++) {
+            $output.= $message_number_log[$i] . "\r\n";
+            $current_log = $message_log[$i];
+            $j = 0;
+            do {
+                if (strlen($current_log)) {
+                    $output.= str_pad(dechex($j), 7, '0', STR_PAD_LEFT) . '0  ';
+                }
+                $fragment = $this->_string_shift($current_log, $short_width);
+                $hex = substr(
+                           preg_replace(
+                               '#(.)#es',
+                               '"' . $boundary . '" . str_pad(dechex(ord(substr("\\1", -1))), 2, "0", STR_PAD_LEFT)',
+                               $fragment),
+                           strlen($boundary)
+                       );
+                // replace non ASCII printable characters with dots
+                // http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
+                // also replace < with a . since < messes up the output on web browsers
+                $raw = preg_replace('#[^\x20-\x7E]|<#', '.', $fragment);
+                $output.= str_pad($hex, $long_width - $short_width, ' ') . $raw . "\r\n";
+                $j++;
+            } while (strlen($current_log));
+            $output.= "\r\n";
+        }
+
+        return $output;
+    }
+
+    /**
+     * Returns all errors
+     *
+     * @return String
+     * @access public
+     */
+    function getErrors()
+    {
+        return $this->errors;
+    }
+
+    /**
+     * Returns the last error
+     *
+     * @return String
+     * @access public
+     */
+    function getLastError()
+    {
+        return $this->errors[count($this->errors) - 1];
+    }
+
+    /**
+     * Return the server identification.
+     *
+     * @return String
+     * @access public
+     */
+    function getServerIdentification()
+    {
+        return $this->server_identifier;
+    }
+
+    /**
+     * Return a list of the key exchange algorithms the server supports.
+     *
+     * @return Array
+     * @access public
+     */
+    function getKexAlgorithms()
+    {
+        return $this->kex_algorithms;
+    }
+
+    /**
+     * Return a list of the host key (public key) algorithms the server supports.
+     *
+     * @return Array
+     * @access public
+     */
+    function getServerHostKeyAlgorithms()
+    {
+        return $this->server_host_key_algorithms;
+    }
+
+    /**
+     * Return a list of the (symmetric key) encryption algorithms the server supports, when receiving stuff from the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getEncryptionAlgorithmsClient2Server()
+    {
+        return $this->encryption_algorithms_client_to_server;
+    }
+
+    /**
+     * Return a list of the (symmetric key) encryption algorithms the server supports, when sending stuff to the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getEncryptionAlgorithmsServer2Client()
+    {
+        return $this->encryption_algorithms_server_to_client;
+    }
+
+    /**
+     * Return a list of the MAC algorithms the server supports, when receiving stuff from the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getMACAlgorithmsClient2Server()
+    {
+        return $this->mac_algorithms_client_to_server;
+    }
+
+    /**
+     * Return a list of the MAC algorithms the server supports, when sending stuff to the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getMACAlgorithmsServer2Client()
+    {
+        return $this->mac_algorithms_server_to_client;
+    }
+
+    /**
+     * Return a list of the compression algorithms the server supports, when receiving stuff from the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getCompressionAlgorithmsClient2Server()
+    {
+        return $this->compression_algorithms_client_to_server;
+    }
+
+    /**
+     * Return a list of the compression algorithms the server supports, when sending stuff to the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getCompressionAlgorithmsServer2Client()
+    {
+        return $this->compression_algorithms_server_to_client;
+    }
+
+    /**
+     * Return a list of the languages the server supports, when sending stuff to the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getLanguagesServer2Client()
+    {
+        return $this->languages_server_to_client;
+    }
+
+    /**
+     * Return a list of the languages the server supports, when receiving stuff from the client.
+     *
+     * @return Array
+     * @access public
+     */
+    function getLanguagesClient2Server()
+    {
+        return $this->languages_client_to_server;
+    }
+
+    /**
+     * Returns the server public host key.
+     *
+     * Caching this the first time you connect to a server and checking the result on subsequent connections
+     * is recommended.  Returns false if the server signature is not signed correctly with the public host key.
+     *
+     * @return Mixed
+     * @access public
+     */
+    function getServerPublicHostKey()
+    {
+        $signature = $this->signature;
+        $server_public_host_key = $this->server_public_host_key;
+
+        extract(unpack('Nlength', $this->_string_shift($server_public_host_key, 4)));
+        $this->_string_shift($server_public_host_key, $length);
+
+        if ($this->signature_validated) {
+            return $this->bitmap ?
+                $this->signature_format . ' ' . base64_encode($this->server_public_host_key) :
+                false;
+        }
+
+        $this->signature_validated = true;
+
+        switch ($this->signature_format) {
+            case 'ssh-dss':
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $p = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $q = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $g = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $y = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+
+                /* The value for 'dss_signature_blob' is encoded as a string containing
+                   r, followed by s (which are 160-bit integers, without lengths or
+                   padding, unsigned, and in network byte order). */
+                $temp = unpack('Nlength', $this->_string_shift($signature, 4));
+                if ($temp['length'] != 40) {
+                    user_error('Invalid signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+                }
+
+                $r = new Math_BigInteger($this->_string_shift($signature, 20), 256);
+                $s = new Math_BigInteger($this->_string_shift($signature, 20), 256);
+
+                if ($r->compare($q) >= 0 || $s->compare($q) >= 0) {
+                    user_error('Invalid signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+                }
+
+                $w = $s->modInverse($q);
+
+                $u1 = $w->multiply(new Math_BigInteger(sha1($this->exchange_hash), 16));
+                list(, $u1) = $u1->divide($q);
+
+                $u2 = $w->multiply($r);
+                list(, $u2) = $u2->divide($q);
+
+                $g = $g->modPow($u1, $p);
+                $y = $y->modPow($u2, $p);
+
+                $v = $g->multiply($y);
+                list(, $v) = $v->divide($p);
+                list(, $v) = $v->divide($q);
+
+                if (!$v->equals($r)) {
+                    user_error('Bad server signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE);
+                }
+
+                break;
+            case 'ssh-rsa':
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $e = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+
+                $temp = unpack('Nlength', $this->_string_shift($server_public_host_key, 4));
+                $n = new Math_BigInteger($this->_string_shift($server_public_host_key, $temp['length']), -256);
+                $nLength = $temp['length'];
+
+                /*
+                $temp = unpack('Nlength', $this->_string_shift($signature, 4));
+                $signature = $this->_string_shift($signature, $temp['length']);
+
+                if (!class_exists('Crypt_RSA')) {
+                    require_once('Crypt/RSA.php');
+                }
+
+                $rsa = new Crypt_RSA();
+                $rsa->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);
+                $rsa->loadKey(array('e' => $e, 'n' => $n), CRYPT_RSA_PUBLIC_FORMAT_RAW);
+                if (!$rsa->verify($this->exchange_hash, $signature)) {
+                    user_error('Bad server signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE);
+                }
+                */
+
+                $temp = unpack('Nlength', $this->_string_shift($signature, 4));
+                $s = new Math_BigInteger($this->_string_shift($signature, $temp['length']), 256);
+
+                // validate an RSA signature per "8.2 RSASSA-PKCS1-v1_5", "5.2.2 RSAVP1", and "9.1 EMSA-PSS" in the
+                // following URL:
+                // ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1.pdf
+
+                // also, see SSHRSA.c (rsa2_verifysig) in PuTTy's source.
+
+                if ($s->compare(new Math_BigInteger()) < 0 || $s->compare($n->subtract(new Math_BigInteger(1))) > 0) {
+                    user_error('Invalid signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+                }
+
+                $s = $s->modPow($e, $n);
+                $s = $s->toBytes();
+
+                $h = pack('N4H*', 0x00302130, 0x0906052B, 0x0E03021A, 0x05000414, sha1($this->exchange_hash));
+                $h = chr(0x01) . str_repeat(chr(0xFF), $nLength - 3 - strlen($h)) . $h;
+
+                if ($s != $h) {
+                    user_error('Bad server signature');
+                    return $this->_disconnect(NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE);
+                }
+                break;
+            default:
+                user_error('Unsupported signature format');
+                return $this->_disconnect(NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE);
+        }
+
+        return $this->signature_format . ' ' . base64_encode($this->server_public_host_key);
+    }
+
+    /**
+     * Returns the exit status of an SSH command or false.
+     *
+     * @return Integer or false
+     * @access public
+     */
+    function getExitStatus()
+    {
+        if (is_null($this->exit_status)) {
+            return false;
+        }
+        return $this->exit_status;
+    }
+}
diff --git a/apps/files_external/3rdparty/phpseclib/phpseclib/openssl.cnf b/apps/files_external/3rdparty/phpseclib/phpseclib/openssl.cnf
new file mode 100644
index 0000000000000000000000000000000000000000..6baa566102c71629a2cb669f6d96d414e6f0e37d
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpseclib/openssl.cnf
@@ -0,0 +1,6 @@
+# minimalist openssl.cnf file for use with phpseclib
+
+HOME			= .
+RANDFILE		= $ENV::HOME/.rnd
+
+[ v3_ca ]
\ No newline at end of file
diff --git a/apps/files_external/3rdparty/phpseclib/phpunit.xml.dist b/apps/files_external/3rdparty/phpseclib/phpunit.xml.dist
new file mode 100644
index 0000000000000000000000000000000000000000..f579ab4fd27b31b74aa0e001d0542d3e1d781b14
--- /dev/null
+++ b/apps/files_external/3rdparty/phpseclib/phpunit.xml.dist
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<phpunit bootstrap="tests/bootstrap.php"
+         colors="true"
+>
+    <testsuites>
+        <testsuite name="phpseclib Test Suite">
+            <directory>./tests/</directory>
+        </testsuite>
+    </testsuites>
+
+    <!-- Code Coverage -->
+    <filter>
+        <whitelist>
+            <directory>./phpseclib/</directory>
+        </whitelist>
+    </filter>
+</phpunit>
diff --git a/apps/files_external/ajax/addRootCertificate.php b/apps/files_external/ajax/addRootCertificate.php
index 2f67e801b2c924434b50ef7b1e1d514a22abc3ca..7794238ab3619092042a149cc19c3dcfdde1426d 100644
--- a/apps/files_external/ajax/addRootCertificate.php
+++ b/apps/files_external/ajax/addRootCertificate.php
@@ -1,6 +1,7 @@
 <?php
 
 OCP\JSON::checkAppEnabled('files_external');
+OCP\JSON::callCheck();
 
 if ( ! ($filename = $_FILES['rootcert_import']['name']) ) {
 	header("Location: settings/personal.php");
@@ -13,7 +14,7 @@ fclose($fh);
 $filename = $_FILES['rootcert_import']['name'];
 
 $view = new \OC\Files\View('/'.\OCP\User::getUser().'/files_external/uploads');
-if (!$view->file_exists('')){
+if (!$view->file_exists('')) {
 	$view->mkdir('');
 }
 
diff --git a/apps/files_external/ajax/dropbox.php b/apps/files_external/ajax/dropbox.php
index 58c41d6906263994e36a8c2fc0f250574ba53709..bc9821c62ec4bddab49031ae0c0ca9a560d1cf2f 100644
--- a/apps/files_external/ajax/dropbox.php
+++ b/apps/files_external/ajax/dropbox.php
@@ -4,6 +4,8 @@ require_once 'Dropbox/autoload.php';
 
 OCP\JSON::checkAppEnabled('files_external');
 OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
 if (isset($_POST['app_key']) && isset($_POST['app_secret'])) {
 	$oauth = new Dropbox_OAuth_Curl($_POST['app_key'], $_POST['app_secret']);
 	if (isset($_POST['step'])) {
diff --git a/apps/files_external/ajax/google.php b/apps/files_external/ajax/google.php
index c76c7618e4d056f711a5bc77196c03f9b9037749..70adcb2c2ad4f7a8d10bab181544bef73deb604c 100644
--- a/apps/files_external/ajax/google.php
+++ b/apps/files_external/ajax/google.php
@@ -4,6 +4,8 @@ require_once 'Google/common.inc.php';
 
 OCP\JSON::checkAppEnabled('files_external');
 OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
 $consumer = new OAuthConsumer('anonymous', 'anonymous');
 $sigMethod = new OAuthSignatureMethod_HMAC_SHA1();
 if (isset($_POST['step'])) {
diff --git a/apps/files_external/ajax/removeMountPoint.php b/apps/files_external/ajax/removeMountPoint.php
index aa44642620267a39b2538eba3773bee1c8759224..2f5dbcfdbacf833994828a4ad0d193309db19396 100644
--- a/apps/files_external/ajax/removeMountPoint.php
+++ b/apps/files_external/ajax/removeMountPoint.php
@@ -3,6 +3,15 @@
 OCP\JSON::checkAppEnabled('files_external');
 OCP\JSON::callCheck();
 
+if (!isset($_POST['isPersonal']))
+	return;
+if (!isset($_POST['mountPoint']))
+	return;
+if (!isset($_POST['mountType']))
+	return;
+if (!isset($_POST['applicable']))
+	return;
+
 if ($_POST['isPersonal'] == 'true') {
 	OCP\JSON::checkLoggedIn();
 	$isPersonal = true;
@@ -10,4 +19,5 @@ if ($_POST['isPersonal'] == 'true') {
 	OCP\JSON::checkAdminUser();
 	$isPersonal = false;
 }
+
 OC_Mount_Config::removeMountPoint($_POST['mountPoint'], $_POST['mountType'], $_POST['applicable'], $isPersonal);
diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php
index c58cfcd0f5e65927e3b5c4f919f5a4a6f993d199..d976c0175232bfe3364f84cca636a40a708765d1 100644
--- a/apps/files_external/appinfo/app.php
+++ b/apps/files_external/appinfo/app.php
@@ -14,6 +14,7 @@ OC::$CLASSPATH['OC\Files\Storage\SWIFT']='apps/files_external/lib/swift.php';
 OC::$CLASSPATH['OC\Files\Storage\SMB']='apps/files_external/lib/smb.php';
 OC::$CLASSPATH['OC\Files\Storage\AmazonS3']='apps/files_external/lib/amazons3.php';
 OC::$CLASSPATH['OC\Files\Storage\Dropbox']='apps/files_external/lib/dropbox.php';
+OC::$CLASSPATH['OC\Files\Storage\SFTP']='apps/files_external/lib/sftp.php';
 OC::$CLASSPATH['OC_Mount_Config']='apps/files_external/lib/config.php';
 
 OCP\App::registerAdmin('files_external', 'settings');
diff --git a/apps/files_external/js/settings.js b/apps/files_external/js/settings.js
index 172ef097fbfb00e6dd145dd8d0ad6930780355af..126903952704c9ae0e83908c98dca0f5e83fe126 100644
--- a/apps/files_external/js/settings.js
+++ b/apps/files_external/js/settings.js
@@ -47,7 +47,7 @@ OC.MountConfig={
 							oldUsers.splice($.inArray(applicable, oldUsers), 1);
 						}
 					}
-					$.post(OC.filePath('files_external', 'ajax', 'addMountPoint.php'), { mountPoint: mountPoint, class: backendClass, classOptions: classOptions, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
+					$.post(OC.filePath('files_external', 'ajax', 'addMountPoint.php'), { mountPoint: mountPoint, 'class': backendClass, classOptions: classOptions, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
 				});
 				var mountType = 'group';
 				$.each(oldGroups, function(index, applicable) {
@@ -61,7 +61,7 @@ OC.MountConfig={
 				var isPersonal = true;
 				var mountType = 'user';
 				var applicable = OC.currentUser;
-				$.post(OC.filePath('files_external', 'ajax', 'addMountPoint.php'), { mountPoint: mountPoint, class: backendClass, classOptions: classOptions, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
+				$.post(OC.filePath('files_external', 'ajax', 'addMountPoint.php'), { mountPoint: mountPoint, 'class': backendClass, classOptions: classOptions, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
 			}
 			return true;
 		}
diff --git a/apps/files_external/l10n/fi_FI.php b/apps/files_external/l10n/fi_FI.php
index 8c7381db71d822e5789bf3fa0ff436ec9ef9e56b..120c190790b37c92ef3e25a0a77e310cb3ca5c9c 100644
--- a/apps/files_external/l10n/fi_FI.php
+++ b/apps/files_external/l10n/fi_FI.php
@@ -3,6 +3,7 @@
 "Error configuring Dropbox storage" => "Virhe Dropbox levyn asetuksia tehtäessä",
 "Grant access" => "Salli pääsy",
 "Fill out all required fields" => "Täytä kaikki vaaditut kentät",
+"Please provide a valid Dropbox app key and secret." => "Anna kelvollinen Dropbox-sovellusavain ja salainen vastaus.",
 "Error configuring Google Drive storage" => "Virhe Google Drive levyn asetuksia tehtäessä",
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>Varoitus:</b> \"smbclient\" ei ole asennettuna. CIFS-/SMB-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan smbclient.",
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "<b>Varoitus:</b> PHP:n FTP-tuki ei ole käytössä tai sitä ei ole asennettu. FTP-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää ottamaan FTP-tuki käyttöön.",
diff --git a/apps/files_external/l10n/hi.php b/apps/files_external/l10n/hi.php
new file mode 100644
index 0000000000000000000000000000000000000000..0482efc4b23d20d9675fd371d1f1d8fc8a55e4a5
--- /dev/null
+++ b/apps/files_external/l10n/hi.php
@@ -0,0 +1,3 @@
+<?php $TRANSLATIONS = array(
+"Users" => "उपयोगकर्ता"
+);
diff --git a/apps/files_external/l10n/sk_SK.php b/apps/files_external/l10n/sk_SK.php
index 0b6878a5427c30a89380938caf0cdea75c0419a2..d464d192ffca90737a17fa1a0e8064ccbe62e156 100644
--- a/apps/files_external/l10n/sk_SK.php
+++ b/apps/files_external/l10n/sk_SK.php
@@ -15,12 +15,12 @@
 "Applicable" => "Aplikovateľné",
 "Add mount point" => "Pridať prípojný bod",
 "None set" => "Žiadne nastavené",
-"All Users" => "Všetci užívatelia",
+"All Users" => "Všetci používatelia",
 "Groups" => "Skupiny",
-"Users" => "Užívatelia",
+"Users" => "Používatelia",
 "Delete" => "Odstrániť",
 "Enable User External Storage" => "Povoliť externé úložisko",
-"Allow users to mount their own external storage" => "Povoliť užívateľom pripojiť ich vlastné externé úložisko",
+"Allow users to mount their own external storage" => "Povoliť používateľom pripojiť ich vlastné externé úložisko",
 "SSL root certificates" => "Koreňové SSL certifikáty",
 "Import Root Certificate" => "Importovať koreňový certifikát"
 );
diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php
index 6b0df21461baee69a745f68940475dd0c1d41f65..44e668a09c012adb52ec65046bec26210f282902 100755
--- a/apps/files_external/lib/config.php
+++ b/apps/files_external/lib/config.php
@@ -104,6 +104,14 @@ class OC_Mount_Config {
 				'password' => '*Password',
 				'root' => '&Root',
 				'secure' => '!Secure https://'));
+				
+		$backends['\OC\Files\Storage\SFTP']=array(
+			'backend' => 'SFTP',
+			'configuration' => array(
+				'host' => 'URL',
+				'user' => 'Username', 
+				'password' => '*Password', 
+				'root' => '&Root'));
 
 		return($backends);
 	}
@@ -302,7 +310,7 @@ class OC_Mount_Config {
 			foreach ($data[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
 				$content .= "\t\t'".$group."' => array (\n";
 				foreach ($mounts as $mountPoint => $mount) {
-					$content .= "\t\t\t'".addcslashes($mountPoint,"'")."' => ".str_replace("\n", '', var_export($mount, true)).", \n";
+					$content .= "\t\t\t'".addcslashes($mountPoint, "'")."' => ".str_replace("\n", '', var_export($mount, true)).", \n";
 
 				}
 				$content .= "\t\t),\n";
@@ -314,7 +322,7 @@ class OC_Mount_Config {
 			foreach ($data[self::MOUNT_TYPE_USER] as $user => $mounts) {
 				$content .= "\t\t'".$user."' => array (\n";
 				foreach ($mounts as $mountPoint => $mount) {
-					$content .= "\t\t\t'".addcslashes($mountPoint,"'")."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
+					$content .= "\t\t\t'".addcslashes($mountPoint, "'")."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
 				}
 				$content .= "\t\t),\n";
 			}
@@ -386,7 +394,7 @@ class OC_Mount_Config {
 	}
 
 	/**
-	 * check if php-ftp is installed
+	 * check if php-ftp is installed 
 	 */
 	public static function checkphpftp() {
 		if(function_exists('ftp_login')) {
diff --git a/apps/files_external/lib/ftp.php b/apps/files_external/lib/ftp.php
index 9a27b63323af79a9a4b51eed27c40ea16db1bff9..9b6c037bb57e6c6a766466a7a61787d5e04dc6ba 100644
--- a/apps/files_external/lib/ftp.php
+++ b/apps/files_external/lib/ftp.php
@@ -68,7 +68,7 @@ class FTP extends \OC\Files\Storage\StreamWrapper{
 			case 'ab':
 				//these are supported by the wrapper
 				$context = stream_context_create(array('ftp' => array('overwrite' => true)));
-				return fopen($this->constructUrl($path),$mode, false,$context);
+				return fopen($this->constructUrl($path), $mode, false, $context);
 			case 'r+':
 			case 'w+':
 			case 'wb+':
@@ -89,7 +89,7 @@ class FTP extends \OC\Files\Storage\StreamWrapper{
 					$this->getFile($path, $tmpFile);
 				}
 				self::$tempFiles[$tmpFile]=$path;
-				return fopen('close://'.$tmpFile,$mode);
+				return fopen('close://'.$tmpFile, $mode);
 		}
 		return false;
 	}
diff --git a/apps/files_external/lib/sftp.php b/apps/files_external/lib/sftp.php
new file mode 100644
index 0000000000000000000000000000000000000000..551a5a64ef2f6e32347c32f28d59f54683ce9523
--- /dev/null
+++ b/apps/files_external/lib/sftp.php
@@ -0,0 +1,291 @@
+<?php
+/**
+ * Copyright (c) 2012 Henrik Kjölhede <hkjolhede@gmail.com>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+namespace OC\Files\Storage;
+
+set_include_path(get_include_path() . PATH_SEPARATOR . \OC_App::getAppPath('files_external') . '/3rdparty/phpseclib/phpseclib');
+require('Net/SFTP.php');
+
+class SFTP extends \OC\Files\Storage\Common {
+	private $host;
+	private $user;
+	private $password;
+	private $root;
+
+	private $client;
+
+	private static $tempFiles = array();
+
+	public function __construct($params) {
+		$this->host = $params['host'];
+		$proto = strpos($this->host, '://');
+		if ($proto != false) {
+			$this->host = substr($this->host, $proto+3);
+		}
+		$this->user = $params['user'];
+		$this->password = $params['password'];
+		$this->root = isset($params['root']) ? $this->cleanPath($params['root']) : '/';
+		if ($this->root[0] != '/') $this->root = '/' . $this->root;
+		if (substr($this->root, -1, 1) != '/') $this->root .= '/';
+		
+		$host_keys = $this->read_host_keys();
+
+		$this->client = new \Net_SFTP($this->host);
+		if (!$this->client->login($this->user, $this->password)) {
+			throw new \Exception('Login failed');
+		}
+
+		$current_host_key = $this->client->getServerPublicHostKey();
+
+		if (array_key_exists($this->host, $host_keys)) {
+			if ($host_keys[$this->host] != $current_host_key) {
+				throw new \Exception('Host public key does not match known key');
+			}
+		} else {
+			$host_keys[$this->host] = $current_host_key;
+			$this->write_host_keys($host_keys);
+		}
+		
+		if(!$this->file_exists('')){
+			$this->mkdir('');
+		}
+	}
+	
+	public function test() {
+		if (!isset($params['host']) || !isset($params['user']) || !isset($params['password'])) {
+			throw new \Exception("Required parameters not set");
+		}	
+	}
+	
+	public function getId(){
+		return 'sftp::' . $this->user . '@' . $this->host . '/' . $this->root;
+	}
+
+	private function abs_path($path) {
+		return $this->root . $this->cleanPath($path);
+	}
+
+	private function host_keys_path() {
+		try {
+			$storage_view = \OCP\Files::getStorage('files_external');
+			if ($storage_view) {
+				return \OCP\Config::getSystemValue('datadirectory') .
+					$storage_view->getAbsolutePath('') .
+					'ssh_host_keys';
+			}
+		} catch (\Exception $e) {
+		}
+		return false;
+	}
+
+	private function write_host_keys($keys) {
+		try {
+			$key_path = $this->host_keys_path();
+			$fp = fopen($key_path, 'w');
+			foreach ($keys as $host => $key) {
+				fwrite($fp, $host . '::' . $key . "\n");
+			}
+			fclose($fp);
+			return true;
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	private function read_host_keys() {
+		try {
+			$key_path = $this->host_keys_path();
+			if (file_exists($key_path)) {
+				$hosts = array();
+				$keys = array();
+				$lines = file($key_path, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
+				if ($lines) {
+					foreach ($lines as $line) {
+						$host_key_arr = explode("::", $line, 2);
+						if (count($host_key_arr) == 2) {
+							$hosts[] = $host_key_arr[0];
+							$keys[] = $host_key_arr[1]; 
+						}
+					}
+					return array_combine($hosts, $keys);
+				}
+			}
+		} catch (\Exception $e) {
+		}
+		return array();
+	}
+
+	public function mkdir($path) {
+		try {
+			return $this->client->mkdir($this->abs_path($path));
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	public function rmdir($path) {
+		try {
+			return $this->client->delete($this->abs_path($path), true);
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	public function opendir($path) {
+		try {
+			$list = $this->client->nlist($this->abs_path($path));
+
+			$id = md5('sftp:' . $path);
+			$dir_stream = array();
+			foreach($list as $file) {
+				if ($file != '.' && $file != '..') {
+					$dir_stream[] = $file;
+				}
+			}
+			\OC\Files\Stream\Dir::register($id, $dir_stream);
+			return opendir('fakedir://' . $id);
+		} catch(\Exception $e) {
+			return false;
+		}
+	}
+
+	public function filetype($path) {
+		try {
+			$stat = $this->client->stat($this->abs_path($path));
+			if ($stat['type'] == NET_SFTP_TYPE_REGULAR) return 'file';
+			if ($stat['type'] == NET_SFTP_TYPE_DIRECTORY) return 'dir';
+		} catch (\Exeption $e) {
+		}
+		return false;
+	}
+
+	public function isReadable($path) {
+		return true;
+	}
+
+	public function isUpdatable($path) {
+		return true;
+	}
+
+	public function file_exists($path) {
+		try {
+			return $this->client->stat($this->abs_path($path)) === false ? false : true;
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	public function unlink($path) {
+		try {
+			return $this->client->delete($this->abs_path($path), true);
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	public function fopen($path, $mode) {
+		try {
+			$abs_path = $this->abs_path($path);
+			switch($mode) {
+				case 'r':
+				case 'rb':
+					if ( !$this->file_exists($path)) return false;
+					if (strrpos($path, '.')!==false) {
+						$ext=substr($path, strrpos($path, '.'));
+					} else {
+						$ext='';
+					}
+					$tmp = \OC_Helper::tmpFile($ext);
+					$this->getFile($abs_path, $tmp);
+					return fopen($tmp, $mode);
+		
+				case 'w':
+				case 'wb':
+				case 'a':
+				case 'ab':
+				case 'r+':
+				case 'w+':
+				case 'wb+':
+				case 'a+':
+				case 'x':
+				case 'x+':
+				case 'c':
+				case 'c+':
+					if (strrpos($path, '.')!==false) {
+						$ext=substr($path, strrpos($path, '.'));
+					} else {
+						$ext='';
+					}
+					$tmpFile=\OC_Helper::tmpFile($ext);
+					\OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
+					if ($this->file_exists($path)) {
+						$this->getFile($abs_path, $tmpFile);
+					}
+					self::$tempFiles[$tmpFile]=$abs_path;
+					return fopen('close://'.$tmpFile, $mode);
+			}
+		} catch (\Exception $e) {
+		}
+		return false;
+	}
+
+	public function writeBack($tmpFile) {
+		if (array_key_exists($tmpFile, self::$tempFiles)) {
+			$this->uploadFile($tmpFile, self::$tempFiles[$tmpFile]);
+			unlink($tmpFile);
+			unset(self::$tempFiles[$tmpFile]);
+		}
+	}
+
+	public function free_space($path) {
+		return -1;
+	}
+
+	public function touch($path, $mtime=null) {
+		try {
+			if (!is_null($mtime)) return false;
+			if (!$this->file_exists($path)) {
+				$this->client->put($this->abs_path($path), '');
+			} else {
+				return false;
+			}
+		} catch (\Exception $e) {
+			return false;
+		}
+		return true;
+	}
+
+	public function getFile($path, $target) {
+		$this->client->get($path, $target);
+	}
+
+	public function uploadFile($path, $target) {
+		$this->client->put($target, $path, NET_SFTP_LOCAL_FILE);
+	}
+
+	public function rename($source, $target) {
+		try {
+			return $this->client->rename($this->abs_path($source), $this->abs_path($target));
+		} catch (\Exception $e) {
+			return false;
+		}
+	}
+
+	public function stat($path) {
+		try {
+			$stat = $this->client->stat($this->abs_path($path));
+
+			$mtime = $stat ? $stat['mtime'] : -1;
+			$size = $stat ? $stat['size'] : 0;
+
+			return array('mtime' => $mtime, 'size' => $size, 'ctime' => -1);
+		} catch (\Exception $e) {
+			return false;
+		}
+
+	}
+}
diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php
index 96778b0b2e1c30a8ba79d829ac4970536f9af133..62f6591d25a5dcf4b7b096f57d21aed59f1c6fd9 100644
--- a/apps/files_external/lib/smb.php
+++ b/apps/files_external/lib/smb.php
@@ -33,7 +33,7 @@ class SMB extends \OC\Files\Storage\StreamWrapper{
 			$this->share='/'.$this->share;
 		}
 		if(substr($this->share, -1, 1)=='/') {
-			$this->share = substr($this->share,0,-1);
+			$this->share = substr($this->share, 0, -1);
 		}
 	}
 
@@ -45,7 +45,10 @@ class SMB extends \OC\Files\Storage\StreamWrapper{
 		if (substr($path, -1)=='/') {
 			$path=substr($path, 0, -1);
 		}
-		return 'smb://'.$this->user.':'.$this->password.'@'.$this->host.$this->share.$this->root.$path;
+		$path = urlencode($path);
+		$user = urlencode($this->user);
+		$pass = urlencode($this->password);
+		return 'smb://'.$user.':'.$pass.'@'.$this->host.$this->share.$this->root.$path;
 	}
 
 	public function stat($path) {
@@ -59,11 +62,6 @@ class SMB extends \OC\Files\Storage\StreamWrapper{
 		}
 	}
 
-	public function filetype($path) {
-		// using opendir causes the same amount of requests and caches the content of the folder in one go
-		return (bool)@$this->opendir($path) ? 'dir' : 'file';
-	}
-
 	/**
 	 * check if a file or folder has been updated since $time
 	 * @param string $path
diff --git a/apps/files_external/lib/streamwrapper.php b/apps/files_external/lib/streamwrapper.php
index 7c3ddcf8a2c2220f67a4302a932d59df25b49d21..a631e7ce06aafbb1c7369135cbe42484b741c5b3 100644
--- a/apps/files_external/lib/streamwrapper.php
+++ b/apps/files_external/lib/streamwrapper.php
@@ -12,7 +12,7 @@ abstract class StreamWrapper extends \OC\Files\Storage\Common{
 	private $ready = false;
 
 	protected function init(){
-		if($this->ready){
+		if($this->ready) {
 			return;
 		}
 		$this->ready = true;
@@ -71,39 +71,39 @@ abstract class StreamWrapper extends \OC\Files\Storage\Common{
 		return $succes;
 	}
 
-	public function fopen($path,$mode) {
+	public function fopen($path, $mode) {
 		$this->init();
-		return fopen($this->constructUrl($path),$mode);
+		return fopen($this->constructUrl($path), $mode);
 	}
 
 	public function free_space($path) {
 		return 0;
 	}
 
-	public function touch($path,$mtime=null) {
+	public function touch($path, $mtime=null) {
 		$this->init();
 		if(is_null($mtime)) {
-			$fh = $this->fopen($path,'a');
-			fwrite($fh,'');
+			$fh = $this->fopen($path, 'a');
+			fwrite($fh, '');
 			fclose($fh);
 		} else {
 			return false;//not supported
 		}
 	}
 
-	public function getFile($path,$target) {
+	public function getFile($path, $target) {
 		$this->init();
-		return copy($this->constructUrl($path),$target);
+		return copy($this->constructUrl($path), $target);
 	}
 
-	public function uploadFile($path,$target) {
+	public function uploadFile($path, $target) {
 		$this->init();
-		return copy($path,$this->constructUrl($target));
+		return copy($path, $this->constructUrl($target));
 	}
 
-	public function rename($path1,$path2) {
+	public function rename($path1, $path2) {
 		$this->init();
-		return rename($this->constructUrl($path1),$this->constructUrl($path2));
+		return rename($this->constructUrl($path1), $this->constructUrl($path2));
 	}
 
 	public function stat($path) {
diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php
index cbf2007052bdafa9009a63ce15c9de9f9b4db679..0fd6fa143b816dff602231767ae57fe7b2e51cd1 100644
--- a/apps/files_external/lib/swift.php
+++ b/apps/files_external/lib/swift.php
@@ -210,7 +210,7 @@ class SWIFT extends \OC\Files\Storage\Common{
 				return false;
 			} else {
 				$fh=fopen($tmpFile, 'a');
-				fwrite($fh,$name . "\n");
+				fwrite($fh, $name . "\n");
 			}
 		} catch(\Exception $e) {
 			file_put_contents($tmpFile, $name . "\n");
@@ -290,7 +290,7 @@ class SWIFT extends \OC\Files\Storage\Common{
 	}
 
 	private function init(){
-		if($this->ready){
+		if($this->ready) {
 			return;
 		}
 		$this->ready = true;
diff --git a/apps/files_external/lib/webdav.php b/apps/files_external/lib/webdav.php
index 2a953ac63f45756f11bbe1d55c96e0a195c49ed0..039a07b1ef2a9b4a9229ddc59fb9c61a12e1cd9a 100644
--- a/apps/files_external/lib/webdav.php
+++ b/apps/files_external/lib/webdav.php
@@ -49,7 +49,7 @@ class DAV extends \OC\Files\Storage\Common{
 	}
 
 	private function init(){
-		if($this->ready){
+		if($this->ready) {
 			return;
 		}
 		$this->ready = true;
@@ -153,10 +153,10 @@ class DAV extends \OC\Files\Storage\Common{
 
 	public function unlink($path) {
 		$this->init();
-		return $this->simpleResponse('DELETE', $path, null ,204);
+		return $this->simpleResponse('DELETE', $path, null, 204);
 	}
 
-	public function fopen($path,$mode) {
+	public function fopen($path, $mode) {
 		$this->init();
 		$path=$this->cleanPath($path);
 		switch($mode) {
@@ -235,13 +235,13 @@ class DAV extends \OC\Files\Storage\Common{
 		$this->client->proppatch($path, array('{DAV:}lastmodified' => $mtime));
 	}
 
-	public function getFile($path,$target) {
+	public function getFile($path, $target) {
 		$this->init();
-		$source=$this->fopen($path,'r');
-		file_put_contents($target,$source);
+		$source=$this->fopen($path, 'r');
+		file_put_contents($target, $source);
 	}
 
-	public function uploadFile($path,$target) {
+	public function uploadFile($path, $target) {
 		$this->init();
 		$source=fopen($path, 'r');
 
@@ -256,7 +256,7 @@ class DAV extends \OC\Files\Storage\Common{
 		curl_close ($curl);
 	}
 
-	public function rename($path1,$path2) {
+	public function rename($path1, $path2) {
 		$this->init();
 		$path1=$this->cleanPath($path1);
 		$path2=$this->root.$this->cleanPath($path2);
@@ -268,7 +268,7 @@ class DAV extends \OC\Files\Storage\Common{
 		}
 	}
 
-	public function copy($path1,$path2) {
+	public function copy($path1, $path2) {
 		$this->init();
 		$path1=$this->cleanPath($path1);
 		$path2=$this->root.$this->cleanPath($path2);
@@ -321,7 +321,7 @@ class DAV extends \OC\Files\Storage\Common{
 		}
 	}
 
-	private function simpleResponse($method,$path,$body,$expected) {
+	private function simpleResponse($method, $path, $body, $expected) {
 		$path=$this->cleanPath($path);
 		try {
 			$response=$this->client->request($method, $path, $body);
diff --git a/apps/files_external/templates/settings.php b/apps/files_external/templates/settings.php
index 78ca1c87feefa3f1b22648bc4484fbfbb7ad2c6b..df8d7d6e2b5f441b0b9201d413ed0d1324311354 100644
--- a/apps/files_external/templates/settings.php
+++ b/apps/files_external/templates/settings.php
@@ -83,7 +83,7 @@
 							<select class="chzn-select"
 									multiple style="width:20em;"
 									data-placeholder="<?php echo $l->t('None set'); ?>">
-								<option value="all"><?php echo $l->t('All Users'); ?></option>
+								<option value="all" <?php if (isset($mount['applicable']['users']) && in_array('all', $mount['applicable']['users'])) echo 'selected="selected"';?> ><?php echo $l->t('All Users'); ?></option>
 								<optgroup label="<?php echo $l->t('Groups'); ?>">
 								<?php foreach ($_['groups'] as $group): ?>
 									<option value="<?php echo $group; ?>(group)"
diff --git a/apps/files_external/tests/config.php b/apps/files_external/tests/config.php
index ff16b1c1d8a40bde6d3afa0f43ff45c90f3d2ab8..1d4f30c713dd00e098172da16be1a81453f0754f 100644
--- a/apps/files_external/tests/config.php
+++ b/apps/files_external/tests/config.php
@@ -51,5 +51,12 @@ return array(
 		'app_secret' => '',
 		'token' => '',
 		'token_secret' => ''
+	),
+	'sftp' => array (
+		'run'=>false,
+		'host'=>'localhost',
+		'user'=>'test',
+		'password'=>'test',
+		'root'=>'/test'
 	)
 );
diff --git a/apps/files_external/tests/sftp.php b/apps/files_external/tests/sftp.php
new file mode 100644
index 0000000000000000000000000000000000000000..16964e208781c34b4d8ecce4d90230496b51c2fe
--- /dev/null
+++ b/apps/files_external/tests/sftp.php
@@ -0,0 +1,43 @@
+<?php
+
+/**
+ * ownCloud
+ *
+ * @author Henrik Kjölhede
+ * @copyright 2013 Henrik Kjölhede hkjolhede@gmail.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+namespace Test\Files\Storage;
+
+class SFTP extends Storage {
+	private $config;
+
+	public function setUp() {
+		$id = uniqid();
+		$this->config = include('files_external/tests/config.php');
+		if ( ! is_array($this->config) or ! isset($this->config['sftp']) or ! $this->config['sftp']['run']) {
+			$this->markTestSkipped('SFTP backend not configured');
+		}
+		$this->config['sftp']['root'] .= '/' . $id; //make sure we have an new empty folder to work in
+		$this->instance = new \OC\Files\Storage\SFTP($this->config['sftp']);
+	}
+
+	public function tearDown() {
+		if ($this->instance) {
+			$this->instance->rmdir('/');
+		}
+	}
+}
\ No newline at end of file
diff --git a/apps/files_sharing/css/public.css b/apps/files_sharing/css/public.css
index 492014344f7318f6bba9f77e4ffb6c686cdd6199..13f42b130df5f48ad1211c8dbeb52b90ce5d06c9 100644
--- a/apps/files_sharing/css/public.css
+++ b/apps/files_sharing/css/public.css
@@ -34,9 +34,8 @@ body {
 	background:#eee;
 	border-bottom:1px solid #f8f8f8;
 	min-height:30em;
-	padding-top:2em;
 	text-align:center;
-	margin:50px auto;
+	margin:45px auto;
 }
 
 #noPreview {
@@ -60,6 +59,7 @@ p.info a {
 #imgframe {
 	height:75%;
 	padding-bottom:2em;
+	padding-top:2em;
 	width:80%;
 	margin:0 auto;
 }
@@ -67,4 +67,8 @@ p.info a {
 #imgframe img {
 	max-height:100%;
 	max-width:100%;
-}
\ No newline at end of file
+}
+
+thead{
+	background-color: white;
+}
diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php
index ea28ca69b9355cf028f53cd856b406e95747ccc8..65812b7e2fdeeb2b579f941688d359b9cfe8860c 100644
--- a/apps/files_sharing/lib/sharedstorage.php
+++ b/apps/files_sharing/lib/sharedstorage.php
@@ -390,7 +390,7 @@ class Shared extends \OC\Files\Storage\Common {
 	}
 
 	public static function setup($options) {
-		if (\OCP\Share::getItemsSharedWith('file')) {
+		if (!\OCP\User::isLoggedIn() || \OCP\User::getUser() != $options['user'] || \OCP\Share::getItemsSharedWith('file')) {
 			$user_dir = $options['user_dir'];
 			\OC\Files\Filesystem::mount('\OC\Files\Storage\Shared', array('sharedFolder' => '/Shared'), $user_dir.'/Shared/');
 		}
diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php
index a3e0ec192afab690188b151ffdbb81fa9fa9c2e1..38d598f7780849e06ed14d8da0819b730a1c52a1 100644
--- a/apps/files_sharing/public.php
+++ b/apps/files_sharing/public.php
@@ -1,67 +1,18 @@
 <?php
+$RUNTIME_NOSETUPFS = true;
 // Load other apps for file previews
 OC_App::loadApps();
 
-// Compatibility with shared-by-link items from ownCloud 4.0
-// requires old Sharing table !
-// support will be removed in OC 5.0,a
-if (isset($_GET['token'])) {
-	unset($_GET['file']);
-	$qry = \OC_DB::prepare('SELECT `source` FROM `*PREFIX*sharing` WHERE `target` = ?', 1);
-	$filepath = $qry->execute(array($_GET['token']))->fetchOne();
-	if (isset($filepath)) {
-		$rootView = new \OC\Files\View('');
-		$info = $rootView->getFileInfo($filepath, '');
-		if (strtolower($info['mimetype']) == 'httpd/unix-directory') {
-			$_GET['dir'] = $filepath;
-		} else {
-			$_GET['file'] = $filepath;
-		}
-		\OCP\Util::writeLog('files_sharing', 'You have files that are shared by link originating from ownCloud 4.0.'
-				.' Redistribute the new links, because backwards compatibility will be removed in ownCloud 5.',
-				\OCP\Util::WARN);
-	}
-}
-
-function getID($path) {
-	// use the share table from the db to find the item source if the file was reshared because shared files
-	//are not stored in the file cache.
-	if (substr(\OC\Files\Filesystem::getMountPoint($path), -7, 6) == "Shared") {
-		$path_parts = explode('/', $path, 5);
-		$user = $path_parts[1];
-		$intPath = '/'.$path_parts[4];
-		$query = \OC_DB::prepare('SELECT `item_source`'
-								.' FROM `*PREFIX*share`'
-								.' WHERE `uid_owner` = ?'
-								.' AND `file_target` = ? ');
-		$result = $query->execute(array($user, $intPath));
-		$row = $result->fetchRow();
-		$fileSource = $row['item_source'];
+function fileCmp($a, $b) {
+	if ($a['type'] == 'dir' and $b['type'] != 'dir') {
+		return -1;
+	} elseif ($a['type'] != 'dir' and $b['type'] == 'dir') {
+		return 1;
 	} else {
-		$rootView = new \OC\Files\View('');
-		$meta = $rootView->getFileInfo($path);
-		$fileSource = $meta['fileid'];
+		return strnatcasecmp($a['name'], $b['name']);
 	}
-
-	return $fileSource;
-}
-
-// Enf of backward compatibility
-
-/**
- * lookup file path and owner by fetching it from the fscache
- * needed because OC_FileCache::getPath($id, $user) already requires the user
- * @param int $id
- * @return array
- */
-function getPathAndUser($id) {
-	$query = \OC_DB::prepare('SELECT `user`, `path` FROM `*PREFIX*fscache` WHERE `id` = ?');
-	$result = $query->execute(array($id));
-	$row = $result->fetchRow();
-	return $row;
 }
 
-
 if (isset($_GET['t'])) {
 	$token = $_GET['t'];
 	$linkItem = OCP\Share::getShareByToken($token);
@@ -70,61 +21,30 @@ if (isset($_GET['t'])) {
 		$type = $linkItem['item_type'];
 		$fileSource = $linkItem['file_source'];
 		$shareOwner = $linkItem['uid_owner'];
-
-		if (OCP\User::userExists($shareOwner) && $fileSource != -1 ) {
-
-			$pathAndUser = getPathAndUser($linkItem['file_source']);
-			$fileOwner = $pathAndUser['user'];
-
-			//if this is a reshare check the file owner also exists
-			if ($shareOwner != $fileOwner && ! OCP\User::userExists($fileOwner)) {
-					OCP\Util::writeLog('share', 'original file owner '.$fileOwner
-											   .' does not exist for share '.$linkItem['id'], \OCP\Util::ERROR);
-					header('HTTP/1.0 404 Not Found');
-					$tmpl = new OCP\Template('', '404', 'guest');
-					$tmpl->printPage();
-					exit();
-			}
-
-			//mount filesystem of file owner
-			OC_Util::setupFS($fileOwner);
-		}
-	}
-} else {
-	if (isset($_GET['file']) || isset($_GET['dir'])) {
-		OCP\Util::writeLog('share', 'Missing token, trying fallback file/dir links', \OCP\Util::DEBUG);
-		if (isset($_GET['dir'])) {
-			$type = 'folder';
-			$path = $_GET['dir'];
-			if (strlen($path) > 1 and substr($path, -1, 1) === '/') {
-				$path = substr($path, 0, -1);
+		$fileOwner = null;
+		$path = null;
+		if (isset($linkItem['parent'])) {
+			$parent = $linkItem['parent'];
+			while (isset($parent)) {
+				$query = \OC_DB::prepare('SELECT `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `id` = ?', 1);
+				$item = $query->execute(array($parent))->fetchRow();
+				if (isset($item['parent'])) {
+					$parent = $item['parent'];
+				} else {
+					$fileOwner = $item['uid_owner'];
+					break;
+				}
 			}
-			$baseDir = $path;
-			$dir = $baseDir;
 		} else {
-			$type = 'file';
-			$path = $_GET['file'];
-			if (strlen($path) > 1 and substr($path, -1, 1) === '/') {
-				$path = substr($path, 0, -1);
-			}
+			$fileOwner = $shareOwner;
 		}
-		$shareOwner = substr($path, 1, strpos($path, '/', 1) - 1);
-
-		if (OCP\User::userExists($shareOwner)) {
-			OC_Util::setupFS($shareOwner);
-			$fileSource = getId($path);
-			if ($fileSource != -1) {
-				$linkItem = OCP\Share::getItemSharedWithByLink($type, $fileSource, $shareOwner);
-				$pathAndUser['path'] = $path;
-				$path_parts = explode('/', $path, 5);
-				$pathAndUser['user'] = $path_parts[1];
-				$fileOwner = $path_parts[1];
-			}
+		if (isset($fileOwner)) {
+			OC_Util::setupFS($fileOwner);
+			$path = \OC\Files\Filesystem::getPath($linkItem['file_source']);
 		}
 	}
-}
-
-if ($linkItem) {
+} 
+if (isset($path)) {
 	if (!isset($linkItem['item_type'])) {
 		OCP\Util::writeLog('share', 'No item type set for share id: ' . $linkItem['id'], \OCP\Util::ERROR);
 		header('HTTP/1.0 404 Not Found');
@@ -181,36 +101,23 @@ if ($linkItem) {
 			}
 		}
 	}
-	$basePath = substr($pathAndUser['path'], strlen('/' . $fileOwner . '/files'));
-	$path = $basePath;
-	if (isset($_GET['path'])) {
-		$path .= $_GET['path'];
-	}
-	if (!$path || !\OC\Files\Filesystem::isValidPath($path) || !\OC\Files\Filesystem::file_exists($path)) {
-		OCP\Util::writeLog('share', 'Invalid path ' . $path . ' for share id ' . $linkItem['id'], \OCP\Util::ERROR);
-		header('HTTP/1.0 404 Not Found');
-		$tmpl = new OCP\Template('', '404', 'guest');
-		$tmpl->printPage();
-		exit();
+	$basePath = $path;
+	if (isset($_GET['path']) && \OC\Files\Filesystem::isReadable($basePath . $_GET['path'])) {
+		$getPath = \OC\Files\Filesystem::normalizePath($_GET['path']);
+		$path .= $getPath;
+	} else {
+		$getPath = '';
 	}
 	$dir = dirname($path);
 	$file = basename($path);
 	// Download the file
 	if (isset($_GET['download'])) {
-		if (isset($_GET['path']) && $_GET['path'] !== '') {
-			if (isset($_GET['files'])) { // download selected files
-				OC_Files::get($path, $_GET['files'], $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
-			} else {
-				if (isset($_GET['path']) && $_GET['path'] != '') { // download a file from a shared directory
-					OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
-				} else { // download the whole shared directory
-					OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
-				}
-			}
-		} else { // download a single shared file
+		if (isset($_GET['files'])) { // download selected files
+			OC_Files::get($path, $_GET['files'], $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
+		} else {
 			OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
 		}
-
+		exit();
 	} else {
 		OCP\Util::addStyle('files_sharing', 'public');
 		OCP\Util::addScript('files_sharing', 'public');
@@ -218,209 +125,86 @@ if ($linkItem) {
 		$tmpl = new OCP\Template('files_sharing', 'public', 'base');
 		$tmpl->assign('uidOwner', $shareOwner);
 		$tmpl->assign('displayName', \OCP\User::getDisplayName($shareOwner));
-		$tmpl->assign('dir', $dir);
 		$tmpl->assign('filename', $file);
 		$tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path));
-		if (isset($_GET['path'])) {
-			$getPath = $_GET['path'];
-		} else {
-			$getPath = '';
-		}
-		//
+		$tmpl->assign('fileTarget', basename($linkItem['file_target']));
 		$urlLinkIdentifiers= (isset($token)?'&t='.$token:'')
 							.(isset($_GET['dir'])?'&dir='.$_GET['dir']:'')
 							.(isset($_GET['file'])?'&file='.$_GET['file']:'');
 		// Show file list
 		if (\OC\Files\Filesystem::is_dir($path)) {
+			$tmpl->assign('dir', $getPath);
+
 			OCP\Util::addStyle('files', 'files');
 			OCP\Util::addScript('files', 'files');
 			OCP\Util::addScript('files', 'filelist');
 			OCP\Util::addscript('files', 'keyboardshortcuts');
 			$files = array();
 			$rootLength = strlen($basePath) + 1;
-			foreach (OC_Files::getDirectoryContent($path) as $i) {
+			foreach (\OC\Files\Filesystem::getDirectoryContent($path) as $i) {
 				$i['date'] = OCP\Util::formatDate($i['mtime']);
 				if ($i['type'] == 'file') {
 					$fileinfo = pathinfo($i['name']);
 					$i['basename'] = $fileinfo['filename'];
-					$i['extension'] = isset($fileinfo['extension']) ? ('.' . $fileinfo['extension']) : '';
-				}
-				$i['directory'] = '/' . substr($i['directory'], $rootLength);
-				if ($i['directory'] == '/') {
-					$i['directory'] = '';
+					if (!empty($fileinfo['extension'])) {
+						$i['extension'] = '.' . $fileinfo['extension'];
+					} else {
+						$i['extension'] = '';
+					}
 				}
+				$i['directory'] = $getPath;
 				$i['permissions'] = OCP\PERMISSION_READ;
 				$files[] = $i;
 			}
+			usort($files, "fileCmp");
+
 			// Make breadcrumb
 			$breadcrumb = array();
 			$pathtohere = '';
-
-			//add base breadcrumb
-			$breadcrumb[] = array('dir' => '/', 'name' => basename($basePath));
-
-			//add subdir breadcrumbs
-			foreach (explode('/', urldecode($getPath)) as $i) {
+			foreach (explode('/', $getPath) as $i) {
 				if ($i != '') {
 					$pathtohere .= '/' . $i;
 					$breadcrumb[] = array('dir' => $pathtohere, 'name' => $i);
-					$path = $linkItem['path'];
-					if (isset($_GET['path'])) {
-						$path .= $_GET['path'];
-						$dir .= $_GET['path'];
-						if (!\OC\Files\Filesystem::file_exists($path)) {
-							header('HTTP/1.0 404 Not Found');
-							$tmpl = new OCP\Template('', '404', 'guest');
-							$tmpl->printPage();
-							exit();
-						}
-					}
-
-					$list = new OCP\Template('files', 'part.list', '');
-					$list->assign('files', $files, false);
-					$list->assign('publicListView', true);
-					$list->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false);
-					$list->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=', false);
-					$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
-					$breadcrumbNav->assign('breadcrumb', $breadcrumb, false);
-					$breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false);
-					$folder = new OCP\Template('files', 'index', '');
-					$folder->assign('fileList', $list->fetchPage(), false);
-					$folder->assign('breadcrumb', $breadcrumbNav->fetchPage(), false);
-					$folder->assign('isCreatable', false);
-					$folder->assign('permissions', 0);
-					$folder->assign('files', $files);
-					$folder->assign('uploadMaxFilesize', 0);
-					$folder->assign('uploadMaxHumanFilesize', 0);
-					$folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
-					$tmpl->assign('folder', $folder->fetchPage(), false);
-					$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
-					$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=' . urlencode($getPath));
-				} else {
-					// Show file preview if viewer is available
-					if ($type == 'file') {
-						$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download');
-					} else {
-						OCP\Util::addStyle('files_sharing', 'public');
-						OCP\Util::addScript('files_sharing', 'public');
-						OCP\Util::addScript('files', 'fileactions');
-						$tmpl = new OCP\Template('files_sharing', 'public', 'base');
-						$tmpl->assign('owner', $uidOwner);
-						// Show file list
-						if (\OC\Files\Filesystem::is_dir($path)) {
-							OCP\Util::addStyle('files', 'files');
-							OCP\Util::addScript('files', 'files');
-							OCP\Util::addScript('files', 'filelist');
-							$files = array();
-							$rootLength = strlen($baseDir) + 1;
-							foreach (OC_Files::getDirectoryContent($path) as $i) {
-								$i['date'] = OCP\Util::formatDate($i['mtime']);
-								if ($i['type'] == 'file') {
-									$fileinfo = pathinfo($i['name']);
-									$i['basename'] = $fileinfo['filename'];
-									$i['extension'] = isset($fileinfo['extension']) ? ('.' . $fileinfo['extension']) : '';
-								}
-								$i['directory'] = '/' . substr('/' . $uidOwner . '/files' . $i['directory'], $rootLength);
-								if ($i['directory'] == '/') {
-									$i['directory'] = '';
-								}
-								$i['permissions'] = OCP\PERMISSION_READ;
-								$files[] = $i;
-							}
-							// Make breadcrumb
-							$breadcrumb = array();
-							$pathtohere = '';
-							$count = 1;
-							foreach (explode('/', $dir) as $i) {
-								if ($i != '') {
-									if ($i != $baseDir) {
-										$pathtohere .= '/' . $i;
-									}
-									if (strlen($pathtohere) < strlen($_GET['dir'])) {
-										continue;
-									}
-									$breadcrumb[] = array('dir' => str_replace($_GET['dir'], "", $pathtohere, $count), 'name' => $i);
-								}
-							}
-							$list = new OCP\Template('files', 'part.list', '');
-							$list->assign('files', $files, false);
-							$list->assign('publicListView', true);
-							$list->assign('baseURL', OCP\Util::linkToPublic('files') . '&dir=' . urlencode($_GET['dir']) . '&path=', false);
-							$list->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=', false);
-							$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
-							$breadcrumbNav->assign('breadcrumb', $breadcrumb, false);
-							$breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . '&dir=' . urlencode($_GET['dir']) . '&path=', false);
-							$folder = new OCP\Template('files', 'index', '');
-							$folder->assign('fileList', $list->fetchPage(), false);
-							$folder->assign('breadcrumb', $breadcrumbNav->fetchPage(), false);
-							$folder->assign('dir', basename($dir));
-							$folder->assign('isCreatable', false);
-							$folder->assign('permissions', 0);
-							$folder->assign('files', $files);
-							$folder->assign('uploadMaxFilesize', 0);
-							$folder->assign('uploadMaxHumanFilesize', 0);
-							$folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
-							$tmpl->assign('folder', $folder->fetchPage(), false);
-							$tmpl->assign('uidOwner', $uidOwner);
-							$tmpl->assign('dir', basename($dir));
-							$tmpl->assign('filename', basename($path));
-							$tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path));
-							$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
-							if (isset($_GET['path'])) {
-								$getPath = $_GET['path'];
-							} else {
-								$getPath = '';
-							}
-							$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=' . urlencode($getPath), false);
-						} else {
-							// Show file preview if viewer is available
-							$tmpl->assign('uidOwner', $uidOwner);
-							$tmpl->assign('dir', dirname($path));
-							$tmpl->assign('filename', basename($path));
-							$tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path));
-							if ($type == 'file') {
-								$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&file=' . urlencode($_GET['file']) . '&download', false);
-							} else {
-								if (isset($_GET['path'])) {
-									$getPath = $_GET['path'];
-								} else {
-									$getPath = '';
-								}
-								$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=' . urlencode($getPath), false);
-							}
-						}
-						$tmpl->printPage();
-					}
 				}
-				$tmpl->printPage();
 			}
-
 			$list = new OCP\Template('files', 'part.list', '');
 			$list->assign('files', $files, false);
 			$list->assign('disableSharing', true);
-			$list->assign('baseURL', OCP\Util::linkToPublic('files').$urlLinkIdentifiers.'&path=', false);
-			$list->assign('downloadURL', OCP\Util::linkToPublic('files').$urlLinkIdentifiers.'&download&path=', false);
-			$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '' );
+			$list->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false);
+			$list->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=', false);
+			$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
 			$breadcrumbNav->assign('breadcrumb', $breadcrumb, false);
-			$breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files').$urlLinkIdentifiers.'&path=', false);
+			$breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false);
 			$folder = new OCP\Template('files', 'index', '');
 			$folder->assign('fileList', $list->fetchPage(), false);
 			$folder->assign('breadcrumb', $breadcrumbNav->fetchPage(), false);
-			$folder->assign('dir', basename($dir));
+			$folder->assign('dir', $getPath);
 			$folder->assign('isCreatable', false);
 			$folder->assign('permissions', 0);
 			$folder->assign('files', $files);
 			$folder->assign('uploadMaxFilesize', 0);
 			$folder->assign('uploadMaxHumanFilesize', 0);
 			$folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
+			$folder->assign('usedSpacePercent', 0);
 			$tmpl->assign('folder', $folder->fetchPage(), false);
 			$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
-			$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files')
-										.$urlLinkIdentifiers.'&download&path='.urlencode($getPath));
+			$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=' . urlencode($getPath));
 		} else {
-			OCP\Util::writeLog('share', 'could not resolve linkItem', \OCP\Util::DEBUG);
+			$tmpl->assign('dir', $dir);
+
+			// Show file preview if viewer is available
+			if ($type == 'file') {
+				$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download');
+			} else {
+				$tmpl->assign('downloadURL', OCP\Util::linkToPublic('files')
+										.$urlLinkIdentifiers.'&download&path='.urlencode($getPath));
+			}
 		}
+		$tmpl->printPage();
 	}
+	exit();
+} else {
+	OCP\Util::writeLog('share', 'could not resolve linkItem', \OCP\Util::DEBUG);
 }
 header('HTTP/1.0 404 Not Found');
 $tmpl = new OCP\Template('', '404', 'guest');
diff --git a/apps/files_sharing/templates/authenticate.php b/apps/files_sharing/templates/authenticate.php
index 9695caebf1831d88e4d8aeb56a12cd71a5c3041e..6bce6857ac8667ed80a197b674a0f0c55ebf4fce 100644
--- a/apps/files_sharing/templates/authenticate.php
+++ b/apps/files_sharing/templates/authenticate.php
@@ -1,8 +1,8 @@
 <form action="<?php echo $_['URL']; ?>" method="post">
 	<fieldset>
-		<p>
+		<p class="infield">
 			<label for="password" class="infield"><?php echo $l->t('Password'); ?></label>
-			<input type="password" name="password" id="password" value="" />
+			<input type="password" name="password" id="password" value="" autofocus />
 			<input type="submit" value="<?php echo $l->t('Submit'); ?>" />
 		</p>
 	</fieldset>
diff --git a/apps/files_sharing/templates/public.php b/apps/files_sharing/templates/public.php
index 71fca09ed6d9b3147f081a29147fc9f5b4916e62..7776fd63b3c2656a130e47349c2c5d470c49d062 100644
--- a/apps/files_sharing/templates/public.php
+++ b/apps/files_sharing/templates/public.php
@@ -6,9 +6,9 @@
 	<a href="<?php echo link_to('', 'index.php'); ?>" title="" id="owncloud"><img class="svg" src="<?php echo image_path('', 'logo-wide.svg'); ?>" alt="ownCloud" /></a>
 	<div class="header-right">
 	<?php if (isset($_['folder'])): ?>
-		<span id="details"><?php echo $l->t('%s shared the folder %s with you', array($_['displayName'], $_['filename'])) ?></span>
+		<span id="details"><?php echo $l->t('%s shared the folder %s with you', array($_['displayName'], $_['fileTarget'])) ?></span>
 	<?php else: ?>
-		<span id="details"><?php echo $l->t('%s shared the file %s with you', array($_['displayName'], $_['filename'])) ?></span>
+		<span id="details"><?php echo $l->t('%s shared the file %s with you', array($_['displayName'], $_['fileTarget'])) ?></span>
 	<?php endif; ?>
 		<?php if (!isset($_['folder']) || $_['allowZipDownload']): ?>
 			<a href="<?php echo $_['downloadURL']; ?>" class="button" id="download"><img class="svg" alt="Download" src="<?php echo OCP\image_path("core", "actions/download.svg"); ?>" /><?php echo $l->t('Download')?></a>
@@ -26,7 +26,7 @@
 		<?php endif; ?>
 		<ul id="noPreview">
 			<li class="error">
-				<?php echo $l->t('No preview available for').' '.$_['filename']; ?><br />
+				<?php echo $l->t('No preview available for').' '.$_['fileTarget']; ?><br />
 				<a href="<?php echo $_['downloadURL']; ?>" id="download"><img class="svg" alt="Download" src="<?php echo OCP\image_path("core", "actions/download.svg"); ?>" /><?php echo $l->t('Download')?></a>
 			</li>
 		</ul>
diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php
index cc010979c51e28d655639c6c00f640bae69d27da..6320c1d08273fa0b719f90e6d6ee95c4a256a8f4 100644
--- a/apps/files_trashbin/ajax/undelete.php
+++ b/apps/files_trashbin/ajax/undelete.php
@@ -38,7 +38,7 @@ if ( $error ) {
 		$filelist .= $e.', ';
 	}
 	$l = OC_L10N::get('files_trashbin');
-	$message = $l->t("Couldn't restore %s", array(rtrim($filelist,', ')));
+	$message = $l->t("Couldn't restore %s", array(rtrim($filelist, ', ')));
 	OCP\JSON::error(array("data" => array("message" => $message,
 										  "success" => $success, "error" => $error)));
 } else {
diff --git a/apps/files_trashbin/appinfo/info.xml b/apps/files_trashbin/appinfo/info.xml
index 9b486126361b58fa662d35de74489f2cd13d3a95..e42173396024aab5f97d8dfb6cd83f79edd46b16 100644
--- a/apps/files_trashbin/appinfo/info.xml
+++ b/apps/files_trashbin/appinfo/info.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0"?>
 <info>
 	<id>files_trashbin</id>
-	<name>Trash</name>
-	<description>Trash bin</description>
+	<name>Trash bin</name>
+	<description>Keep a copy of deleted files so that they can be restored if needed</description>
 	<licence>AGPL</licence>
 	<author>Bjoern Schiessle</author>
 	<shipped>true</shipped>
diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php
index 1aceb8ffefddf48976038ab74d2c0d7d8755fa7a..a2d4cc0a44df9cb2a221750af922b2da3ae64ec8 100644
--- a/apps/files_trashbin/index.php
+++ b/apps/files_trashbin/index.php
@@ -27,7 +27,7 @@ if ($dir) {
 			$pos = strpos($dir.'/', '/', 1);
 			$tmp = substr($dir, 0, $pos);
 			$pos = strrpos($tmp, '.d');
-			$timestamp = substr($tmp,$pos+2);
+			$timestamp = substr($tmp, $pos+2);
 			$result[] = array(
 					'id' => $entryName,
 					'timestamp' => $timestamp,
diff --git a/apps/files_trashbin/l10n/bg_BG.php b/apps/files_trashbin/l10n/bg_BG.php
index 2e6309c22b58f9889c22c9730345b8dbc175a3d2..05965c2a9adccd301801f351dc681f107947c590 100644
--- a/apps/files_trashbin/l10n/bg_BG.php
+++ b/apps/files_trashbin/l10n/bg_BG.php
@@ -1,4 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Невъзможно изтриване на %s завинаги",
+"Couldn't restore %s" => "Невъзможно възтановяване на %s",
+"perform restore operation" => "извършване на действие по възтановяване",
+"delete file permanently" => "изтриване на файла завинаги",
 "Name" => "Име",
+"Deleted" => "Изтрито",
+"1 folder" => "1 папка",
+"{count} folders" => "{count} папки",
+"1 file" => "1 файл",
+"{count} files" => "{count} файла",
+"Nothing in here. Your trash bin is empty!" => "Няма нищо. Кофата е празна!",
 "Restore" => "Възтановяване"
 );
diff --git a/apps/files_trashbin/l10n/da.php b/apps/files_trashbin/l10n/da.php
index 3343b6fc8f6ee1079ebe5325e61e9349efd7d1be..855888b3159dd7ced1e1cd2c26beffa3e1085474 100644
--- a/apps/files_trashbin/l10n/da.php
+++ b/apps/files_trashbin/l10n/da.php
@@ -1,8 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Kunne ikke slette %s permanent",
+"Couldn't restore %s" => "Kunne ikke gendanne %s",
+"perform restore operation" => "udfør gendannelsesoperation",
+"delete file permanently" => "slet fil permanent",
 "Name" => "Navn",
+"Deleted" => "Slettet",
 "1 folder" => "1 mappe",
 "{count} folders" => "{count} mapper",
 "1 file" => "1 fil",
 "{count} files" => "{count} filer",
+"Nothing in here. Your trash bin is empty!" => "Intet at se her. Din papirkurv er tom!",
 "Restore" => "Gendan"
 );
diff --git a/apps/files_trashbin/l10n/de.php b/apps/files_trashbin/l10n/de.php
index 45dfb9d6057724021fc2563eda37c1e4f94c52d9..1271f5c313a68b3252c42387492e4e669d5fc19c 100644
--- a/apps/files_trashbin/l10n/de.php
+++ b/apps/files_trashbin/l10n/de.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Konnte %s nicht permanent löschen",
+"Couldn't restore %s" => "Konnte %s nicht wiederherstellen",
 "perform restore operation" => "Wiederherstellung ausführen",
+"delete file permanently" => "Datei permanent löschen",
 "Name" => "Name",
 "Deleted" => "gelöscht",
 "1 folder" => "1 Ordner",
diff --git a/apps/files_trashbin/l10n/de_DE.php b/apps/files_trashbin/l10n/de_DE.php
index e293bf0b2eb623eaf351318fef234cf2d85efd48..7cb1834141bf28e0d862ae5196ab4e7e207e793f 100644
--- a/apps/files_trashbin/l10n/de_DE.php
+++ b/apps/files_trashbin/l10n/de_DE.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Konnte %s nicht permanent löschen",
+"Couldn't restore %s" => "Konnte %s nicht wiederherstellen",
 "perform restore operation" => "Führe die Wiederherstellung aus",
 "delete file permanently" => "Datei entgültig löschen",
 "Name" => "Name",
diff --git a/apps/files_trashbin/l10n/es_AR.php b/apps/files_trashbin/l10n/es_AR.php
index d2c5f30428443cfe6287ea5a4597d0c85e457192..c7f98e38df707da6d3ede74e526baa53d0aea196 100644
--- a/apps/files_trashbin/l10n/es_AR.php
+++ b/apps/files_trashbin/l10n/es_AR.php
@@ -1,8 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "No fue posible borrar %s de manera permanente",
+"Couldn't restore %s" => "No se pudo restaurar %s",
+"perform restore operation" => "Restaurar",
+"delete file permanently" => "Borrar archivo de manera permanente",
 "Name" => "Nombre",
+"Deleted" => "Borrado",
 "1 folder" => "1 directorio",
 "{count} folders" => "{count} directorios",
 "1 file" => "1 archivo",
 "{count} files" => "{count} archivos",
+"Nothing in here. Your trash bin is empty!" => "No hay nada acá. ¡La papelera está vacía!",
 "Restore" => "Recuperar"
 );
diff --git a/apps/files_trashbin/l10n/et_EE.php b/apps/files_trashbin/l10n/et_EE.php
index 4f46f3880208f2f650e176974ca30125ea487cb2..8744ab5f1223e251ac80086efd5a6a12a0cf6968 100644
--- a/apps/files_trashbin/l10n/et_EE.php
+++ b/apps/files_trashbin/l10n/et_EE.php
@@ -1,7 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "%s jäädavalt kustutamine ebaõnnestus",
+"Couldn't restore %s" => "%s ei saa taastada",
+"perform restore operation" => "soorita taastamine",
+"delete file permanently" => "kustuta fail jäädavalt",
 "Name" => "Nimi",
+"Deleted" => "Kustutatud",
 "1 folder" => "1 kaust",
 "{count} folders" => "{count} kausta",
 "1 file" => "1 fail",
-"{count} files" => "{count} faili"
+"{count} files" => "{count} faili",
+"Nothing in here. Your trash bin is empty!" => "Siin pole midagi. Sinu prügikast on tühi!",
+"Restore" => "Taasta"
 );
diff --git a/apps/files_trashbin/l10n/eu.php b/apps/files_trashbin/l10n/eu.php
index a1e3ca53e61caba0f81cfdf037d8cf7b6e391a06..6a4ff12545470fdce2f8d1b59a6d35bf0e6ca368 100644
--- a/apps/files_trashbin/l10n/eu.php
+++ b/apps/files_trashbin/l10n/eu.php
@@ -1,8 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Ezin izan da %s betirako ezabatu",
+"Couldn't restore %s" => "Ezin izan da %s berreskuratu",
+"perform restore operation" => "berreskuratu",
+"delete file permanently" => "ezabatu fitxategia betirako",
 "Name" => "Izena",
+"Deleted" => "Ezabatuta",
 "1 folder" => "karpeta bat",
 "{count} folders" => "{count} karpeta",
 "1 file" => "fitxategi bat",
 "{count} files" => "{count} fitxategi",
+"Nothing in here. Your trash bin is empty!" => "Ez dago ezer ez. Zure zakarrontzia hutsik dago!",
 "Restore" => "Berrezarri"
 );
diff --git a/apps/files_trashbin/l10n/fi_FI.php b/apps/files_trashbin/l10n/fi_FI.php
index de25027f9a8737d27117440bf327dfd576da14d8..ffdac8735b108c137d21cc42cc88ee228de84974 100644
--- a/apps/files_trashbin/l10n/fi_FI.php
+++ b/apps/files_trashbin/l10n/fi_FI.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Kohdetta %s ei voitu poistaa pysyvästi",
+"Couldn't restore %s" => "Kohteen %s palautus epäonnistui",
 "perform restore operation" => "suorita palautustoiminto",
+"delete file permanently" => "poista tiedosto pysyvästi",
 "Name" => "Nimi",
 "Deleted" => "Poistettu",
 "1 folder" => "1 kansio",
diff --git a/apps/files_trashbin/l10n/gl.php b/apps/files_trashbin/l10n/gl.php
index bdc3187b20b59f246f86441857f186650a47d687..ad9f6802e6637441bb6f52726ad9b5ad3f30131c 100644
--- a/apps/files_trashbin/l10n/gl.php
+++ b/apps/files_trashbin/l10n/gl.php
@@ -1,8 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Non foi posíbel eliminar %s permanente",
+"Couldn't restore %s" => "Non foi posíbel restaurar %s",
+"perform restore operation" => "realizar a operación de restauración",
+"delete file permanently" => "eliminar o ficheiro permanentemente",
 "Name" => "Nome",
+"Deleted" => "Eliminado",
 "1 folder" => "1 cartafol",
 "{count} folders" => "{count} cartafoles",
 "1 file" => "1 ficheiro",
 "{count} files" => "{count} ficheiros",
+"Nothing in here. Your trash bin is empty!" => "Aquí non hai nada. O cesto do lixo está baleiro!",
 "Restore" => "Restablecer"
 );
diff --git a/apps/files_trashbin/l10n/hu_HU.php b/apps/files_trashbin/l10n/hu_HU.php
index c4e2b5e21250737005edb4ade3aaf0f2946ed8c8..931e5a7543e40b73c9cf5a4c76d5037d5c8d053d 100644
--- a/apps/files_trashbin/l10n/hu_HU.php
+++ b/apps/files_trashbin/l10n/hu_HU.php
@@ -1,8 +1,14 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Nem sikerült %s végleges törlése",
+"Couldn't restore %s" => "Nem sikerült %s visszaállítása",
+"perform restore operation" => "a visszaállítás végrehajtása",
+"delete file permanently" => "az állomány végleges törlése",
 "Name" => "Név",
+"Deleted" => "Törölve",
 "1 folder" => "1 mappa",
 "{count} folders" => "{count} mappa",
 "1 file" => "1 fájl",
 "{count} files" => "{count} fájl",
+"Nothing in here. Your trash bin is empty!" => "Itt nincs semmi. Az Ön szemetes mappája üres!",
 "Restore" => "Visszaállítás"
 );
diff --git a/apps/files_trashbin/l10n/nl.php b/apps/files_trashbin/l10n/nl.php
index a41a5c2fd9cfa6d81eb9e9cf3e86abdceb83938b..c4a26104ba46e56100c33c0d01d173eec91fa710 100644
--- a/apps/files_trashbin/l10n/nl.php
+++ b/apps/files_trashbin/l10n/nl.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Kon %s niet permanent verwijderen",
+"Couldn't restore %s" => "Kon %s niet herstellen",
 "perform restore operation" => "uitvoeren restore operatie",
 "delete file permanently" => "verwijder bestanden definitief",
 "Name" => "Naam",
diff --git a/apps/files_trashbin/l10n/pt_BR.php b/apps/files_trashbin/l10n/pt_BR.php
index db5737d92381d5bff71fcf80f4b89fda05be38e8..5a6fc3a86beac3b322c49e6882a2334f6e3eba23 100644
--- a/apps/files_trashbin/l10n/pt_BR.php
+++ b/apps/files_trashbin/l10n/pt_BR.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Não foi possível excluir %s permanentemente",
+"Couldn't restore %s" => "Não foi possível restaurar %s",
 "perform restore operation" => "realizar operação de restauração",
+"delete file permanently" => "excluir arquivo permanentemente",
 "Name" => "Nome",
 "Deleted" => "Excluído",
 "1 folder" => "1 pasta",
diff --git a/apps/files_trashbin/l10n/pt_PT.php b/apps/files_trashbin/l10n/pt_PT.php
index 79930315b0eb9bca9ed9484494bc5ba713d701e3..978ab452d6eb59c66e1585e628e3e2bfce13ddf0 100644
--- a/apps/files_trashbin/l10n/pt_PT.php
+++ b/apps/files_trashbin/l10n/pt_PT.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Não foi possível eliminar %s de forma permanente",
+"Couldn't restore %s" => "Não foi possível restaurar %s",
 "perform restore operation" => "Restaurar",
+"delete file permanently" => "Eliminar permanentemente o(s) ficheiro(s)",
 "Name" => "Nome",
 "Deleted" => "Apagado",
 "1 folder" => "1 pasta",
diff --git a/apps/files_trashbin/l10n/sk_SK.php b/apps/files_trashbin/l10n/sk_SK.php
index 759850783e268a6e6ab38966efd2dbd4b839de72..b86e5d86e44c17936180c53d52d86bb9fdd44dba 100644
--- a/apps/files_trashbin/l10n/sk_SK.php
+++ b/apps/files_trashbin/l10n/sk_SK.php
@@ -1,4 +1,5 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Nemožno zmazať %s navždy",
 "Couldn't restore %s" => "Nemožno obnoviť %s",
 "perform restore operation" => "vykonať obnovu",
 "delete file permanently" => "trvalo zmazať súbor",
diff --git a/apps/files_trashbin/l10n/sv.php b/apps/files_trashbin/l10n/sv.php
index 5bde85e7056c0ca62647f39eda2140e5a5f0cbe4..53bb7a6ce0f621668b98897ed2ab74e5b33d5469 100644
--- a/apps/files_trashbin/l10n/sv.php
+++ b/apps/files_trashbin/l10n/sv.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
+"Couldn't delete %s permanently" => "Kunde inte radera %s permanent",
+"Couldn't restore %s" => "Kunde inte återställa %s",
 "perform restore operation" => "utför återställning",
+"delete file permanently" => "radera filen permanent",
 "Name" => "Namn",
 "Deleted" => "Raderad",
 "1 folder" => "1 mapp",
diff --git a/apps/files_trashbin/lib/trash.php b/apps/files_trashbin/lib/trash.php
index bc6562b2080d569b59262ccfa1290e12efd2e973..76844ca92e983b09707186d0c8e6a7dc5b0c6622 100644
--- a/apps/files_trashbin/lib/trash.php
+++ b/apps/files_trashbin/lib/trash.php
@@ -25,6 +25,8 @@ namespace OCA\Files_Trashbin;
 class Trashbin {
 	
 	const DEFAULT_RETENTION_OBLIGATION=180; // how long do we keep files in the trash bin if no other value is defined in the config file (unit: days)
+	const DEFAULTMAXSIZE=50; // unit: percentage; 50% of available disk space/quota
+	
 	/**
 	 * move file to the trash bin
 	 * 
@@ -49,10 +51,14 @@ class Trashbin {
 			$type = 'dir';
 		} else {
 			$type = 'file';
-		}
+		}
+		
+		if (  ($trashbinSize = \OCP\Config::getAppValue('files_trashbin', 'size')) === null ) {
+			$trashbinSize = self::calculateSize(new \OC_FilesystemView('/'. $user.'/files_trashbin'));
+			$trashbinSize += self::calculateSize(new \OC_FilesystemView('/'. $user.'/versions_trashbin'));
+		}
+		$trashbinSize += self::copy_recursive($file_path, 'files_trashbin/'.$deleted.'.d'.$timestamp, $view);
 
-		self::copy_recursive($file_path, 'files_trashbin/'.$deleted.'.d'.$timestamp, $view);
-		
 		if ( $view->file_exists('files_trashbin/'.$deleted.'.d'.$timestamp) ) {
 			$query = \OC_DB::prepare("INSERT INTO *PREFIX*files_trash (id,timestamp,location,type,mime,user) VALUES (?,?,?,?,?,?)");
 			$result = $query->execute(array($deleted, $timestamp, $location, $type, $mime, $user));
@@ -63,19 +69,40 @@ class Trashbin {
 			}
 	
 			if ( \OCP\App::isEnabled('files_versions') ) {
-				if ( $view->is_dir('files_versions'.$file_path) ) {
+				if ( $view->is_dir('files_versions'.$file_path) ) {
+					$trashbinSize += self::calculateSize(new \OC_FilesystemView('/'. $user.'/files_versions/'.$file_path));
 					$view->rename('files_versions'.$file_path, 'versions_trashbin/'. $deleted.'.d'.$timestamp);
 				} else if ( $versions = \OCA\Files_Versions\Storage::getVersions($file_path) ) {
-					foreach ($versions as $v) {
+					foreach ($versions as $v) {
+						$trashbinSize += $view->filesize('files_versions'.$v['path'].'.v'.$v['version']);
 						$view->rename('files_versions'.$v['path'].'.v'.$v['version'], 'versions_trashbin/'. $deleted.'.v'.$v['version'].'.d'.$timestamp);
 					}
 				}
 			}
 		} else {
-			\OC_Log::write('files_trashbin', 'Couldn\'t move '.$file_path.' to the trash bin' , \OC_log::ERROR);
+			\OC_Log::write('files_trashbin', 'Couldn\'t move '.$file_path.' to the trash bin', \OC_log::ERROR);
+		}
+		
+		// get available disk space for user
+		$quota = \OCP\Util::computerFileSize(\OC_Preferences::getValue($user, 'files', 'quota'));
+		if ( $quota == null ) {
+			$quota = \OCP\Util::computerFileSize(\OC_Appconfig::getValue('files', 'default_quota'));
+		}
+		if ( $quota == null ) {
+			$quota = \OC\Files\Filesystem::free_space('/');
 		}
 		
-		self::expire();
+		// calculate available space for trash bin
+		$rootInfo = $view->getFileInfo('/files');
+		$free = $quota-$rootInfo['size']; // remaining free space for user
+		if ( $free > 0 ) {
+			$availableSpace = ($free * self::DEFAULTMAXSIZE / 100) - $trashbinSize; // how much space can be used for versions
+		} else {
+			$availableSpace = $free-$trashbinSize;
+		}
+		
+		$trashbinSize -= self::expire($availableSpace);
+		\OCP\Config::setAppValue('files_trashbin', 'size', $trashbinSize);
 	}
 	
 	
@@ -86,10 +113,13 @@ class Trashbin {
 	 * @param $timestamp time when the file was deleted
 	 */
 	public static function restore($file, $filename, $timestamp) {
-
 		$user = \OCP\User::getUser();
 		$view = new \OC_FilesystemView('/'.$user);
 		
+		if (  ($trashbinSize = \OCP\Config::getAppValue('files_trashbin', 'size')) === null ) {
+			$trashbinSize = self::calculateSize(new \OC_FilesystemView('/'. $user.'/files_trashbin'));
+			$trashbinSize += self::calculateSize(new \OC_FilesystemView('/'. $user.'/versions_trashbin'));
+		}
 		if ( $timestamp ) {
 			$query = \OC_DB::prepare('SELECT location,type FROM *PREFIX*files_trash WHERE user=? AND id=? AND timestamp=?');
 			$result = $query->execute(array($user,$filename,$timestamp))->fetchAll();
@@ -122,16 +152,29 @@ class Trashbin {
 		$mtime = $view->filemtime($source);
 		if( $view->rename($source, $target.$ext) ) {
 			$view->touch($target.$ext, $mtime);
+			if ($view->is_dir($target.$ext)) {
+				$trashbinSize -= self::calculateSize(new \OC_FilesystemView('/'.$user.'/'.$target.$ext));
+			} else {
+				$trashbinSize -= $view->filesize($target.$ext);
+			}
 			// if versioning app is enabled, copy versions from the trash bin back to the original location
-			if ( \OCP\App::isEnabled('files_versions') ) {
-				if ( $result[0]['type'] == 'dir' ) {
+			if ( \OCP\App::isEnabled('files_versions') ) {
+				if ($timestamp ) {
+					$versionedFile = $filename;
+				} else {
+					$versionedFile = $file;
+				}
+				if ( $result[0]['type'] == 'dir' ) {
+					$trashbinSize -= self::calculateSize(new \OC_FilesystemView('/'.$user.'/'.'versions_trashbin/'. $file));
 					$view->rename(\OC_Filesystem::normalizePath('versions_trashbin/'. $file), \OC_Filesystem::normalizePath('files_versions/'.$location.'/'.$filename.$ext));
-				} else if ( $versions = self::getVersionsFromTrash($file, $timestamp) ) {
+				} else if ( $versions = self::getVersionsFromTrash($versionedFile, $timestamp) ) {
 					foreach ($versions as $v) {
 						if ($timestamp ) {
-							$view->rename('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v);
+							$trashbinSize -= $view->filesize('versions_trashbin/'.$versionedFile.'.v'.$v.'.d'.$timestamp);
+							$view->rename('versions_trashbin/'.$versionedFile.'.v'.$v.'.d'.$timestamp, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v);
 						} else {
-							$view->rename('versions_trashbin/'.$file.'.v'.$v, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v);
+							$trashbinSize -= $view->filesize('versions_trashbin/'.$versionedFile.'.v'.$v);
+							$view->rename('versions_trashbin/'.$versionedFile.'.v'.$v, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v);
 						}
 					}
 				}
@@ -142,9 +185,10 @@ class Trashbin {
 				$query->execute(array($user,$filename,$timestamp));
 			}
 
+			\OCP\Config::setAppValue('files_trashbin', 'size', $trashbinSize);
 			return true;
 		} else {
-			\OC_Log::write('files_trashbin', 'Couldn\'t restore file from trash bin, '.$filename , \OC_log::ERROR);
+			\OC_Log::write('files_trashbin', 'Couldn\'t restore file from trash bin, '.$filename, \OC_log::ERROR);
 		}
 
 		return false;
@@ -154,13 +198,18 @@ class Trashbin {
 	 * delete file from trash bin permanently
 	 * @param $filename path to the file
 	 * @param $timestamp of deletion time
-	 * @return true/false
+	 * @return size of deleted files
 	 */
 	public static function delete($filename, $timestamp=null) {
-	
 		$user = \OCP\User::getUser();
-		$view = new \OC_FilesystemView('/'.$user);
-	
+		$view = new \OC_FilesystemView('/'.$user);
+		$size = 0;
+	
+		if (  ($trashbinSize = \OCP\Config::getAppValue('files_trashbin', 'size')) === null ) {
+			$trashbinSize = self::calculateSize(new \OC_FilesystemView('/'. $user.'/files_trashbin'));
+			$trashbinSize += self::calculateSize(new \OC_FilesystemView('/'. $user.'/versions_trashbin'));
+		}
+
 		if ( $timestamp ) {
 			$query = \OC_DB::prepare('DELETE FROM *PREFIX*files_trash WHERE user=? AND id=? AND timestamp=?');
 			$query->execute(array($user,$filename,$timestamp));
@@ -171,31 +220,43 @@ class Trashbin {
 		
 		if ( \OCP\App::isEnabled('files_versions') ) {
 			if ($view->is_dir('versions_trashbin/'.$file)) {
+				$size += self::calculateSize(new \OC_Filesystemview('/'.$user.'/versions_trashbin/'.$file));
 				$view->unlink('versions_trashbin/'.$file);
-			} else if ( $versions = self::getVersionsFromTrash($file, $timestamp) ) {
+			} else if ( $versions = self::getVersionsFromTrash($filename, $timestamp) ) {
 				foreach ($versions as $v) {
 					if ($timestamp ) {
-						$view->unlink('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp);
+						$size += $view->filesize('/versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp);
+						$view->unlink('/versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp);
 					} else {
-						$view->unlink('versions_trashbin/'.$file.'.v'.$v);
+						$size += $view->filesize('/versions_trashbin/'.$filename.'.v'.$v);
+						$view->unlink('/versions_trashbin/'.$filename.'.v'.$v);
 					}
 				}
 			}
 		}
 	
+		if ($view->is_dir('/files_trashbin/'.$file)) {
+			$size += self::calculateSize(new \OC_Filesystemview('/'.$user.'/files_trashbin/'.$file));
+		} else {
+			$size += $view->filesize('/files_trashbin/'.$file);
+		}
 		$view->unlink('/files_trashbin/'.$file);
+		$trashbinSize -= $size;
+		\OCP\Config::setAppValue('files_trashbin', 'size', $trashbinSize);
 		
-		return true;
+		return $size;
 	}
 	
 	
 	/**
-	 * clean up the trash bin
+	 * clean up the trash bin
+	 * @param max. available disk space for trashbin
 	 */
-	private static function expire() {
+	private static function expire($availableSpace) {
 		
-		$view = new \OC_FilesystemView('/'.\OCP\User::getUser());
 		$user = \OCP\User::getUser();
+		$view = new \OC_FilesystemView('/'.$user);
+		$size = 0;
 		
 		$query = \OC_DB::prepare('SELECT location,type,id,timestamp FROM *PREFIX*files_trash WHERE user=?');
 		$result = $query->execute(array($user))->fetchAll();
@@ -208,11 +269,18 @@ class Trashbin {
 			$timestamp = $r['timestamp'];
 			$filename = $r['id'];
 			if ( $r['timestamp'] < $limit ) {
+				if ($view->is_dir('files_trashbin/'.$filename.'.d'.$timestamp)) {
+					$size += self::calculateSize(new \OC_FilesystemView('/'.$user.'/files_trashbin/'.$filename.'.d'.$timestamp));
+				} else {
+					$size += $view->filesize('files_trashbin/'.$filename.'.d'.$timestamp);
+				}
 				$view->unlink('files_trashbin/'.$filename.'.d'.$timestamp);
 				if ($r['type'] == 'dir') {
+					$size += self::calculateSize(new \OC_FilesystemView('/'.$user.'/versions_trashbin/'.$filename.'.d'.$timestamp));
 					$view->unlink('versions_trashbin/'.$filename.'.d'.$timestamp);
 				} else if ( $versions = self::getVersionsFromTrash($filename, $timestamp) ) {
 					foreach ($versions as $v) {
+						$size += $view->filesize('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp);
 						$view->unlink('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp);
 					}			
 				}
@@ -220,7 +288,25 @@ class Trashbin {
 		}
 		
 		$query = \OC_DB::prepare('DELETE FROM *PREFIX*files_trash WHERE user=? AND timestamp<?');
-		$query->execute(array($user,$limit));
+		$query->execute(array($user,$limit));
+		
+		$availableSpace = $availableSpace + $size;
+		// if size limit for trash bin reached, delete oldest files in trash bin
+		if ($availableSpace < 0) {
+			$query = \OC_DB::prepare('SELECT location,type,id,timestamp FROM *PREFIX*files_trash WHERE user=? ORDER BY timestamp ASC');
+			$result = $query->execute(array($user))->fetchAll();
+			$length = count($result);
+			$i = 0;
+			while ( $i < $length &&   $availableSpace < 0 ) {
+				$tmp = self::delete($result[$i]['id'], $result[$i]['timestamp']);
+				$availableSpace += $tmp;
+				$size += $tmp;
+				$i++;
+			}
+			
+		}
+		
+		return $size;
 	}
 	
 	/**
@@ -231,22 +317,26 @@ class Trashbin {
 	 * @param $view file view for the users root directory
 	 */
 	private static function copy_recursive( $source, $destination, $view ) {
+		$size = 0;
 		if ( $view->is_dir( 'files'.$source ) ) {
 			$view->mkdir( $destination );
 			$view->touch($destination,  $view->filemtime('files'.$source));
 			foreach ( \OC_Files::getDirectoryContent($source) as $i ) {
 				$pathDir = $source.'/'.$i['name'];
 				if ( $view->is_dir('files'.$pathDir) ) {
-					self::copy_recursive($pathDir, $destination.'/'.$i['name'], $view);
+					$size += self::copy_recursive($pathDir, $destination.'/'.$i['name'], $view);
 				} else {
+					$size += $view->filesize('files'.$pathDir);
 					$view->copy( 'files'.$pathDir, $destination . '/' . $i['name'] );
 					$view->touch($destination . '/' . $i['name'], $view->filemtime('files'.$pathDir));
 				}
 			}
 		} else {
+			$size += $view->filesize('files'.$source);
 			$view->copy( 'files'.$source, $destination );
 			$view->touch($destination, $view->filemtime('files'.$source));
 		}
+		return $size;
 	}
 	
 	/**
@@ -257,10 +347,9 @@ class Trashbin {
 	private static function getVersionsFromTrash($filename, $timestamp) {
 		$view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/versions_trashbin');
 		$versionsName = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath($filename);
-		$versions = array();
-		
+		$versions = array();
 		if ($timestamp ) {
-		// fetch for old versions
+			// fetch for old versions
 			$matches = glob( $versionsName.'.v*.d'.$timestamp );
 			$offset = -strlen($timestamp)-2;
 		} else {
@@ -300,4 +389,23 @@ class Trashbin {
 		return $ext;
 	}
 
+	/**
+	 * @brief get the size from a given root folder
+	 * @param $view file view on the root folder
+	 * @return size of the folder
+	 */
+	private static function calculateSize($view) {
+		$root = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath('');
+		$iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($root), \RecursiveIteratorIterator::CHILD_FIRST);
+		$size = 0;
+		
+		foreach ($iterator as $path) {
+			$relpath = substr($path, strlen($root)-1);
+			if ( !$view->is_dir($relpath) ) {
+				$size += $view->filesize($relpath);
+			}
+		}
+		return $size;
+	}
+	
 }
diff --git a/apps/files_versions/l10n/da.php b/apps/files_versions/l10n/da.php
index 985797476439ed9074b3a24d57d4ed8aaddcd32b..93fcb9c99cf6f57157ce2a14d475fd16aac33c1c 100644
--- a/apps/files_versions/l10n/da.php
+++ b/apps/files_versions/l10n/da.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Kunne ikke genskabe: %s",
+"success" => "success",
+"File %s was reverted to version %s" => "Filen %s blev genskabt til version: %s",
+"failure" => "fejl",
+"File %s could not be reverted to version %s" => "Filen %s blev genskabt til version: %s",
+"No old versions available" => "Ingen gamle version tilgængelige",
+"No path specified" => "Ingen sti specificeret",
 "History" => "Historik",
+"Revert a file to a previous version by clicking on its revert button" => "Genskab en fil til en tidligere version ved at klikke på denne genskab knap.",
 "Files Versioning" => "Versionering af filer",
 "Enable" => "Aktiver"
 );
diff --git a/apps/files_versions/l10n/de.php b/apps/files_versions/l10n/de.php
index 2fcb996de7bae035700e178be957b88e65c44bc7..f62043dade2bcf46f3471aacdf597015e8c0f8b8 100644
--- a/apps/files_versions/l10n/de.php
+++ b/apps/files_versions/l10n/de.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Konnte %s nicht zurücksetzen",
+"success" => "Erfolgreich",
+"File %s was reverted to version %s" => "Datei %s wurde auf Version %s zurückgesetzt",
+"failure" => "Fehlgeschlagen",
+"File %s could not be reverted to version %s" => "Datei %s konnte nicht auf Version %s zurückgesetzt werden",
+"No old versions available" => "Keine älteren Versionen verfügbar",
+"No path specified" => "Kein Pfad angegeben",
 "History" => "Historie",
+"Revert a file to a previous version by clicking on its revert button" => "Setzen Sie eine Datei durch klicken auf den Zurücksetzen Button zurück",
 "Files Versioning" => "Dateiversionierung",
 "Enable" => "Aktivieren"
 );
diff --git a/apps/files_versions/l10n/de_DE.php b/apps/files_versions/l10n/de_DE.php
index cf33bb071e6e2b5bd9fc265150d57765cf432431..1cf2a63a1de0696a15847a10cc26e9fc84458711 100644
--- a/apps/files_versions/l10n/de_DE.php
+++ b/apps/files_versions/l10n/de_DE.php
@@ -1,9 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Konnte %s nicht zurücksetzen",
 "success" => "Erfolgreich",
+"File %s was reverted to version %s" => "Die Datei %s wurde zur Version %s zurückgesetzt",
 "failure" => "Fehlgeschlagen",
+"File %s could not be reverted to version %s" => "Die Datei %s konnte nicht zur Version %s zurückgesetzt werden",
 "No old versions available" => "keine älteren Versionen verfügbar",
 "No path specified" => "Kein Pfad angegeben",
 "History" => "Historie",
+"Revert a file to a previous version by clicking on its revert button" => "Setze eine Datei durch Klicken, auf den Zurücksetzen-Button, auf einer frühere Version zurück",
 "Files Versioning" => "Dateiversionierung",
 "Enable" => "Aktivieren"
 );
diff --git a/apps/files_versions/l10n/es_AR.php b/apps/files_versions/l10n/es_AR.php
index 74d8907fc3539a3f4c73dd3b549d6de13e667e4b..dc604e2a9c8930bd6e3335e0bd744eb50ae284db 100644
--- a/apps/files_versions/l10n/es_AR.php
+++ b/apps/files_versions/l10n/es_AR.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "No se pudo revertir: %s ",
+"success" => "Éxito",
+"File %s was reverted to version %s" => "El archivo %s fue revertido a la versión %s",
+"failure" => "error",
+"File %s could not be reverted to version %s" => "El archivo %s no pudo ser revertido a la versión %s",
+"No old versions available" => "No hay versiones antiguas disponibles",
+"No path specified" => "Ruta de acceso no especificada",
 "History" => "Historia",
+"Revert a file to a previous version by clicking on its revert button" => "Revertí un archivo a una versión anterior haciendo click en su botón de \"revertir\"",
 "Files Versioning" => "Versionado de archivos",
 "Enable" => "Activar"
 );
diff --git a/apps/files_versions/l10n/et_EE.php b/apps/files_versions/l10n/et_EE.php
index ff119d5374efa7fc9ab4deccbd6c1b391e4aa47c..4aa80c4f55e7d478898a9877aa8767109592648c 100644
--- a/apps/files_versions/l10n/et_EE.php
+++ b/apps/files_versions/l10n/et_EE.php
@@ -1,4 +1,8 @@
 <?php $TRANSLATIONS = array(
+"success" => "korras",
+"failure" => "ebaõnnestus",
+"No old versions available" => "Vanu versioone pole saadaval",
+"No path specified" => "Asukohta pole määratud",
 "History" => "Ajalugu",
 "Files Versioning" => "Failide versioonihaldus",
 "Enable" => "Luba"
diff --git a/apps/files_versions/l10n/eu.php b/apps/files_versions/l10n/eu.php
index c6b4cd7692dada9b554fc4a56d00edfca3cc9d8a..d7f7a796639a079b3799c22277ed6bbac57e2b13 100644
--- a/apps/files_versions/l10n/eu.php
+++ b/apps/files_versions/l10n/eu.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Ezin izan da leheneratu: %s",
+"success" => "arrakasta",
+"File %s was reverted to version %s" => "%s fitxategia %s bertsiora leheneratu da",
+"failure" => "errorea",
+"File %s could not be reverted to version %s" => "%s fitxategia ezin da %s bertsiora leheneratu",
+"No old versions available" => "Ez dago bertsio zaharrik eskuragarri",
+"No path specified" => "Ez da bidea zehaztu",
 "History" => "Historia",
+"Revert a file to a previous version by clicking on its revert button" => "Itzuli fitxategi bat aurreko bertsio batera leheneratu bere leheneratu botoia sakatuz",
 "Files Versioning" => "Fitxategien Bertsioak",
 "Enable" => "Gaitu"
 );
diff --git a/apps/files_versions/l10n/fi_FI.php b/apps/files_versions/l10n/fi_FI.php
index bdce8e9fe5209dc563dac6532bd64f17acda02d0..61e073d4e06953b7108ac830845cc23462601801 100644
--- a/apps/files_versions/l10n/fi_FI.php
+++ b/apps/files_versions/l10n/fi_FI.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Palautus epäonnistui: %s",
+"success" => "onnistui",
+"File %s was reverted to version %s" => "Tiedosto %s palautettiin versioon %s",
+"failure" => "epäonnistui",
+"File %s could not be reverted to version %s" => "Tiedoston %s palautus versioon %s epäonnistui",
+"No old versions available" => "Vanhoja ei ole saatavilla",
+"No path specified" => "Polkua ei ole määritetty",
 "History" => "Historia",
+"Revert a file to a previous version by clicking on its revert button" => "Palauta tiedoston edellinen versio napsauttamalla palautuspainiketta",
 "Files Versioning" => "Tiedostojen versiointi",
 "Enable" => "Käytä"
 );
diff --git a/apps/files_versions/l10n/gl.php b/apps/files_versions/l10n/gl.php
index 7e44b8898bfa68e9f0d073922a5d824749f43ac4..b822b223cc1fba2049dc848df2adbec4ba3412dd 100644
--- a/apps/files_versions/l10n/gl.php
+++ b/apps/files_versions/l10n/gl.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Non foi posíbel reverter: %s",
+"success" => "feito",
+"File %s was reverted to version %s" => "O ficheiro %s foi revertido á versión %s",
+"failure" => "produciuse un fallo",
+"File %s could not be reverted to version %s" => "Non foi posíbel reverter o ficheiro %s á versión %s",
+"No old versions available" => "Non hai versións antigas dispoñíbeis",
+"No path specified" => "Non foi indicada a ruta",
 "History" => "Historial",
+"Revert a file to a previous version by clicking on its revert button" => "Reverta un ficheiro a unha versión anterior premendo no botón reversión",
 "Files Versioning" => "Sistema de versión de ficheiros",
 "Enable" => "Activar"
 );
diff --git a/apps/files_versions/l10n/hu_HU.php b/apps/files_versions/l10n/hu_HU.php
index 95d37ad06ed686b7b692b81802c5479785e91a5c..dcf28838158e2221d6f3b6566d971ae7c8b15014 100644
--- a/apps/files_versions/l10n/hu_HU.php
+++ b/apps/files_versions/l10n/hu_HU.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Nem sikerült átállni a változatra: %s",
+"success" => "sikerült",
+"File %s was reverted to version %s" => "%s állományt átállítottuk erre a változatra: %s",
+"failure" => "nem sikerült",
+"File %s could not be reverted to version %s" => "%s állományt nem sikerült átállítani erre a változatra: %s",
+"No old versions available" => "Nincs régebbi változat",
+"No path specified" => "Nincs megadva az útvonal",
 "History" => "Korábbi változatok",
+"Revert a file to a previous version by clicking on its revert button" => "Az állomány átállítható egy régebbi változatra, ha a gombra kattint",
 "Files Versioning" => "Az állományok verzionálása",
 "Enable" => "engedélyezve"
 );
diff --git a/apps/files_versions/l10n/nl.php b/apps/files_versions/l10n/nl.php
index cd147ca693f0af302b7a479a9d643bb1c51ebf35..fb1cfc3533c4ed30e2ef7a406af7052b9c888f52 100644
--- a/apps/files_versions/l10n/nl.php
+++ b/apps/files_versions/l10n/nl.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Kon niet terugdraaien: %s",
+"success" => "succes",
+"File %s was reverted to version %s" => "Bestand %s is teruggedraaid naar versie %s",
+"failure" => "mislukking",
+"File %s could not be reverted to version %s" => "Bestand %s kon niet worden teruggedraaid naar versie %s",
+"No old versions available" => "Geen oudere versies beschikbaar",
+"No path specified" => "Geen pad opgegeven",
 "History" => "Geschiedenis",
+"Revert a file to a previous version by clicking on its revert button" => "Draai een bestand terug naar een voorgaande versie door te klikken op de terugdraai knop",
 "Files Versioning" => "Bestand versies",
 "Enable" => "Activeer"
 );
diff --git a/apps/files_versions/l10n/pl.php b/apps/files_versions/l10n/pl.php
index a0247b8abc62d5caa6a8279c347915901031ce8a..ae3bfc4a842d4b40b3cf2e36c20954b695be9fba 100644
--- a/apps/files_versions/l10n/pl.php
+++ b/apps/files_versions/l10n/pl.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Nie można było przywrócić: %s",
+"success" => "sukces",
+"File %s was reverted to version %s" => "Plik %s został przywrócony do wersji %s",
+"failure" => "porażka",
+"File %s could not be reverted to version %s" => "Plik %s nie mógł być przywrócony do wersji %s",
+"No old versions available" => "Nie są dostępne żadne starsze wersje",
+"No path specified" => "Nie podano ścieżki",
 "History" => "Historia",
+"Revert a file to a previous version by clicking on its revert button" => "Przywróć plik do poprzedniej wersji klikając w jego przycisk przywrócenia",
 "Files Versioning" => "Wersjonowanie plików",
 "Enable" => "Włącz"
 );
diff --git a/apps/files_versions/l10n/pt_BR.php b/apps/files_versions/l10n/pt_BR.php
index 854a30e6beeab87a003cddd422d0a5209a91a533..9ce509c6534aca66d695abb21ad74fb190babbcd 100644
--- a/apps/files_versions/l10n/pt_BR.php
+++ b/apps/files_versions/l10n/pt_BR.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Não foi possível reverter: %s",
+"success" => "sucesso",
+"File %s was reverted to version %s" => "Arquivo %s revertido à versão %s",
+"failure" => "falha",
+"File %s could not be reverted to version %s" => "Arquivo %s não pôde ser revertido à versão %s",
+"No old versions available" => "Nenhuma versão antiga disponível",
+"No path specified" => "Nenhum caminho especificado",
 "History" => "Histórico",
+"Revert a file to a previous version by clicking on its revert button" => "Reverta um arquivo a uma versão anterior clicando no botão reverter",
 "Files Versioning" => "Versionamento de Arquivos",
 "Enable" => "Habilitar"
 );
diff --git a/apps/files_versions/l10n/pt_PT.php b/apps/files_versions/l10n/pt_PT.php
index dc1bde08cad0853c72c4eef5e9ec028dca68247f..629809f95560b74cc13706bfb83115c6cc00fec3 100644
--- a/apps/files_versions/l10n/pt_PT.php
+++ b/apps/files_versions/l10n/pt_PT.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Não foi possível reverter: %s",
+"success" => "Sucesso",
+"File %s was reverted to version %s" => "O ficheiro %s foi revertido para a versão %s",
+"failure" => "Falha",
+"File %s could not be reverted to version %s" => "Não foi possível reverter o ficheiro %s para a versão %s",
+"No old versions available" => "Não existem versões mais antigas",
+"No path specified" => "Nenhum caminho especificado",
 "History" => "Histórico",
+"Revert a file to a previous version by clicking on its revert button" => "Reverter um ficheiro para uma versão anterior clicando no seu botão reverter.",
 "Files Versioning" => "Versionamento de Ficheiros",
 "Enable" => "Activar"
 );
diff --git a/apps/files_versions/l10n/sk_SK.php b/apps/files_versions/l10n/sk_SK.php
index 8a59286b5a54b2de8cc82fe46efc3ed4c9a349fe..8b46e93bb9782fecca915915b23aabb626a87de6 100644
--- a/apps/files_versions/l10n/sk_SK.php
+++ b/apps/files_versions/l10n/sk_SK.php
@@ -1,10 +1,13 @@
 <?php $TRANSLATIONS = array(
-"success" => "uspech",
-"File %s was reverted to version %s" => "Subror %s bol vrateny na verziu %s",
+"Could not revert: %s" => "Nemožno obnoviť: %s",
+"success" => "úspech",
+"File %s was reverted to version %s" => "Súbor %s bol obnovený na verziu %s",
 "failure" => "chyba",
+"File %s could not be reverted to version %s" => "Súbor %s nemohol byť obnovený na verziu %s",
 "No old versions available" => "Nie sú dostupné žiadne staršie verzie",
 "No path specified" => "Nevybrali ste cestu",
 "History" => "História",
+"Revert a file to a previous version by clicking on its revert button" => "Obnovte súbor do predošlej verzie kliknutím na tlačítko obnoviť",
 "Files Versioning" => "Vytváranie verzií súborov",
 "Enable" => "Zapnúť"
 );
diff --git a/apps/files_versions/l10n/sv.php b/apps/files_versions/l10n/sv.php
index 6788d1fb0f969a942cb01fd191de89f91924843b..853644848f4f894dd43259081e70482d4332025c 100644
--- a/apps/files_versions/l10n/sv.php
+++ b/apps/files_versions/l10n/sv.php
@@ -1,5 +1,13 @@
 <?php $TRANSLATIONS = array(
+"Could not revert: %s" => "Kunde inte återställa: %s",
+"success" => "lyckades",
+"File %s was reverted to version %s" => "Filen %s återställdes till version %s",
+"failure" => "misslyckades",
+"File %s could not be reverted to version %s" => "Filen %s kunde inte återställas till version %s",
+"No old versions available" => "Inga gamla versioner finns tillgängliga",
+"No path specified" => "Ingen sökväg angiven",
 "History" => "Historik",
+"Revert a file to a previous version by clicking on its revert button" => "Återställ en fil till en tidigare version genom att klicka på knappen",
 "Files Versioning" => "Versionshantering av filer",
 "Enable" => "Aktivera"
 );
diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php
index b54bc4a4422969f8f8d74cee253c03faa60b6cb8..f23381cb156311af5077e62398dd7dd799c57134 100644
--- a/apps/files_versions/lib/versions.php
+++ b/apps/files_versions/lib/versions.php
@@ -94,7 +94,7 @@ class Storage {
 			// expire old revisions if necessary
 			$newSize = self::expire($filename, $versionsSize);
 			
-			if ( $newSize != $versionsSize )  {
+			if ( $newSize != $versionsSize ) {
 				\OCP\Config::setAppValue('files_versions', 'size', $versionsSize);
 			}
 		}
@@ -190,6 +190,10 @@ class Storage {
 			$versions = array();
 			// fetch for old versions
 			$matches = glob( $versionsName.'.v*' );
+			
+			if ( !$matches ) {
+				return $versions;
+			}
 
 			sort( $matches );
 
diff --git a/apps/user_ldap/ajax/deleteConfiguration.php b/apps/user_ldap/ajax/deleteConfiguration.php
index b7d633a049d275d7d88cd50e34600866f3b7d75d..ade57110d346b8986e724e5100d1f7e2b0064f1a 100644
--- a/apps/user_ldap/ajax/deleteConfiguration.php
+++ b/apps/user_ldap/ajax/deleteConfiguration.php
@@ -27,9 +27,9 @@ OCP\JSON::checkAppEnabled('user_ldap');
 OCP\JSON::callCheck();
 
 $prefix = $_POST['ldap_serverconfig_chooser'];
-if(\OCA\user_ldap\lib\Helper::deleteServerConfiguration($prefix)){
+if(\OCA\user_ldap\lib\Helper::deleteServerConfiguration($prefix)) {
 	OCP\JSON::success();
 } else {
 	$l=OC_L10N::get('user_ldap');
 	OCP\JSON::error(array('message' => $l->t('Failed to delete the server configuration')));
-}
\ No newline at end of file
+}
diff --git a/apps/user_ldap/appinfo/update.php b/apps/user_ldap/appinfo/update.php
index f9681e38e6813c38dfa7f2178bc69dd9b03d3890..bc32d4ef4ccc32b3fd70fbb9ab58b7cfe5b162c9 100644
--- a/apps/user_ldap/appinfo/update.php
+++ b/apps/user_ldap/appinfo/update.php
@@ -87,4 +87,8 @@ if(!isset($connector)) {
 }
 //it is required, that connections do have ldap_configuration_active setting stored in the database
 $connector->getConfiguration();
-$connector->saveConfiguration();
\ No newline at end of file
+$connector->saveConfiguration();
+
+// we don't save it anymore, was a well-meant bad idea. Clean up database.
+$query = OC_DB::prepare('DELETE FROM `*PREFIX*preferences` WHERE `appid` = ? AND `configkey` = ?');
+$query->execute(array('user_ldap' , 'homedir'));
diff --git a/apps/user_ldap/appinfo/version b/apps/user_ldap/appinfo/version
index 705e30728e00e9b7a903ac90292ef4270ba7603d..e4d93c8d610789d4b4c12e5f8be7d4c8fc6a489b 100644
--- a/apps/user_ldap/appinfo/version
+++ b/apps/user_ldap/appinfo/version
@@ -1 +1 @@
-0.3.9.0
\ No newline at end of file
+0.3.9.4
\ No newline at end of file
diff --git a/apps/user_ldap/l10n/de.php b/apps/user_ldap/l10n/de.php
index 618e7a32457a6c00d56efa5e760d27f917b7dd1c..a1da7d49cbea5ef2c8768ad22f06b730c482f796 100644
--- a/apps/user_ldap/l10n/de.php
+++ b/apps/user_ldap/l10n/de.php
@@ -1,8 +1,20 @@
 <?php $TRANSLATIONS = array(
+"Failed to delete the server configuration" => "Löschen der Serverkonfiguration fehlgeschlagen",
+"The configuration is valid and the connection could be established!" => "Die Konfiguration war erfolgreich, die Verbindung konnte hergestellt werden!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Die Konfiguration ist gültig aber die Verbindung ist fehlgeschlagen. Bitte überprüfen Sie die Servereinstellungen und die Anmeldeinformationen.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "Die Konfiguration ist ungültig, bitte sehen Sie für weitere Details im ownCloud Log nach",
 "Deletion failed" => "Löschen fehlgeschlagen",
+"Take over settings from recent server configuration?" => "Einstellungen von letzter Konfiguration übernehmen?",
 "Keep settings?" => "Einstellungen beibehalten?",
+"Cannot add server configuration" => "Serverkonfiguration konnte nicht hinzugefügt werden.",
+"Connection test succeeded" => "Verbindungstest erfolgreich",
+"Connection test failed" => "Verbindungstest fehlgeschlagen",
+"Do you really want to delete the current Server Configuration?" => "Wollen Sie die aktuelle Serverkonfiguration wirklich löschen?",
+"Confirm Deletion" => "Löschung bestätigen",
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Warnung:</b> Die Anwendungen user_ldap und user_webdavauth sind inkompatibel. Es kann demzufolge zu unerwarteten Verhalten kommen. Bitte Deinen Systemadministator eine der beiden Anwendungen zu deaktivieren.",
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Warnung:</b> Da das PHP-Modul für LDAP nicht installiert ist, wird das Backend nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren.",
+"Server configuration" => "Serverkonfiguration",
+"Add Server Configuration" => "Serverkonfiguration hinzufügen",
 "Host" => "Host",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Du kannst das Protokoll auslassen, außer wenn Du SSL benötigst. Beginne dann mit ldaps://",
 "Base DN" => "Basis-DN",
@@ -21,22 +33,36 @@
 "Group Filter" => "Gruppen-Filter",
 "Defines the filter to apply, when retrieving groups." => "Definiert den Filter für die Anfrage der Gruppen.",
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ohne Platzhalter, z.B.: \"objectClass=posixGroup\"",
+"Connection Settings" => "Verbindungseinstellungen",
+"Configuration Active" => "Konfiguration aktiv",
+"When unchecked, this configuration will be skipped." => "Konfiguration wird übersprungen wenn deaktiviert",
 "Port" => "Port",
+"Backup (Replica) Host" => "Backup Host (Kopie)",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Gib einen optionalen Backup Host an. Es muss sich um eine kopie des Haupt LDAP/AD Servers handeln.",
+"Backup (Replica) Port" => "Backup Port",
+"Disable Main Server" => "Hauptserver deaktivieren",
+"When switched on, ownCloud will only connect to the replica server." => "Wenn aktiviert  wird ownCloud ausschließlich den Backupserver verwenden",
 "Use TLS" => "Nutze TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Benutze es nicht zusätzlich für LDAPS Verbindungen, es wird scheitern.",
 "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)",
 "Turn off SSL certificate validation." => "Schalte die SSL-Zertifikatsprüfung aus.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.",
 "Not recommended, use for testing only." => "Nicht empfohlen, nur zu Testzwecken.",
 "in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.",
+"Directory Settings" => "Ordnereinstellungen",
 "User Display Name Field" => "Feld für den Anzeigenamen des Benutzers",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Benutzernamens in ownCloud. ",
 "Base User Tree" => "Basis-Benutzerbaum",
 "One User Base DN per line" => "Ein Benutzer Base DN pro Zeile",
+"User Search Attributes" => "Benutzersucheigenschaften",
+"Optional; one attribute per line" => "Optional, eine Eigenschaft pro Zeile",
 "Group Display Name Field" => "Feld für den Anzeigenamen der Gruppe",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ",
 "Base Group Tree" => "Basis-Gruppenbaum",
 "One Group Base DN per line" => "Ein Gruppen Base DN pro Zeile",
+"Group Search Attributes" => "Gruppensucheigenschaften",
 "Group-Member association" => "Assoziation zwischen Gruppe und Benutzer",
+"Special Attributes" => "Spezielle Eigenschaften",
 "in bytes" => "in Bytes",
 "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein.",
 "Help" => "Hilfe"
diff --git a/apps/user_ldap/l10n/de_DE.php b/apps/user_ldap/l10n/de_DE.php
index 7d3847f8a891c6be9f810b134be11ada73129d96..69faf5dc45d62cfa9ac99463eaddd429fb2e530d 100644
--- a/apps/user_ldap/l10n/de_DE.php
+++ b/apps/user_ldap/l10n/de_DE.php
@@ -43,6 +43,7 @@
 "Disable Main Server" => "Hauptserver deaktivieren",
 "When switched on, ownCloud will only connect to the replica server." => "Wenn eingeschaltet wird sich ownCloud nur mit dem Replilat-Server verbinden.",
 "Use TLS" => "Nutze TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Benutze es nicht zusätzlich für LDAPS Verbindungen, es wird scheitern.",
 "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)",
 "Turn off SSL certificate validation." => "Schalten Sie die SSL-Zertifikatsprüfung aus.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.",
diff --git a/apps/user_ldap/l10n/es_AR.php b/apps/user_ldap/l10n/es_AR.php
index a87444a270cff8f7eab5c1cfff897537dab34722..b0e7ec12b21b94cfb535e23cc9767a8690dc5b4f 100644
--- a/apps/user_ldap/l10n/es_AR.php
+++ b/apps/user_ldap/l10n/es_AR.php
@@ -1,7 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Failed to delete the server configuration" => "Fallo al borrar la configuración del servidor",
 "The configuration is valid and the connection could be established!" => "La configuración es valida y la conexión pudo ser establecida.",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "La configuración es válida, pero el enlace falló. Por favor, comprobá la configuración del servidor y las credenciales.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "La configuración no es válida. Por favor, buscá en el log de ownCloud más detalles.",
 "Deletion failed" => "Error al borrar",
+"Take over settings from recent server configuration?" => "Tomar los valores de la anterior configuración de servidor?",
 "Keep settings?" => "¿Mantener preferencias?",
 "Cannot add server configuration" => "No se pudo añadir la configuración del servidor",
 "Connection test succeeded" => "El este de conexión ha sido completado satisfactoriamente",
@@ -32,9 +35,15 @@
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "Sin ninguna plantilla, p. ej.: \"objectClass=posixGroup\".",
 "Connection Settings" => "Configuración de Conección",
 "Configuration Active" => "Configuración activa",
+"When unchecked, this configuration will be skipped." => "Si no está seleccionada, esta configuración será omitida.",
 "Port" => "Puerto",
+"Backup (Replica) Host" => "Host para copia de seguridad (réplica)",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Dar un servidor de copia de seguridad opcional. Debe ser una réplica del servidor principal LDAP/AD.",
+"Backup (Replica) Port" => "Puerto para copia de seguridad (réplica)",
 "Disable Main Server" => "Deshabilitar el Servidor Principal",
+"When switched on, ownCloud will only connect to the replica server." => "Al comenzar, ownCloud se conectará únicamente al servidor réplica",
 "Use TLS" => "Usar TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "No usar adicionalmente para conexiones LDAPS, las mismas fallarán",
 "Case insensitve LDAP server (Windows)" => "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)",
 "Turn off SSL certificate validation." => "Desactivar la validación por certificado SSL.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la conexión sólo funciona con esta opción, importá el certificado SSL del servidor LDAP en tu servidor ownCloud.",
@@ -45,10 +54,13 @@
 "The LDAP attribute to use to generate the user`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de usuario de ownCloud.",
 "Base User Tree" => "Árbol base de usuario",
 "One User Base DN per line" => "Una DN base de usuario por línea",
+"User Search Attributes" => "Atributos de la búsqueda de usuario",
+"Optional; one attribute per line" => "Opcional; un atributo por linea",
 "Group Display Name Field" => "Campo de nombre de grupo a mostrar",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud.",
 "Base Group Tree" => "Árbol base de grupo",
 "One Group Base DN per line" => "Una DN base de grupo por línea",
+"Group Search Attributes" => "Atributos de búsqueda de grupo",
 "Group-Member association" => "Asociación Grupo-Miembro",
 "Special Attributes" => "Atributos Especiales",
 "in bytes" => "en bytes",
diff --git a/apps/user_ldap/l10n/eu.php b/apps/user_ldap/l10n/eu.php
index 97c23f86480891f7d4979c1c983afc7b19a35f06..7ab4d00e7566dc0db095635d0a784dd82262a9bc 100644
--- a/apps/user_ldap/l10n/eu.php
+++ b/apps/user_ldap/l10n/eu.php
@@ -1,7 +1,19 @@
 <?php $TRANSLATIONS = array(
+"Failed to delete the server configuration" => "Zerbitzariaren konfigurazioa ezabatzeak huts egin du",
+"The configuration is valid and the connection could be established!" => "Konfigurazioa egokia da eta konexioa ezarri daiteke!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Konfigurazioa ongi dago, baina Bind-ek huts egin du. Mesedez egiaztatu zerbitzariaren ezarpenak eta kredentzialak.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "Konfigurazioa ez dago ongi. Mesedez ikusi ownCloud-en egunerokoa informazio gehiago eskuratzeko.",
 "Deletion failed" => "Ezabaketak huts egin du",
+"Keep settings?" => "Mantendu ezarpenak?",
+"Cannot add server configuration" => "Ezin da zerbitzariaren konfigurazioa gehitu",
+"Connection test succeeded" => "Konexio froga ongi burutu da",
+"Connection test failed" => "Konexio frogak huts egin du",
+"Do you really want to delete the current Server Configuration?" => "Ziur zaude Zerbitzariaren Konfigurazioa ezabatu nahi duzula?",
+"Confirm Deletion" => "Baieztatu Ezabatzea",
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Abisua:</b> user_ldap eta user_webdavauth aplikazioak bateraezinak dira. Portaera berezia izan dezakezu. Mesedez eskatu zure sistema kudeatzaileari bietako bat desgaitzeko.",
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Abisua:</b> PHPk behar duen LDAP modulua ez dago instalaturik, motorrak ez du funtzionatuko. Mesedez eskatu zure sistema kudeatzaileari instala dezan.",
+"Server configuration" => "Zerbitzariaren konfigurazioa",
+"Add Server Configuration" => "Gehitu Zerbitzariaren Konfigurazioa",
 "Host" => "Hostalaria",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Protokoloa ez da beharrezkoa, SSL behar baldin ez baduzu. Honela bada hasi ldaps://",
 "Base DN" => "Oinarrizko DN",
@@ -20,22 +32,36 @@
 "Group Filter" => "Taldeen iragazkia",
 "Defines the filter to apply, when retrieving groups." => "Taldeak jasotzen direnean ezarriko den iragazkia zehazten du.",
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "txantiloirik gabe, adb. \"objectClass=posixGroup\".",
+"Connection Settings" => "Konexio Ezarpenak",
+"Configuration Active" => "Konfigurazio Aktiboa",
+"When unchecked, this configuration will be skipped." => "Markatuta ez dagoenean, konfigurazio hau ez da kontutan hartuko.",
 "Port" => "Portua",
+"Backup (Replica) Host" => "Babeskopia (Replica) Ostalaria",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Eman babeskopia ostalari gehigarri bat. LDAP/AD zerbitzari nagusiaren replica bat izan behar da.",
+"Backup (Replica) Port" => "Babeskopia (Replica) Ataka",
+"Disable Main Server" => "Desgaitu Zerbitzari Nagusia",
+"When switched on, ownCloud will only connect to the replica server." => "Markatuta dagoenean, ownCloud bakarrik replica zerbitzarira konektatuko da.",
 "Use TLS" => "Erabili TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Ez erabili LDAPS konexioetarako, huts egingo du.",
 "Case insensitve LDAP server (Windows)" => "Maiuskulak eta minuskulak ezberditzen ez dituen LDAP zerbitzaria (windows)",
 "Turn off SSL certificate validation." => "Ezgaitu SSL ziurtagirien egiaztapena.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Konexioa aukera hau ezinbestekoa badu, inportatu LDAP zerbitzariaren SSL ziurtagiria zure ownCloud zerbitzarian.",
 "Not recommended, use for testing only." => "Ez da aholkatzen, erabili bakarrik frogak egiteko.",
 "in seconds. A change empties the cache." => "segundutan. Aldaketak katxea husten du.",
+"Directory Settings" => "Karpetaren Ezarpenak",
 "User Display Name Field" => "Erabiltzaileen bistaratzeko izena duen eremua",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "ownCloud erabiltzailearen izena sortzeko erabiliko den LDAP atributua",
 "Base User Tree" => "Oinarrizko Erabiltzaile Zuhaitza",
 "One User Base DN per line" => "Erabiltzaile DN Oinarri bat lerroko",
+"User Search Attributes" => "Erabili Bilaketa Atributuak ",
+"Optional; one attribute per line" => "Aukerakoa; atributu bat lerro bakoitzeko",
 "Group Display Name Field" => "Taldeen bistaratzeko izena duen eremua",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "ownCloud taldearen izena sortzeko erabiliko den LDAP atributua",
 "Base Group Tree" => "Oinarrizko Talde Zuhaitza",
 "One Group Base DN per line" => "Talde DN Oinarri bat lerroko",
+"Group Search Attributes" => "Taldekatu Bilaketa Atributuak ",
 "Group-Member association" => "Talde-Kide elkarketak",
+"Special Attributes" => "Atributu Bereziak",
 "in bytes" => "bytetan",
 "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Utzi hutsik erabiltzaile izenarako (lehentsia). Bestela zehaztu LDAP/AD atributua.",
 "Help" => "Laguntza"
diff --git a/apps/user_ldap/l10n/fa.php b/apps/user_ldap/l10n/fa.php
index 7ddd7dad5c36f3375a8c2ca0d580909c14055308..7816ef7c6f724602d292b5bbe11084ca4c161e90 100644
--- a/apps/user_ldap/l10n/fa.php
+++ b/apps/user_ldap/l10n/fa.php
@@ -1,8 +1,17 @@
 <?php $TRANSLATIONS = array(
+"Failed to delete the server configuration" => "عملیات حذف پیکربندی سرور ناموفق ماند",
+"The configuration is valid and the connection could be established!" => "پیکربندی معتبر است و ارتباط می تواند برقرار شود",
 "Deletion failed" => "حذف کردن انجام نشد",
 "Keep settings?" => "آیا تنظیمات ذخیره شود ؟",
+"Connection test succeeded" => "تست اتصال با موفقیت انجام گردید",
+"Connection test failed" => "تست اتصال ناموفق بود",
+"Do you really want to delete the current Server Configuration?" => "آیا واقعا می خواهید پیکربندی کنونی سرور را حذف کنید؟",
+"Confirm Deletion" => "تایید حذف",
+"Server configuration" => "پیکربندی سرور",
+"Add Server Configuration" => "افزودن پیکربندی سرور",
 "Host" => "میزبانی",
 "Password" => "رمز عبور",
 "Port" => "درگاه",
+"in bytes" => "در بایت",
 "Help" => "راه‌نما"
 );
diff --git a/apps/user_ldap/l10n/fi_FI.php b/apps/user_ldap/l10n/fi_FI.php
index 1c2a92f844a47629183aaed528b5effbc2ab6f03..bfbd6c78564b37b4e7a6f4ac58a21c757a1f8a8f 100644
--- a/apps/user_ldap/l10n/fi_FI.php
+++ b/apps/user_ldap/l10n/fi_FI.php
@@ -1,5 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Deletion failed" => "Poisto epäonnistui",
+"Keep settings?" => "Säilytetäänkö asetukset?",
+"Cannot add server configuration" => "Palvelinasetusten lisäys epäonnistui",
+"Connection test succeeded" => "Yhteystesti onnistui",
+"Connection test failed" => "Yhteystesti epäonnistui",
+"Confirm Deletion" => "Vahvista poisto",
 "Host" => "Isäntä",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Voit jättää protokollan määrittämättä, paitsi kun vaadit SSL:ää. Aloita silloin ldaps://",
 "Base DN" => "Oletus DN",
@@ -17,13 +22,16 @@
 "Group Filter" => "Ryhmien suodatus",
 "Defines the filter to apply, when retrieving groups." => "Määrittelee käytettävän suodattimen, kun ryhmiä haetaan.  ",
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ilman paikanvaraustermiä, ts. \"objectClass=posixGroup\".",
+"Connection Settings" => "Yhteysasetukset",
 "Port" => "Portti",
+"Disable Main Server" => "Poista pääpalvelin käytöstä",
 "Use TLS" => "Käytä TLS:ää",
 "Case insensitve LDAP server (Windows)" => "Kirjainkoosta piittamaton LDAP-palvelin (Windows)",
 "Turn off SSL certificate validation." => "Poista käytöstä SSL-varmenteen vahvistus",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Jos yhteys toimii vain tällä valinnalla, siirrä LDAP-palvelimen SSL-varmenne ownCloud-palvelimellesi.",
 "Not recommended, use for testing only." => "Ei suositella, käytä vain testausta varten.",
 "in seconds. A change empties the cache." => "sekunneissa. Muutos tyhjentää välimuistin.",
+"Directory Settings" => "Hakemistoasetukset",
 "User Display Name Field" => "Käyttäjän näytettävän nimen kenttä",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP-attribuutti, jota käytetään käyttäjän ownCloud-käyttäjänimenä ",
 "Base User Tree" => "Oletuskäyttäjäpuu",
diff --git a/apps/user_ldap/l10n/hi.php b/apps/user_ldap/l10n/hi.php
new file mode 100644
index 0000000000000000000000000000000000000000..60d4ea98e84abe1a2062f5e57fab5dc6f727d98d
--- /dev/null
+++ b/apps/user_ldap/l10n/hi.php
@@ -0,0 +1,3 @@
+<?php $TRANSLATIONS = array(
+"Help" => "सहयोग"
+);
diff --git a/apps/user_ldap/l10n/hu_HU.php b/apps/user_ldap/l10n/hu_HU.php
index 48a0823a5836c8e55e79f48f022b486eedcd452e..c7dfc125d7997f3c1d703a5773f27968e13aed70 100644
--- a/apps/user_ldap/l10n/hu_HU.php
+++ b/apps/user_ldap/l10n/hu_HU.php
@@ -1,7 +1,20 @@
 <?php $TRANSLATIONS = array(
+"Failed to delete the server configuration" => "Nem sikerült törölni a kiszolgáló konfigurációját",
+"The configuration is valid and the connection could be established!" => "A konfiguráció érvényes, és a kapcsolat létrehozható!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "A konfiguráció érvényes, de a kapcsolat nem hozható létre. Kérem ellenőrizze a kiszolgáló beállításait, és az elérési adatokat.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "Érvénytelen konfiguráció. További információkért nézze meg az ownCloud naplófájlját.",
 "Deletion failed" => "A törlés nem sikerült",
+"Take over settings from recent server configuration?" => "Vegyük át a beállításokat az előző konfigurációból?",
+"Keep settings?" => "Tartsuk meg a beállításokat?",
+"Cannot add server configuration" => "Az új  kiszolgáló konfigurációja nem hozható létre",
+"Connection test succeeded" => "A kapcsolatellenőrzés eredménye: sikerült",
+"Connection test failed" => "A kapcsolatellenőrzés eredménye: nem sikerült",
+"Do you really want to delete the current Server Configuration?" => "Tényleg törölni szeretné a kiszolgáló beállításait?",
+"Confirm Deletion" => "A törlés megerősítése",
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Figyelem:</b> a user_ldap és user_webdavauth alkalmazások nem kompatibilisek. Együttes használatuk váratlan eredményekhez vezethet. Kérje meg a rendszergazdát, hogy a kettő közül kapcsolja ki az egyiket.",
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Figyelmeztetés:</b> Az LDAP PHP modul nincs telepítve, ezért ez az alrendszer nem fog működni. Kérje meg a rendszergazdát, hogy telepítse!",
+"Server configuration" => "A kiszolgálók beállításai",
+"Add Server Configuration" => "Új kiszolgáló beállításának hozzáadása",
 "Host" => "Kiszolgáló",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "A protokoll előtag elhagyható, kivéve, ha SSL-t kíván használni. Ebben az esetben kezdje így:  ldaps://",
 "Base DN" => "DN-gyökér",
@@ -20,22 +33,36 @@
 "Group Filter" => "A csoportok szűrője",
 "Defines the filter to apply, when retrieving groups." => "Ez a szűrő érvényes a csoportok listázásakor.",
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "itt ne használjunk változót, pl. \"objectClass=posixGroup\".",
+"Connection Settings" => "Kapcsolati beállítások",
+"Configuration Active" => "A beállítás aktív",
+"When unchecked, this configuration will be skipped." => "Ha nincs kipipálva, ez a beállítás kihagyódik.",
 "Port" => "Port",
+"Backup (Replica) Host" => "Másodkiszolgáló (replika)",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Adjon meg egy opcionális másodkiszolgálót. Ez a fő LDAP/AD kiszolgáló szinkron másolata (replikája) kell legyen.",
+"Backup (Replica) Port" => "A másodkiszolgáló (replika) portszáma",
+"Disable Main Server" => "A fő szerver kihagyása",
+"When switched on, ownCloud will only connect to the replica server." => "Ha ezt bekapcsoljuk, akkor az ownCloud csak a másodszerverekhez kapcsolódik.",
 "Use TLS" => "Használjunk TLS-t",
+"Do not use it additionally for LDAPS connections, it will fail." => "LDAPS kapcsolatok esetén ne kapcsoljuk be, mert nem fog működni.",
 "Case insensitve LDAP server (Windows)" => "Az LDAP-kiszolgáló nem tesz különbséget a kis- és nagybetűk között (Windows)",
 "Turn off SSL certificate validation." => "Ne ellenőrizzük az SSL-tanúsítvány érvényességét",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ha a kapcsolat csak ezzel a beállítással működik, akkor importálja az LDAP-kiszolgáló SSL tanúsítványát az ownCloud kiszolgálóra!",
 "Not recommended, use for testing only." => "Nem javasolt, csak tesztelésre érdemes használni.",
 "in seconds. A change empties the cache." => "másodpercben. A változtatás törli a cache tartalmát.",
+"Directory Settings" => "Címtár beállítások",
 "User Display Name Field" => "A felhasználónév mezője",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "Ebből az LDAP attribútumból képződik a felhasználó elnevezése, ami megjelenik az ownCloudban.",
 "Base User Tree" => "A felhasználói fa gyökere",
 "One User Base DN per line" => "Soronként egy felhasználói fa gyökerét adhatjuk meg",
+"User Search Attributes" => "A felhasználók lekérdezett attribútumai",
+"Optional; one attribute per line" => "Nem kötelező megadni, soronként egy attribútum",
 "Group Display Name Field" => "A csoport nevének mezője",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Ebből az LDAP attribútumból képződik a csoport elnevezése, ami megjelenik az ownCloudban.",
 "Base Group Tree" => "A csoportfa gyökere",
 "One Group Base DN per line" => "Soronként egy csoportfa gyökerét adhatjuk meg",
+"Group Search Attributes" => "A csoportok lekérdezett attribútumai",
 "Group-Member association" => "A csoporttagság attribútuma",
+"Special Attributes" => "Különleges attribútumok",
 "in bytes" => "bájtban",
 "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Hagyja üresen, ha a felhasználónevet kívánja használni. Ellenkező esetben adjon meg egy LDAP/AD attribútumot!",
 "Help" => "Súgó"
diff --git a/apps/user_ldap/l10n/ko.php b/apps/user_ldap/l10n/ko.php
index 419e2d0a690d837dfd13c63a4c341a3e344bd599..8aa9fe74b3d1f513c3c73de5c3b58f0930c2557e 100644
--- a/apps/user_ldap/l10n/ko.php
+++ b/apps/user_ldap/l10n/ko.php
@@ -1,5 +1,8 @@
 <?php $TRANSLATIONS = array(
 "Deletion failed" => "삭제 실패",
+"Keep settings?" => "설정을 유지합니까?",
+"Connection test succeeded" => "연결 시험 성공",
+"Connection test failed" => "연결 시험 실패",
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>경고:</b> user_ldap 앱과 user_webdavauth 앱은 호환되지 않습니다. 오동작을 일으킬 수 있으므로, 시스템 관리자에게 요청하여 둘 중 하나만 사용하도록 하십시오.",
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>경고:</b> PHP LDAP 모듈이 비활성화되어 있거나 설치되어 있지 않습니다. 백엔드를 사용할 수 없습니다. 시스템 관리자에게 설치를 요청하십시오.",
 "Host" => "호스트",
@@ -20,21 +23,29 @@
 "Group Filter" => "그룹 필터",
 "Defines the filter to apply, when retrieving groups." => "그룹을 검색할 때 적용할 필터를 정의합니다.",
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "자리 비움자를 사용할 수 없습니다. 예제: \"objectClass=posixGroup\"",
+"Connection Settings" => "연결 설정",
+"Configuration Active" => "구성 활성화",
 "Port" => "포트",
+"Backup (Replica) Host" => "백업 (복제) 포트",
+"Backup (Replica) Port" => "백업 (복제) 포트",
+"Disable Main Server" => "주 서버 비활성화",
 "Use TLS" => "TLS 사용",
 "Case insensitve LDAP server (Windows)" => "서버에서 대소문자를 구분하지 않음 (Windows)",
 "Turn off SSL certificate validation." => "SSL 인증서 유효성 검사를 해제합니다.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "이 옵션을 사용해야 연결할 수 있는 경우에는 LDAP 서버의 SSL 인증서를 ownCloud로 가져올 수 있습니다.",
 "Not recommended, use for testing only." => "추천하지 않음, 테스트로만 사용하십시오.",
 "in seconds. A change empties the cache." => "초. 항목 변경 시 캐시가 갱신됩니다.",
+"Directory Settings" => "디렉토리 설정",
 "User Display Name Field" => "사용자의 표시 이름 필드",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP 속성은 사용자의 ownCloud 이름을 생성하기 위해 사용합니다.",
 "Base User Tree" => "기본 사용자 트리",
 "One User Base DN per line" => "사용자 DN을 한 줄에 하나씩 입력하십시오",
+"User Search Attributes" => "사용자 검색 속성",
 "Group Display Name Field" => "그룹의 표시 이름 필드",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP 속성은 그룹의 ownCloud 이름을 생성하기 위해 사용합니다.",
 "Base Group Tree" => "기본 그룹 트리",
 "One Group Base DN per line" => "그룹 기본 DN을 한 줄에 하나씩 입력하십시오",
+"Group Search Attributes" => "그룹 검색 속성",
 "Group-Member association" => "그룹-회원 연결",
 "in bytes" => "바이트",
 "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "사용자 이름을 사용하려면 비워 두십시오(기본값). 기타 경우 LDAP/AD 속성을 지정하십시오.",
diff --git a/apps/user_ldap/l10n/nl.php b/apps/user_ldap/l10n/nl.php
index 6879a4c4b9480489b5d0f2e09fd9a9566b18ec07..0eda263aa116bf7c8ec6dc6644518d798920b51e 100644
--- a/apps/user_ldap/l10n/nl.php
+++ b/apps/user_ldap/l10n/nl.php
@@ -43,6 +43,7 @@
 "Disable Main Server" => "Deactiveren hoofdserver",
 "When switched on, ownCloud will only connect to the replica server." => "Wanneer ingeschakeld, zal ownCloud allen verbinden met de replicaserver.",
 "Use TLS" => "Gebruik TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Gebruik het niet voor LDAPS verbindingen, dat gaat niet lukken.",
 "Case insensitve LDAP server (Windows)" => "Niet-hoofdlettergevoelige LDAP server (Windows)",
 "Turn off SSL certificate validation." => "Schakel SSL certificaat validatie uit.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Als de connectie alleen werkt met deze optie, importeer dan het LDAP server SSL certificaat naar je ownCloud server.",
diff --git a/apps/user_ldap/l10n/pt_BR.php b/apps/user_ldap/l10n/pt_BR.php
index 514ceb7027ea5c16d6c5d77bd4f0f87cec1e65ba..dd4019fc35e0f73eb7eb3affedb0e540f40c1977 100644
--- a/apps/user_ldap/l10n/pt_BR.php
+++ b/apps/user_ldap/l10n/pt_BR.php
@@ -1,5 +1,9 @@
 <?php $TRANSLATIONS = array(
 "Deletion failed" => "Remoção falhou",
+"Keep settings?" => "Manter ajustes?",
+"Confirm Deletion" => "Confirmar Exclusão",
+"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Aviso:</b> Os aplicativos user_ldap e user_webdavauth são incompatíveis. Você deverá experienciar comportamento inesperado. Por favor, peça ao seu administrador do sistema para desabilitar um deles.",
+"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Aviso:</b> O módulo PHP LDAP não está instalado, o backend não funcionará. Por favor, peça ao seu administrador do sistema para instalá-lo.",
 "Host" => "Host",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Você pode omitir o protocolo, exceto quando requerer SSL. Então inicie com ldaps://",
 "Base DN" => "DN Base",
diff --git a/apps/user_ldap/l10n/pt_PT.php b/apps/user_ldap/l10n/pt_PT.php
index 058e7ba25323abe9d78245223f73c023ea71f265..bfe6656b3b688df9c4aff407441a8688a09e5b10 100644
--- a/apps/user_ldap/l10n/pt_PT.php
+++ b/apps/user_ldap/l10n/pt_PT.php
@@ -43,6 +43,7 @@
 "Disable Main Server" => "Desactivar servidor principal",
 "When switched on, ownCloud will only connect to the replica server." => "Se estiver ligado, o ownCloud vai somente ligar-se a este servidor de réplicas.",
 "Use TLS" => "Usar TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Não utilize para adicionar ligações LDAP, irá falhar!",
 "Case insensitve LDAP server (Windows)" => "Servidor LDAP (Windows) não sensível a maiúsculas.",
 "Turn off SSL certificate validation." => "Desligar a validação de certificado SSL.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a ligação apenas funcionar com está opção, importe o certificado SSL do servidor LDAP para o seu servidor do ownCloud.",
diff --git a/apps/user_ldap/l10n/ru.php b/apps/user_ldap/l10n/ru.php
index 4c4b9708667c34206bec63e5e119b38c4e02b1f8..c66530174a9f24e5e7c44e03cc59d52989b01276 100644
--- a/apps/user_ldap/l10n/ru.php
+++ b/apps/user_ldap/l10n/ru.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Failed to delete the server configuration" => "Не удалось удалить конфигурацию сервера",
 "The configuration is valid and the connection could be established!" => "Конфигурация правильная и подключение может быть установлено!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Конфигурация верна, но операция подключения завершилась неудачно. Пожалуйста, проверьте настройки сервера и учетные данные.",
 "The configuration is invalid. Please look in the ownCloud log for further details." => "Конфигурация не верна. Пожалуйста, посмотрите в журнале ownCloud детали.",
 "Deletion failed" => "Удаление не удалось",
 "Take over settings from recent server configuration?" => "Принять настройки из последней конфигурации сервера?",
@@ -11,11 +12,13 @@
 "Do you really want to delete the current Server Configuration?" => "Вы действительно хотите удалить существующую конфигурацию сервера?",
 "Confirm Deletion" => "Подтверждение удаления",
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Внимание:</b>Приложения user_ldap и user_webdavauth несовместимы. Вы можете столкнуться с неожиданным поведением. Пожалуйста, обратитесь к системному администратору, чтобы отключить одно из них.",
+"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Внимание:</b> Модуль LDAP для PHP не установлен, бэкенд не будет работать. Пожалуйста, попросите вашего системного администратора его установить. ",
 "Server configuration" => "Конфигурация сервера",
 "Add Server Configuration" => "Добавить конфигурацию сервера",
 "Host" => "Сервер",
 "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Можно опустить протокол, за исключением того, когда вам требуется SSL. Тогда начните с ldaps :/ /",
 "Base DN" => "Базовый DN",
+"One Base DN per line" => "По одному базовому DN в строке.",
 "You can specify Base DN for users and groups in the Advanced tab" => "Вы можете задать Base DN для пользователей и групп на вкладке \"Расширенное\"",
 "User DN" => "DN пользователя",
 "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "DN-клиента пользователя, с которым связывают должно быть заполнено, например, uid=агент, dc=пример, dc=com. Для анонимного доступа, оставьте DN и пароль пустыми.",
@@ -32,9 +35,15 @@
 "without any placeholder, e.g. \"objectClass=posixGroup\"." => "без заполнения, например \"objectClass=posixGroup\".",
 "Connection Settings" => "Настройки подключения",
 "Configuration Active" => "Конфигурация активна",
+"When unchecked, this configuration will be skipped." => "Когда галочка снята, эта конфигурация будет пропущена.",
 "Port" => "Порт",
+"Backup (Replica) Host" => "Адрес резервного сервера",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Укажите дополнительный резервный сервер. Он должен быть репликой главного LDAP/AD сервера.",
+"Backup (Replica) Port" => "Порт резервного сервера",
 "Disable Main Server" => "Отключение главного сервера",
+"When switched on, ownCloud will only connect to the replica server." => "Когда включено, ownCloud будет соединяться только с резервным сервером.",
 "Use TLS" => "Использовать TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Не используйте совместно с безопасными подключениями (LDAPS), это не сработает.",
 "Case insensitve LDAP server (Windows)" => "Нечувствительный к регистру сервер LDAP (Windows)",
 "Turn off SSL certificate validation." => "Отключить проверку сертификата SSL.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Если соединение работает только с этой опцией, импортируйте на ваш сервер ownCloud сертификат SSL сервера LDAP.",
@@ -44,11 +53,14 @@
 "User Display Name Field" => "Поле отображаемого имени пользователя",
 "The LDAP attribute to use to generate the user`s ownCloud name." => "Атрибут LDAP для генерации имени пользователя ownCloud.",
 "Base User Tree" => "База пользовательского дерева",
+"One User Base DN per line" => "По одной базовому DN пользователей в строке.",
 "User Search Attributes" => "Поисковые атрибуты пользователя",
 "Optional; one attribute per line" => "Опционально; один атрибут на линию",
 "Group Display Name Field" => "Поле отображаемого имени группы",
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Атрибут LDAP для генерации имени группы ownCloud.",
 "Base Group Tree" => "База группового дерева",
+"One Group Base DN per line" => "По одной базовому DN групп в строке.",
+"Group Search Attributes" => "Атрибуты поиска для группы",
 "Group-Member association" => "Ассоциация Группа-Участник",
 "Special Attributes" => "Специальные атрибуты",
 "in bytes" => "в байтах",
diff --git a/apps/user_ldap/l10n/sk_SK.php b/apps/user_ldap/l10n/sk_SK.php
index af8ff0307a7584661ae575b71029dd4ad42c5700..727765a15073abe0d5f6ce479ed21960d376680b 100644
--- a/apps/user_ldap/l10n/sk_SK.php
+++ b/apps/user_ldap/l10n/sk_SK.php
@@ -11,8 +11,8 @@
 "Connection test failed" => "Test pripojenia zlyhal",
 "Do you really want to delete the current Server Configuration?" => "Naozaj chcete zmazať súčasné nastavenie servera?",
 "Confirm Deletion" => "Potvrdiť vymazanie",
-"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávať neočakávané správanie. Požiadajte správcu systému aby jednu z nich zakázal.",
-"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Upozornenie:</b> nie je nainštalovaný LDAP modul pre PHP, backend vrstva nebude fungovať. Požádejte správcu systému aby ho nainštaloval.",
+"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávať neočakávané správanie. Požiadajte administrátora systému aby jednu z nich zakázal.",
+"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Upozornenie:</b> nie je nainštalovaný LDAP modul pre PHP, backend vrstva nebude fungovať. Požádejte administrátora systému aby ho nainštaloval.",
 "Server configuration" => "Nastavenia servera",
 "Add Server Configuration" => "Pridať nastavenia servera.",
 "Host" => "Hostiteľ",
@@ -43,6 +43,7 @@
 "Disable Main Server" => "Zakázať hlavný server",
 "When switched on, ownCloud will only connect to the replica server." => "Pri zapnutí sa ownCloud pripojí len k záložnému serveru.",
 "Use TLS" => "Použi TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Nepoužívajte pre pripojenie LDAPS, zlyhá.",
 "Case insensitve LDAP server (Windows)" => "LDAP server nerozlišuje veľkosť znakov (Windows)",
 "Turn off SSL certificate validation." => "Vypnúť overovanie SSL certifikátu.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ak pripojenie pracuje len s touto možnosťou, tak importujte SSL certifikát LDAP serveru do vášho servera ownCloud.",
@@ -60,7 +61,7 @@
 "Base Group Tree" => "Základný skupinový strom",
 "One Group Base DN per line" => "Jedna skupinová základná DN na riadok",
 "Group Search Attributes" => "Atribúty vyhľadávania skupín",
-"Group-Member association" => "Asociácia člena skupiny",
+"Group-Member association" => "Priradenie člena skupiny",
 "Special Attributes" => "Špeciálne atribúty",
 "in bytes" => "v bajtoch",
 "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Nechajte prázdne pre používateľské meno (predvolené). Inak uveďte atribút LDAP/AD.",
diff --git a/apps/user_ldap/l10n/sv.php b/apps/user_ldap/l10n/sv.php
index c100fc94afe97f79f7d9883fed8f4389156c4f8c..702912f9c682fe479ee26d6128caafee87e52a0f 100644
--- a/apps/user_ldap/l10n/sv.php
+++ b/apps/user_ldap/l10n/sv.php
@@ -43,6 +43,7 @@
 "Disable Main Server" => "Inaktivera huvudserver",
 "When switched on, ownCloud will only connect to the replica server." => "När denna är påkopplad kommer ownCloud att koppla upp till replika-servern, endast.",
 "Use TLS" => "Använd TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Använd inte för LDAPS-anslutningar, det kommer inte att fungera.",
 "Case insensitve LDAP server (Windows)" => "LDAP-servern är okänslig för gemener och versaler (Windows)",
 "Turn off SSL certificate validation." => "Stäng av verifiering av SSL-certifikat.",
 "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Om anslutningen bara fungerar med det här alternativet, importera LDAP-serverns SSL-certifikat i din ownCloud-server.",
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index 68cbe4a5e759fed0364111ef8c213b0524580a84..4aa8ae8e8a49fd1dea84d6f81f7821a13b621bbc 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -4,7 +4,7 @@
  * ownCloud – LDAP Access
  *
  * @author Arthur Schiwon
- * @copyright 2012 Arthur Schiwon blizzz@owncloud.com
+ * @copyright 2012, 2013 Arthur Schiwon blizzz@owncloud.com
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
@@ -57,8 +57,8 @@ abstract class Access {
 			\OCP\Util::writeLog('user_ldap', 'LDAP resource not available.', \OCP\Util::DEBUG);
 			return false;
 		}
-		$rr = @ldap_read($cr, $dn, $filter, array($attr));
 		$dn = $this->DNasBaseParameter($dn);
+		$rr = @ldap_read($cr, $dn, $filter, array($attr));
 		if(!is_resource($rr)) {
 			\OCP\Util::writeLog('user_ldap', 'readAttribute failed for DN '.$dn, \OCP\Util::DEBUG);
 			//in case an error occurs , e.g. object does not exist
@@ -293,6 +293,10 @@ abstract class Access {
 				$query->execute(array($dn, $uuid));
 				return $component;
 			}
+		} else {
+			//If the UUID can't be detected something is foul.
+			\OCP\Util::writeLog('user_ldap', 'Cannot determine UUID for '.$dn.'. Skipping.', \OCP\Util::INFO);
+			return false;
 		}
 
 		if(is_null($ldapname)) {
@@ -303,21 +307,24 @@ abstract class Access {
 			}
 			$ldapname = $ldapname[0];
 		}
-		$ldapname = $this->sanitizeUsername($ldapname);
+		$intname = $isUser ? $this->sanitizeUsername($uuid) : $this->sanitizeUsername($ldapname);
 
 		//a new user/group! Add it only if it doesn't conflict with other backend's users or existing groups
-		if(($isUser && !\OCP\User::userExists($ldapname, 'OCA\\user_ldap\\USER_LDAP')) || (!$isUser && !\OC_Group::groupExists($ldapname))) {
-			if($this->mapComponent($dn, $ldapname, $isUser)) {
-				return $ldapname;
+		//disabling Cache is required to avoid that the new user is cached as not-existing in fooExists check
+		$originalTTL = $this->connection->ldapCacheTTL;
+		$this->connection->setConfiguration(array('ldapCacheTTL' => 0));
+		if(($isUser && !\OCP\User::userExists($intname))
+			|| (!$isUser && !\OC_Group::groupExists($intname))) {
+			if($this->mapComponent($dn, $intname, $isUser)) {
+				$this->connection->setConfiguration(array('ldapCacheTTL' => $originalTTL));
+				return $intname;
 			}
 		}
+		$this->connection->setConfiguration(array('ldapCacheTTL' => $originalTTL));
 
-		//doh! There is a conflict. We need to distinguish between users/groups. Adding indexes is an idea, but not much of a help for the user. The DN is ugly, but for now the only reasonable way. But we transform it to a readable format and remove the first part to only give the path where this object is located.
-		$oc_name = $this->alternateOwnCloudName($ldapname, $dn);
-		if(($isUser && !\OCP\User::userExists($oc_name)) || (!$isUser && !\OC_Group::groupExists($oc_name))) {
-			if($this->mapComponent($dn, $oc_name, $isUser)) {
-				return $oc_name;
-			}
+		$altname = $this->createAltInternalOwnCloudName($intname, $isUser);
+		if($this->mapComponent($dn, $altname, $isUser)) {
+			return $altname;
 		}
 
 		//if everything else did not help..
@@ -400,18 +407,92 @@ abstract class Access {
 	}
 
 	/**
-	 * @brief creates a hopefully unique name for owncloud based on the display name and the dn of the LDAP object
+	 * @brief creates a unique name for internal ownCloud use for users. Don't call it directly.
 	 * @param $name the display name of the object
-	 * @param $dn the dn of the object
-	 * @returns string with with the name to use in ownCloud
+	 * @returns string with with the name to use in ownCloud or false if unsuccessful
 	 *
-	 * creates a hopefully unique name for owncloud based on the display name and the dn of the LDAP object
+	 * Instead of using this method directly, call
+	 * createAltInternalOwnCloudName($name, true)
 	 */
-	private function alternateOwnCloudName($name, $dn) {
-		$ufn = ldap_dn2ufn($dn);
-		$name = $name . '@' . trim(\OCP\Util::mb_substr_replace($ufn, '', 0, mb_strpos($ufn, ',', 0, 'UTF-8'), 'UTF-8'));
-		$name = $this->sanitizeUsername($name);
-		return $name;
+	private function _createAltInternalOwnCloudNameForUsers($name) {
+		$attempts = 0;
+		//while loop is just a precaution. If a name is not generated within
+		//20 attempts, something else is very wrong. Avoids infinite loop.
+		while($attempts < 20){
+			$altName = $name . '_' . uniqid();
+			if(\OCP\User::userExists($altName)) {
+				return $altName;
+			}
+			$attempts++;
+		}
+		return false;
+	}
+
+	/**
+	 * @brief creates a unique name for internal ownCloud use for groups. Don't call it directly.
+	 * @param $name the display name of the object
+	 * @returns string with with the name to use in ownCloud or false if unsuccessful.
+	 *
+	 * Instead of using this method directly, call
+	 * createAltInternalOwnCloudName($name, false)
+	 *
+	 * Group names are also used as display names, so we do a sequential
+	 * numbering, e.g. Developers_42 when there are 41 other groups called
+	 * "Developers"
+	 */
+	private function _createAltInternalOwnCloudNameForGroups($name) {
+		$query = \OCP\DB::prepare('
+			SELECT `owncloud_name`
+			FROM `'.$this->getMapTable(false).'`
+			WHERE `owncloud_name` LIKE ?
+		');
+
+		$usedNames = array();
+		$res = $query->execute(array($name.'_%'));
+		while($row = $res->fetchRow()) {
+			$usedNames[] = $row['owncloud_name'];
+		}
+		if(!($usedNames) || count($usedNames) == 0) {
+			$lastNo = 1; //will become name_2
+		} else {
+			natsort($usedNames);
+			$lastname = array_pop($usedNames);
+			$lastNo = intval(substr($lastname, strrpos($lastname, '_') + 1));
+		}
+		$altName = $name.'_'.strval($lastNo+1);
+		unset($usedNames);
+
+		$attempts = 1;
+		while($attempts < 21){
+			//Pro forma check to be really sure it is unique
+			//while loop is just a precaution. If a name is not generated within
+			//20 attempts, something else is very wrong. Avoids infinite loop.
+			if(!\OC_Group::groupExists($altName)) {
+				return $altName;
+			}
+			$altName = $name . '_' . $lastNo + $attempts;
+			$attempts++;
+		}
+		return false;
+	}
+
+	/**
+	 * @brief creates a unique name for internal ownCloud use.
+	 * @param $name the display name of the object
+	 * @param $isUser boolean, whether name should be created for a user (true) or a group (false)
+	 * @returns string with with the name to use in ownCloud or false if unsuccessful
+	 */
+	private function createAltInternalOwnCloudName($name, $isUser) {
+		$originalTTL = $this->connection->ldapCacheTTL;
+		$this->connection->setConfiguration(array('ldapCacheTTL' => 0));
+		if($isUser) {
+			$altName = $this->_createAltInternalOwnCloudNameForUsers($name);
+		} else {
+			$altName = $this->_createAltInternalOwnCloudNameForGroups($name);
+		}
+		$this->connection->setConfiguration(array('ldapCacheTTL' => $originalTTL));
+
+		return $altName;
 	}
 
 	/**
diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php
index f92779b1cada27d8e7012c80e212da1ce9f73aa7..0bf2efe35afc387cc6437ea872c58c3e5f9521b3 100644
--- a/apps/user_ldap/lib/connection.php
+++ b/apps/user_ldap/lib/connection.php
@@ -192,7 +192,7 @@ class Connection {
 
 	private function getValue($varname) {
 		static $defaults;
-		if(is_null($defaults)){
+		if(is_null($defaults)) {
 			$defaults = $this->getDefaults();
 		}
 		return \OCP\Config::getAppValue($this->configID,
@@ -235,7 +235,7 @@ class Connection {
 			$this->config['turnOffCertCheck']
 				= $this->$v('ldap_turn_off_cert_check');
 			$this->config['ldapUserDisplayName']
-				= mb_strtolower($this->$v('ldap_display_name'),'UTF-8');
+				= mb_strtolower($this->$v('ldap_display_name'), 'UTF-8');
 			$this->config['ldapUserFilter']
 				= $this->$v('ldap_userlist_filter');
 			$this->config['ldapGroupFilter'] = $this->$v('ldap_group_filter');
@@ -294,6 +294,11 @@ class Connection {
 		$params = $this->getConfigTranslationArray();
 
 		foreach($config as $parameter => $value) {
+			if(($parameter == 'homeFolderNamingRule'
+				|| $params[$parameter] == 'homeFolderNamingRule')
+				&& !empty($value)) {
+				$value = 'attr:'.$value;
+			}
 		    if(isset($this->config[$parameter])) {
 				$this->config[$parameter] = $value;
 				if(is_array($setParameters)) {
@@ -324,14 +329,14 @@ class Connection {
 					$value = base64_encode($value);
 					break;
 				case 'homeFolderNamingRule':
-					$value = empty($value) ? 'opt:username' : 'attr:'.$value;
+					$value = empty($value) ? 'opt:username' : $value;
 					break;
 				case 'ldapBase':
 				case 'ldapBaseUsers':
 				case 'ldapBaseGroups':
 				case 'ldapAttributesForUserSearch':
 				case 'ldapAttributesForGroupSearch':
-					if(is_array($value)){
+					if(is_array($value)) {
 						$value = implode("\n", $value);
 					}
 					break;
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index 6aa8cd9b83cc54b85e630415552e96127ae24152..7778c37c7949506d1402fc582c9554a778907e25 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -171,40 +171,37 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	}
 
 	/**
-	* @brief determine the user's home directory
-	* @param string $uid the owncloud username
+	* @brief get the user's home directory
+	* @param string $uid the username
 	* @return boolean
 	*/
-	private function determineHomeDir($uid) {
+	public function getHome($uid) {
+		$cacheKey = 'getHome'.$uid;
+		if($this->connection->isCached($cacheKey)) {
+			return $this->connection->getFromCache($cacheKey);
+		}
 		if(strpos($this->connection->homeFolderNamingRule, 'attr:') === 0) {
 			$attr = substr($this->connection->homeFolderNamingRule, strlen('attr:'));
 			$homedir = $this->readAttribute($this->username2dn($uid), $attr);
-			if($homedir) {
-				$homedir = \OCP\Config::getSystemValue( "datadirectory", \OC::$SERVERROOT."/data" ) . '/' . $homedir[0];
-				\OCP\Config::setUserValue($uid, 'user_ldap', 'homedir', $homedir);
+			if($homedir && isset($homedir[0])) {
+				$path = $homedir[0];
+				//if attribute's value is an absolute path take this, otherwise append it to data dir
+				//check for / at the beginning or pattern c:\ resp. c:/
+				if(
+					'/' == $path[0]
+					|| (3 < strlen($path) && ctype_alpha($path[0]) && $path[1] == ':' && ('\\' == $path[2] || '/' == $path[2]))
+				) {
+					$homedir = $path;
+				} else {
+					$homedir = \OCP\Config::getSystemValue('datadirectory', \OC::$SERVERROOT.'/data' ) . '/' . $homedir[0];
+				}
+				$this->connection->writeToCache($cacheKey, $homedir);
 				return $homedir;
 			}
 		}
 
-		//fallback and default: username
-		$homedir = \OCP\Config::getSystemValue( "datadirectory", \OC::$SERVERROOT."/data" ) . '/' . $uid;
-		\OCP\Config::setUserValue($uid, 'user_ldap', 'homedir', $homedir);
-		return $homedir;
-	}
-
-	/**
-	* @brief get the user's home directory
-	* @param string $uid the username
-	* @return boolean
-	*/
-	public function getHome($uid) {
-		if($this->userExists($uid)) {
-			$homedir = \OCP\Config::getUserValue($uid, 'user_ldap', 'homedir', false);
-			if(!$homedir) {
-				$homedir = $this->determineHomeDir($uid);
-			}
-			return $homedir;
-		}
+		//false will apply default behaviour as defined and done by OC_User
+		$this->connection->writeToCache($cacheKey, false);
 		return false;
 	}
 
@@ -264,4 +261,10 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 		return (bool)((OC_USER_BACKEND_CHECK_PASSWORD | OC_USER_BACKEND_GET_HOME) & $actions);
 	}
 
+	/**
+	 * @return bool
+	 */
+	public function hasUserListings() {
+		return true;
+	}
 }
\ No newline at end of file
diff --git a/apps/user_ldap/user_proxy.php b/apps/user_ldap/user_proxy.php
index a94be3354fcb75fe083f0441a1b961dac8286de5..6a75bae3815f0cbdb1b4b416cc9dacc58192d44d 100644
--- a/apps/user_ldap/user_proxy.php
+++ b/apps/user_ldap/user_proxy.php
@@ -183,4 +183,12 @@ class User_Proxy extends lib\Proxy implements \OCP\UserInterface {
 	public function deleteUser($uid) {
 		return false;
 	}
+
+	/**
+	 * @return bool
+	 */
+	public function hasUserListings() {
+		return $this->refBackend->hasUserListings();
+	}
+
 }
\ No newline at end of file
diff --git a/apps/user_webdavauth/l10n/et_EE.php b/apps/user_webdavauth/l10n/et_EE.php
index 9bd32954b058d9ad5c43d6604e9ba18e4bd559f3..f4f7486035866c4b1693b4210d662ca23d8bde9c 100644
--- a/apps/user_webdavauth/l10n/et_EE.php
+++ b/apps/user_webdavauth/l10n/et_EE.php
@@ -1,3 +1,4 @@
 <?php $TRANSLATIONS = array(
-"WebDAV URL: http://" => "WebDAV URL: http://"
+"WebDAV Authentication" => "WebDAV autentimine",
+"URL: http://" => "URL: http://"
 );
diff --git a/apps/user_webdavauth/l10n/fi_FI.php b/apps/user_webdavauth/l10n/fi_FI.php
index 070a0ffdaff78ed22f6c63607a398b64baff4451..6c67c78c8127238b3620faf4320ea366bab43d8b 100644
--- a/apps/user_webdavauth/l10n/fi_FI.php
+++ b/apps/user_webdavauth/l10n/fi_FI.php
@@ -1,3 +1,4 @@
 <?php $TRANSLATIONS = array(
-"WebDAV URL: http://" => "WebDAV-osoite: http://"
+"WebDAV Authentication" => "WebDAV-todennus",
+"URL: http://" => "Osoite: http://"
 );
diff --git a/apps/user_webdavauth/l10n/gl.php b/apps/user_webdavauth/l10n/gl.php
index a6b8355c07433c653ed89d68217bcc9133750b81..f63a7cb0ce85d357f1fd909b03547bf983f6de45 100644
--- a/apps/user_webdavauth/l10n/gl.php
+++ b/apps/user_webdavauth/l10n/gl.php
@@ -1,5 +1,5 @@
 <?php $TRANSLATIONS = array(
 "WebDAV Authentication" => "Autenticación WebDAV",
 "URL: http://" => "URL: http://",
-"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud enviará as credenciais do usuario a esta URL. Este conector comproba a resposta e interpretará os códigos de estado 401 e 403 como credenciais non válidas, e todas as outras respostas como credenciais válidas."
+"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud enviará as credenciais do usuario a este URL. Este engadido comproba a resposta e interpretará os códigos de estado HTTP 401 e 403 como credenciais incorrectas, e todas as outras respostas como credenciais correctas."
 );
diff --git a/apps/user_webdavauth/l10n/ru.php b/apps/user_webdavauth/l10n/ru.php
index 245a5101341d2a51e59b2cc0575b907f85eb3945..f12982fc406104f67ba64e6ea0c4694ff0e64bc7 100644
--- a/apps/user_webdavauth/l10n/ru.php
+++ b/apps/user_webdavauth/l10n/ru.php
@@ -1,3 +1,5 @@
 <?php $TRANSLATIONS = array(
-"URL: http://" => "URL: http://"
+"WebDAV Authentication" => "Идентификация WebDAV",
+"URL: http://" => "URL: http://",
+"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud отправит пользовательские данные на этот URL. Затем плагин проверит ответ, в случае HTTP ответа 401 или 403 данные будут считаться неверными, при любых других ответах - верными."
 );
diff --git a/apps/user_webdavauth/user_webdavauth.php b/apps/user_webdavauth/user_webdavauth.php
index 1459781a3b4034d7229cc4ac1f414c48d2b66ecd..6417e45434dc4c3f23c1c12438f59a38a8001e76 100755
--- a/apps/user_webdavauth/user_webdavauth.php
+++ b/apps/user_webdavauth/user_webdavauth.php
@@ -28,12 +28,6 @@ class OC_USER_WEBDAVAUTH extends OC_User_Backend {
 		$this->webdavauth_url = OC_Config::getValue( "user_webdavauth_url" );
 	}
 
-	public function createUser() {
-		// Can't create user
-		OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to create users from web frontend using WebDAV user backend', 3);
-		return false;
-	}
-
 	public function deleteUser($uid) {
 		// Can't delete user
 		OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to delete users from web frontend using WebDAV user backend', 3);
@@ -71,6 +65,12 @@ class OC_USER_WEBDAVAUTH extends OC_User_Backend {
 		return true;
 	}
 
+	/**
+	 * @return bool
+	 */
+	public function hasUserListings() {
+		return false;
+	}
 
 	/*
 	* we don´t know the users so all we can do it return an empty array here
diff --git a/config/config.sample.php b/config/config.sample.php
index cfef3d5117dd51220f9ba0ea7d5ac384a48e96d0..2f394c41a3bdc8a044659817a223c5b647713ab6 100644
--- a/config/config.sample.php
+++ b/config/config.sample.php
@@ -114,6 +114,9 @@ $CONFIG = array(
 /* How long should ownCloud keep deleted files in the trash bin, default value:  180 days */
 'trashbin_retention_obligation' => 180,
 
+/* allow user to change his display name, if it is supported by the back-end */
+'allow_user_to_change_display_name' => true,
+
 /* Check 3rdparty apps for malicious code fragments */
 "appcodechecker" => "",
 
diff --git a/core/css/styles.css b/core/css/styles.css
index 3667740223b6eda7784fb1902319646b96c77725..c2e1ad92088b3c2ce915b80efd46e52e561b6218 100644
--- a/core/css/styles.css
+++ b/core/css/styles.css
@@ -16,7 +16,10 @@ body { background:#fefefe; font:normal .8em/1.6em "Lucida Grande", Arial, Verdan
 
 
 /* HEADERS */
-#body-user #header, #body-settings #header { position:fixed; top:0; left:0; right:0; z-index:100; height:45px; line-height:2.5em; background:#1d2d44; -moz-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; }
+#body-user #header, #body-settings #header {
+	position:fixed; top:0; left:0; right:0; z-index:100; height:45px; line-height:2.5em;
+	background:#1d2d44 url('../img/noise.png') repeat;
+	-moz-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; }
 #body-login #header { margin: -2em auto 0; text-align:center; height:10em; padding:1em 0 .5em;
  -moz-box-shadow:0 0 1em rgba(0, 0, 0, .5); -webkit-box-shadow:0 0 1em rgba(0, 0, 0, .5); box-shadow:0 0 1em rgba(0, 0, 0, .5);
 background:#1d2d44; /* Old browsers */
@@ -34,7 +37,8 @@ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', endC
 
 /* INPUTS */
 input[type="text"], input[type="password"] { cursor:text; }
-input, textarea, select, button, .button, #quota, div.jp-progress, .pager li a {
+input[type="text"], input[type="password"], input[type="search"],
+textarea, select, button, .button, #quota, div.jp-progress, .pager li a {
 	width:10em; margin:.3em; padding:.6em .5em .4em;
 	font-size:1em; font-family:Arial, Verdana, sans-serif;
 	background:#fff; color:#333; border:1px solid #ddd; outline:none;
@@ -151,7 +155,7 @@ input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-b
 #adminlogin, #adminpass, #user, #password { width:11.7em!important; padding-left:1.8em; }
 #adminlogin+label+img, #adminpass-icon, #user+label+img, #password-icon {
 	position:absolute; left:1.25em; top:1.65em;
-	opacity:.3;
+	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter:alpha(opacity=30); opacity:.3;
 }
 #adminpass-icon, #password-icon { top:1.1em; }
 input[name="password-clone"] { padding-left:1.8em; width:11.7em !important; }
@@ -164,7 +168,7 @@ input[name="adminpass-clone"] { padding-left:1.8em; width:11.7em !important; }
 }
 .groupmiddle input {
 	margin-top:0; margin-bottom:0;
-	border-top:0; border-radius:0;
+	border-top:0; border-bottom:0; border-radius:0;
 	box-shadow:0 1px 1px #fff,0 1px 0 #ddd inset;
 }
 .groupbottom input {
@@ -178,21 +182,28 @@ input[name="adminpass-clone"] { padding-left:1.8em; width:11.7em !important; }
 #login .groupmiddle label, #login .groupbottom label { top:.65em; }
 p.infield { position:relative; }
 label.infield { cursor:text !important; top:1.05em; left:.85em; }
-#login form label.infield { position:absolute; font-size:19px; color:#aaa; white-space:nowrap; padding-left:1.4em; }
+#login form label.infield { /* labels are ellipsized when too long, keep them short */
+	position:absolute; width:90%; padding-left:1.4em;
+	font-size:19px; color:#aaa;
+	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
+}
 #login #databaseField .infield { padding-left:0; }
 #login form input[type="checkbox"]+label { position:relative; margin:0; font-size:1em; text-shadow:#fff 0 1px 0; }
 #login form .errors { background:#fed7d7; border:1px solid #f00; list-style-indent:inside; margin:0 0 2em; padding:1em; }
 
 /* Show password toggle */
-#show {
-	position:absolute; right:1em; top:.8em; float:right;
-	display:none;
-}
-#show + label {
-	position:absolute!important; height:14px; width:24px; right:1em; top:1.25em!important;
-	background-image:url("../img/actions/toggle.png"); background-repeat:no-repeat; opacity:.3;
+#show { position:absolute; right:1em; top:.8em; float:right; }
+#show, #personal-show { display:none; }
+#show + label { right:1em; top:1.25em!important; }
+#show:checked + label, #personal-show:checked + label { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter:alpha(opacity=80); opacity:.8; }
+#show + label, #personal-show + label { 
+	position:absolute!important; height:14px; width:24px;
+	background-image:url("../img/actions/toggle.png"); background-repeat:no-repeat;
+	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter:alpha(opacity=30); opacity:.3;
 }
-#show:checked + label { opacity:.8; }
+#pass2, input[name="personal-password-clone"] { padding:0.6em 2.5em 0.4em 0.4em; width:8em;}
+#personal-show + label { margin-top:1em; margin-left:-3em; }
+#passwordbutton { margin-left:0.5em; }
 
 /* Database selector */
 #login form #selectDbType { text-align:center; }
@@ -223,30 +234,40 @@ fieldset.warning a { color:#b94a48 !important; font-weight:bold; }
 	position:fixed; top:3.5em; float:left; width:64px; padding:0; z-index:75; height:100%;
 	background:#383c43 url('../img/noise.png') repeat; border-right:1px #333 solid;
 	-moz-box-shadow:0 0 7px #000; -webkit-box-shadow:0 0 7px #000; box-shadow:0 0 7px #000;
-	overflow-x:scroll;
+	overflow:hidden;
 }
+#navigation:hover { overflow-y:auto; }
 #navigation a {
 	display:block; padding:8px 0 4px;
 	text-decoration:none; font-size:10px; text-align:center;
-	color:#fff; text-shadow:#000 0 -1px 0; opacity:.5;
+	color:#fff; text-shadow:#000 0 -1px 0;
+	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; filter:alpha(opacity=50); opacity:.5;
 	white-space:nowrap; overflow:hidden; text-overflow:ellipsis; // ellipsize long app names
 }
-	#navigation a:hover, #navigation a:focus { opacity:.8; }
-	#navigation a.active { opacity:1; }
+	#navigation a:hover, #navigation a:focus { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter:alpha(opacity=80); opacity:.8; }
+	#navigation a.active { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
 	#navigation .icon { display:block; width:32px; height:32px; margin:0 16px 0; }
 	#navigation li:first-child a { padding-top:16px; }
+
+
+/* USER MENU */
 #settings { float:right; margin-top:7px; color:#bbb; text-shadow:0 -1px 0 #000; }
 #expand { padding:15px; cursor:pointer; font-weight:bold; }
 #expand:hover, #expand:focus, #expand:active { color:#fff; }
-#expand img { opacity:.7; margin-bottom:-2px; }
-#expand:hover img, #expand:focus img, #expand:active img { opacity:1; }
+#expand img { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70); opacity:.7; margin-bottom:-2px; }
+#expand:hover img, #expand:focus img, #expand:active img { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
 #expanddiv {
 	position:absolute; right:0; top:45px; z-index:76; display:none;
 	background-color:#444; border-bottom-left-radius:7px; box-shadow: 0 0 20px rgb(29,45,68);
+	background:#383c43 url('../img/noise.png') repeat; border-bottom:1px #333 solid; border-left:border-bottom:1px #333 solid;
+	-moz-box-shadow:0 0 7px rgb(29,45,68); -webkit-box-shadow:0 0 7px rgb(29,45,68); box-shadow:0 0 7px rgb(29,45,68);
 }
-	#expanddiv a { display:block; color:#fff; text-shadow:0 -1px 0 #000; padding:0 8px; opacity:.7; }
+	#expanddiv a {
+		display:block; color:#fff; text-shadow:0 -1px 0 #000; padding:0 8px;
+		-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70);opacity:.7;
+	}
 	#expanddiv a img { margin-bottom:-3px; }
-	#expanddiv a:hover, #expanddiv a:focus, #expanddiv a:active { opacity:1; }
+	#expanddiv a:hover, #expanddiv a:focus, #expanddiv a:active { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
 
 
 /* VARIOUS REUSABLE SELECTORS */
@@ -324,7 +345,7 @@ a.bookmarklet { background-color:#ddd; border:1px solid #ccc; padding:5px;paddin
 .help-iframe {width: 100%; height: 100%; margin: 0;padding: 0; border: 0; overflow: auto;}
 
 /* ---- BREADCRUMB ---- */
-div.crumb { float:left; display:block; background:url('../img/breadcrumb.svg') no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em; }
+div.crumb { float:left; display:block; background:url('../img/breadcrumb.svg') no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em;  -moz-box-sizing:border-box; box-sizing:border-box; }
 div.crumb:first-child { padding:10px 20px 10px 5px; }
 div.crumb.last { font-weight:bold; background:none; padding-right:10px; }
 div.crumb a{ padding: 0.9em 0 0.7em 0; }
diff --git a/core/img/actions/close.png b/core/img/actions/close.png
new file mode 100644
index 0000000000000000000000000000000000000000..bc0c782882deaa4f9ecf1676592ddba0cc9aacbc
Binary files /dev/null and b/core/img/actions/close.png differ
diff --git a/core/img/actions/close.svg b/core/img/actions/close.svg
new file mode 100644
index 0000000000000000000000000000000000000000..6a6d98e34ad84113dedfa7b5984ffaa8128622d9
--- /dev/null
+++ b/core/img/actions/close.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="16"
+   height="16"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="close.svg"
+   inkscape:export-filename="close.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="12.67268"
+     inkscape:cx="11.940651"
+     inkscape:cy="15.685139"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1036.3622)">
+    <path
+       style="fill:#000000;fill-opacity:1;stroke:none"
+       d="m 3,1040.3622 1,-1 4,3 4,-3 1,1 -3,4 3,4 -1,1 -4,-3 -4,3 -1,-1 3,-4 z"
+       id="path3086"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccccccccccc" />
+  </g>
+</svg>
diff --git a/core/img/actions/delete-hover.png b/core/img/actions/delete-hover.png
new file mode 100644
index 0000000000000000000000000000000000000000..08b15510d926eaddb2c59558120a8d0166c58486
Binary files /dev/null and b/core/img/actions/delete-hover.png differ
diff --git a/core/img/actions/delete-hover.svg b/core/img/actions/delete-hover.svg
new file mode 100644
index 0000000000000000000000000000000000000000..63cacd5e38e584b0afaee2265b273ab3a8063755
--- /dev/null
+++ b/core/img/actions/delete-hover.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="16"
+   height="16"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="delete.svg"
+   inkscape:export-filename="delete-hover.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="12.67268"
+     inkscape:cx="11.940651"
+     inkscape:cy="15.685139"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1036.3622)">
+    <path
+       style="fill:#d40000;fill-opacity:1;stroke:none"
+       d="m 3,1040.3622 1,-1 4,3 4,-3 1,1 -3,4 3,4 -1,1 -4,-3 -4,3 -1,-1 3,-4 z"
+       id="path3086"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccccccccccc" />
+  </g>
+</svg>
diff --git a/core/img/actions/view-close.png b/core/img/actions/view-close.png
new file mode 100644
index 0000000000000000000000000000000000000000..80339d78229a0047c048fb1560cdd11f86aebbec
Binary files /dev/null and b/core/img/actions/view-close.png differ
diff --git a/core/img/actions/view-close.svg b/core/img/actions/view-close.svg
new file mode 100644
index 0000000000000000000000000000000000000000..45d66976084e8859b414ca9ea418610f23805dc9
--- /dev/null
+++ b/core/img/actions/view-close.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="view-close.svg"
+   inkscape:export-filename="view-close.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="6.3363397"
+     inkscape:cx="4.7098147"
+     inkscape:cy="23.356371"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1020.3622)">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       d="m 6,1028.3622 2,-2 8,7 8,-7 2,2 -7,8 7,8 -2,2 -8,-7 -8,7 -2,-2 7,-8 z"
+       id="path3086"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccccccccccc" />
+  </g>
+</svg>
diff --git a/core/img/actions/view-next.png b/core/img/actions/view-next.png
new file mode 100644
index 0000000000000000000000000000000000000000..b76bea06713c6bd66eb4913a70f8ce88b55d5829
Binary files /dev/null and b/core/img/actions/view-next.png differ
diff --git a/core/img/actions/view-next.svg b/core/img/actions/view-next.svg
new file mode 100644
index 0000000000000000000000000000000000000000..d5642f1a11cb50d4bd0c81bad1d1a732e4c45a0a
--- /dev/null
+++ b/core/img/actions/view-next.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="view-next.svg"
+   inkscape:export-filename="view-next.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="6.3363398"
+     inkscape:cx="30.082863"
+     inkscape:cy="19.387471"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1020.3622)">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       d="m 9,1024.3622 2,-2 14,14 -14,14 -2,-2 10,-12 z"
+       id="path3086"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccccc" />
+  </g>
+</svg>
diff --git a/core/img/actions/view-pause.png b/core/img/actions/view-pause.png
new file mode 100644
index 0000000000000000000000000000000000000000..64264ff9281a2114a7c662b93c96018ba5da9777
Binary files /dev/null and b/core/img/actions/view-pause.png differ
diff --git a/core/img/actions/view-pause.svg b/core/img/actions/view-pause.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0edc6f14e28059dce9fed6cea3c1235ab77bcffc
--- /dev/null
+++ b/core/img/actions/view-pause.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="pause.svg"
+   inkscape:export-filename="view-pause.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="6.3363397"
+     inkscape:cx="8.9383019"
+     inkscape:cy="10.400115"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1020.3622)">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       d="m 6,1026.3622 0,20 8,0 0,-20 -8,0 z m 12,0 0,20 8,0 0,-20 -8,0 z"
+       id="path3086"
+       inkscape:connector-curvature="0" />
+  </g>
+</svg>
diff --git a/core/img/actions/view-play.png b/core/img/actions/view-play.png
new file mode 100644
index 0000000000000000000000000000000000000000..0080d45b5cdc57d396bba4ade8c42b36ea197edd
Binary files /dev/null and b/core/img/actions/view-play.png differ
diff --git a/core/img/actions/view-play.svg b/core/img/actions/view-play.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0bdc63bf7e1d07e21af60d0e8982c35059750be0
--- /dev/null
+++ b/core/img/actions/view-play.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="play.svg"
+   inkscape:export-filename="view-play.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="6.3363397"
+     inkscape:cx="12.629914"
+     inkscape:cy="9.5218526"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1020.3622)">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       d="m 4,1024.3622 24,12 -24,12 z"
+       id="path3086"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="cccc" />
+  </g>
+</svg>
diff --git a/core/img/actions/view-previous.png b/core/img/actions/view-previous.png
new file mode 100644
index 0000000000000000000000000000000000000000..82943c23a59ca65b54c2882c4a2ea8901fb42998
Binary files /dev/null and b/core/img/actions/view-previous.png differ
diff --git a/core/img/actions/view-previous.svg b/core/img/actions/view-previous.svg
new file mode 100644
index 0000000000000000000000000000000000000000..df1f49511d070184f4f5d98311b8e2d60190d5d8
--- /dev/null
+++ b/core/img/actions/view-previous.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3875"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="view-next.svg"
+   inkscape:export-filename="view-previous.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3877" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="12.67268"
+     inkscape:cx="13.313675"
+     inkscape:cy="18.927817"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3883"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       snapvisiblegridlinesonly="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata3880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1020.3622)">
+    <path
+       sodipodi:nodetypes="ccccccc"
+       inkscape:connector-curvature="0"
+       id="path2984"
+       d="m 23,1024.3622 -2,-2 -14,14 14,14 2,-2 -10,-12 z"
+       style="fill:#ffffff;fill-opacity:1;stroke:none" />
+  </g>
+</svg>
diff --git a/core/img/appstore.png b/core/img/appstore.png
new file mode 100644
index 0000000000000000000000000000000000000000..009b2b51b98ae5ccaa835aa56a350142dfb2e827
Binary files /dev/null and b/core/img/appstore.png differ
diff --git a/core/img/desktopapp.png b/core/img/desktopapp.png
new file mode 100644
index 0000000000000000000000000000000000000000..182ddd2cf18891878210352e9ac0f34d7d89409d
Binary files /dev/null and b/core/img/desktopapp.png differ
diff --git a/core/img/desktopapp.svg b/core/img/desktopapp.svg
new file mode 100644
index 0000000000000000000000000000000000000000..93d91e461a613db6c49ce5d498e0e9971492ac98
--- /dev/null
+++ b/core/img/desktopapp.svg
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   width="170"
+   height="60"
+   viewBox="0 0 1346.4 475.2"
+   enable-background="new 0 0 792 612"
+   xml:space="preserve"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="desktopapp.svg"
+   inkscape:export-filename="desktopapp.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90"><metadata
+   id="metadata3043"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+   id="defs3041" /><sodipodi:namedview
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="1280"
+   inkscape:window-height="773"
+   id="namedview3039"
+   showgrid="true"
+   fit-margin-top="3"
+   fit-margin-left="0"
+   fit-margin-right="0"
+   fit-margin-bottom="3"
+   inkscape:zoom="2"
+   inkscape:cx="155.97228"
+   inkscape:cy="56.168028"
+   inkscape:window-x="0"
+   inkscape:window-y="-1"
+   inkscape:window-maximized="1"
+   inkscape:current-layer="Layer_1"
+   showguides="true"
+   inkscape:guide-bbox="true"><inkscape:grid
+     type="xygrid"
+     id="grid3146"
+     empspacing="4"
+     visible="true"
+     enabled="true"
+     snapvisiblegridlinesonly="true"
+     originx="-3.5865408e-16px"
+     originy="-3px" /></sodipodi:namedview>
+
+
+<rect
+   id="rect3026"
+   width="1346.3999"
+   height="475.20016"
+   x="-2.8405402e-15"
+   y="-3.5527137e-15"
+   rx="50"
+   ry="50"
+   style="fill:#1a1a1a" /><path
+   d="m 150.48,126.72 c -11.88,0 -23.76,11.88 -23.76,23.76 l 0,166.32 -47.52,23.76 0,11.88 c 0,0 0,11.88 11.88,11.88 l 356.4,0 c 11.88,0 11.88,-11.88 11.88,-11.88 l 0,-11.88 -47.52,-23.76 0,-166.32 c 0,-11.88 -11.88,-23.76 -23.76,-23.76 z m 0,23.66718 237.6,0 0,142.65282 -237.6,0 z"
+   id="path3037"
+   inkscape:connector-curvature="0"
+   sodipodi:nodetypes="sscccsscccsssccccc"
+   style="fill:#ffffff" /><text
+   xml:space="preserve"
+   style="font-size:316.79998778999998876px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans"
+   x="451.44"
+   y="239.58"
+   id="text2983"
+   sodipodi:linespacing="125%"><tspan
+     sodipodi:role="line"
+     id="tspan2985"
+     x="451.44"
+     y="239.58"
+     style="font-size:126.71999999999999886px;font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-family:FreeSans;-inkscape-font-specification:FreeSans Semi-Bold;fill:#ffffff">Desktop app</tspan></text>
+<text
+   xml:space="preserve"
+   style="font-size:316.79998778999998876px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans"
+   x="493.01996"
+   y="342.54001"
+   id="text2991"
+   sodipodi:linespacing="125%"><tspan
+     sodipodi:role="line"
+     id="tspan2993"
+     x="493.01996"
+     y="342.54001"
+     style="font-size:71.28000000000000114px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:FreeSans;-inkscape-font-specification:FreeSans;fill:#ffffff">Windows, OS X, Linux</tspan></text>
+</svg>
\ No newline at end of file
diff --git a/core/img/googleplay.png b/core/img/googleplay.png
new file mode 100644
index 0000000000000000000000000000000000000000..2d9ad6296080509464d3d412c8b3e93254626c3f
Binary files /dev/null and b/core/img/googleplay.png differ
diff --git a/core/img/icon-error.png b/core/img/icon-error.png
deleted file mode 100644
index edeaceb16980c6af896cfb1b5f46447f3e91b5d1..0000000000000000000000000000000000000000
Binary files a/core/img/icon-error.png and /dev/null differ
diff --git a/core/img/icon-error.svg b/core/img/icon-error.svg
deleted file mode 100644
index bba639bfd7e564de5fec8374f1c91c4b068198c5..0000000000000000000000000000000000000000
--- a/core/img/icon-error.svg
+++ /dev/null
@@ -1,813 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   id="Layer_1"
-   x="0px"
-   y="0px"
-   width="32"
-   height="32"
-   viewBox="0 0 32 31.999997"
-   enable-background="new 0 0 595.275 311.111"
-   xml:space="preserve"
-   inkscape:version="0.48.3.1 r9886"
-   sodipodi:docname="icon-error-light.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/icon-error-light.png"
-   inkscape:export-xdpi="89.826416"
-   inkscape:export-ydpi="89.826416"><metadata
-   id="metadata327"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-   id="defs325"><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_1_"
-   id="linearGradient3353"
-   gradientUnits="userSpaceOnUse"
-   x1="288.49411"
-   y1="55.888199"
-   x2="288.49411"
-   y2="339.22189" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_2_"
-   id="linearGradient3355"
-   gradientUnits="userSpaceOnUse"
-   x1="251.2114"
-   y1="55.888199"
-   x2="251.2114"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_3_"
-   id="linearGradient3357"
-   gradientUnits="userSpaceOnUse"
-   x1="293.22461"
-   y1="55.888199"
-   x2="293.22461"
-   y2="339.22171" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_4_"
-   id="linearGradient3359"
-   gradientUnits="userSpaceOnUse"
-   x1="375.33401"
-   y1="55.888199"
-   x2="375.33401"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_5_"
-   id="linearGradient3361"
-   gradientUnits="userSpaceOnUse"
-   x1="334.49411"
-   y1="55.888199"
-   x2="334.49411"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_6_"
-   id="linearGradient3363"
-   gradientUnits="userSpaceOnUse"
-   x1="458.42679"
-   y1="55.8867"
-   x2="458.42679"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_7_"
-   id="linearGradient3365"
-   gradientUnits="userSpaceOnUse"
-   x1="413.16309"
-   y1="55.888199"
-   x2="413.16309"
-   y2="339.22131" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_8_"
-   id="linearGradient3367"
-   gradientUnits="userSpaceOnUse"
-   x1="290.76169"
-   y1="55.8867"
-   x2="290.76169"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3369"
-   gradientUnits="userSpaceOnUse"
-   x1="346.77341"
-   y1="55.888199"
-   x2="346.77341"
-   y2="339.22119" />
-	<linearGradient
-   y2="339.22189"
-   x2="288.49411"
-   y1="55.888199"
-   x1="288.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_1_">
-		<stop
-   id="stop261"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop263"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="251.2114"
-   y1="55.888199"
-   x1="251.2114"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_2_">
-		<stop
-   id="stop268"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop270"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22171"
-   x2="293.22461"
-   y1="55.888199"
-   x1="293.22461"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_3_">
-		<stop
-   id="stop275"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop277"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="375.33401"
-   y1="55.888199"
-   x1="375.33401"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_4_">
-		<stop
-   id="stop282"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop284"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="334.49411"
-   y1="55.888199"
-   x1="334.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_5_">
-		<stop
-   id="stop289"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop291"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="458.42679"
-   y1="55.8867"
-   x1="458.42679"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_6_">
-		<stop
-   id="stop296"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop298"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22131"
-   x2="413.16309"
-   y1="55.888199"
-   x1="413.16309"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_7_">
-		<stop
-   id="stop303"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop305"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="290.76169"
-   y1="55.8867"
-   x1="290.76169"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_8_">
-		<stop
-   id="stop310"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop312"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22119"
-   x2="346.77341"
-   y1="55.888199"
-   x1="346.77341"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_9_">
-		<stop
-   id="stop317"
-   style="stop-color:#b23636;stop-opacity:1;"
-   offset="0" />
-		<stop
-   id="stop319"
-   style="stop-color:#b20000;stop-opacity:1;"
-   offset="1" />
-	</linearGradient>
-	
-<linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient3475"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   id="linearGradient3587-6-5-26"><stop
-     id="stop3589-9-2-45"
-     style="stop-color:#b20000;stop-opacity:1;"
-     offset="0" /><stop
-     id="stop3591-7-4-20"
-     style="stop-color:#b23636;stop-opacity:1;"
-     offset="1" /></linearGradient><linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient7590"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
-   id="linearGradient7614"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="translate(15.071012,45.700897)"
-   x1="-2.4040222"
-   y1="4.4573336"
-   x2="-2.4040222"
-   y2="18.967093" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3956"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)"
-   x1="58.866638"
-   y1="24.928007"
-   x2="58.866638"
-   y2="93.882034" /></defs><sodipodi:namedview
-   pagecolor="#ffffff"
-   bordercolor="#666666"
-   borderopacity="1"
-   objecttolerance="10"
-   gridtolerance="10"
-   guidetolerance="10"
-   inkscape:pageopacity="0"
-   inkscape:pageshadow="2"
-   inkscape:window-width="1280"
-   inkscape:window-height="800"
-   id="namedview323"
-   showgrid="true"
-   inkscape:zoom="5.6568542"
-   inkscape:cx="20.718961"
-   inkscape:cy="-0.99657908"
-   inkscape:window-x="0"
-   inkscape:window-y="-31"
-   inkscape:window-maximized="1"
-   inkscape:current-layer="Layer_1"
-   units="px"
-   fit-margin-top="0"
-   fit-margin-left="0"
-   fit-margin-right="0"
-   fit-margin-bottom="0"
-   showguides="true"
-   inkscape:guide-bbox="true"><inkscape:grid
-     type="xygrid"
-     id="grid3152"
-     empspacing="2"
-     visible="true"
-     enabled="true"
-     snapvisiblegridlinesonly="true"
-     dotted="false" /></sodipodi:namedview>
-<pattern
-   y="565.223"
-   width="69"
-   height="69"
-   patternUnits="userSpaceOnUse"
-   id="Polka_Dot_Pattern"
-   viewBox="2.125 -70.896 69 69"
-   overflow="visible">
-	<g
-   id="g4">
-		<polygon
-   fill="none"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon6" />
-		<polygon
-   fill="#F6BB60"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon8" />
-		<g
-   id="g10">
-			<path
-   fill="#FFFFFF"
-   d="M61.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path12" />
-			<path
-   fill="#FFFFFF"
-   d="M54.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path14" />
-			<path
-   fill="#FFFFFF"
-   d="M46.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path16" />
-			<path
-   fill="#FFFFFF"
-   d="M38.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path18" />
-			<path
-   fill="#FFFFFF"
-   d="M31.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path20" />
-			<path
-   fill="#FFFFFF"
-   d="M23.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path22" />
-			<path
-   fill="#FFFFFF"
-   d="M15.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path24" />
-			<path
-   fill="#FFFFFF"
-   d="M8.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path26" />
-			<path
-   fill="#FFFFFF"
-   d="M0.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19C0.361-71.362,0.3-71.4,0.248-71.335     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path28" />
-		</g>
-		<g
-   id="g30">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path32" />
-		</g>
-		<path
-   fill="#FFFFFF"
-   d="M0.495-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128    c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161    c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631    c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45    c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221    c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337    c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207    c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224C0.5-71.68,0.503-71.744,0.51-71.626    c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path34" />
-		<g
-   id="g36">
-			<g
-   id="g38">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path40" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path42" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path44" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path46" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path48" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path50" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path52" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path54" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path56" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143C2-61.45,2.217-61.397,2.391-61.46c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path58" />
-			</g>
-			<g
-   id="g60">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path62" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path64" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path66" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path68" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path70" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path72" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path74" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path76" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path78" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-56.374,0.503-56.438,0.51-56.32      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path80" />
-			</g>
-			<g
-   id="g82">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path84" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path86" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path88" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path90" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path92" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path94" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path96" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path98" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path100" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path102" />
-			</g>
-			<g
-   id="g104">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path106" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path108" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path110" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path112" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path114" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path116" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path118" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path120" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      C8.15-41.004,8.149-41.02,8.14-41.04"
-   id="path122" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path124" />
-			</g>
-			<g
-   id="g126">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path128" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path130" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path132" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path134" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path136" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path138" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path140" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path142" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path144" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-33.416,0.503-33.48,0.51-33.362      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path146" />
-			</g>
-			<g
-   id="g148">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path150" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path152" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path154" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path156" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path158" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path160" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path162" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path164" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path166" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path168" />
-			</g>
-			<g
-   id="g170">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path172" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path174" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path176" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path178" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path180" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path182" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path184" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path186" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path188" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-18.11,0.503-18.175,0.51-18.057      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path190" />
-			</g>
-			<g
-   id="g192">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362C69-9.692,69.159-9.523,69.154-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path194" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path196" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path198" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path200" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path202" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path204" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path206" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053C17.933-7.969,17.839-8.227,18-8.34      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path208" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C7.915-10.05,7.866-9.836,7.886-9.75C7.717-9.692,7.876-9.523,7.871-9.4C7.868-9.351,7.83-9.295,7.826-9.239      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      C9.114-7.652,9.321-7.799,9.48-7.837c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path210" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C0.254-10.05,0.205-9.836,0.225-9.75C0.056-9.692,0.215-9.523,0.21-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-8.671,0.501-8.456,0.668-8.325c0.19,0.148,0.365,0.572,0.608,0.631      C1.454-7.652,1.66-7.799,1.819-7.837C2-7.88,2.217-7.827,2.391-7.89c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46C3.477-8.933,3.471-8.995,3.5-9.071      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path212" />
-			</g>
-		</g>
-		<g
-   id="g214">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-2.778c0.018,0.072,0.008,0.127-0.026,0.19C69.361-2.487,69.3-2.525,69.248-2.46     c-0.051,0.062-0.099,0.276-0.079,0.362C69-2.04,69.159-1.871,69.154-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C70.397,0,70.604-0.146,70.763-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path216" />
-			<path
-   fill="#FFFFFF"
-   d="M61.778-2.778c0.018,0.072,0.007,0.127-0.026,0.19C61.7-2.487,61.64-2.525,61.587-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C62.737,0,62.943-0.146,63.103-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C61.915-3.117,61.78-3.02,61.781-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path218" />
-			<path
-   fill="#FFFFFF"
-   d="M54.118-2.778c0.018,0.072,0.007,0.127-0.026,0.19C54.04-2.487,53.98-2.525,53.927-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C55.077,0,55.283-0.146,55.442-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C54.255-3.117,54.12-3.02,54.121-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path220" />
-			<path
-   fill="#FFFFFF"
-   d="M46.458-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C47.416,0,47.623-0.146,47.782-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C46.594-3.117,46.459-3.02,46.46-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path222" />
-			<path
-   fill="#FFFFFF"
-   d="M38.797-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C39.756,0,39.962-0.146,40.122-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C38.934-3.117,38.799-3.02,38.8-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path224" />
-			<path
-   fill="#FFFFFF"
-   d="M31.137-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C32.095,0,32.302-0.146,32.461-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C31.273-3.117,31.139-3.02,31.14-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path226" />
-			<path
-   fill="#FFFFFF"
-   d="M23.477-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C24.435,0,24.642-0.146,24.801-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path228" />
-			<path
-   fill="#FFFFFF"
-   d="M15.816-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C16.774,0,16.981-0.146,17.14-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     C15.81-2.74,15.809-2.756,15.8-2.776"
-   id="path230" />
-			<path
-   fill="#FFFFFF"
-   d="M8.156-2.778c0.018,0.072,0.007,0.127-0.026,0.19C8.077-2.487,8.018-2.525,7.965-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35C7.868-1.698,7.83-1.643,7.826-1.587     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C9.114,0,9.321-0.146,9.48-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C8.954-3.54,8.847-3.448,8.692-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C8.292-3.117,8.158-3.02,8.159-2.92C8.16-2.805,8.164-2.869,8.17-2.751     C8.15-2.74,8.149-2.756,8.14-2.776"
-   id="path232" />
-			<path
-   fill="#FFFFFF"
-   d="M0.495-2.778c0.018,0.072,0.008,0.127-0.026,0.19C0.417-2.487,0.356-2.525,0.304-2.46     C0.253-2.397,0.205-2.184,0.225-2.098C0.056-2.04,0.215-1.871,0.21-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-1.019,0.501-0.804,0.668-0.673c0.19,0.148,0.365,0.572,0.608,0.631     C1.454,0,1.66-0.146,1.819-0.185C2-0.228,2.217-0.175,2.391-0.237c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46C3.477-1.28,3.471-1.343,3.5-1.419     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C1.293-3.54,1.187-3.448,1.031-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C0.632-3.117,0.498-3.02,0.498-2.92C0.5-2.805,0.503-2.869,0.51-2.751     C0.489-2.74,0.488-2.756,0.479-2.776"
-   id="path234" />
-		</g>
-	</g>
-</pattern>
-
-<path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.2;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="M 14.5 7.6875 C 12.118202 7.6875 10.1875 9.6181999 10.1875 12 C 10.1875 12.98178 10.511318 13.90142 11.0625 14.625 C 12.258208 13.24105 14.029595 12.34375 16 12.34375 C 16.964013 12.34375 17.863805 12.56114 18.6875 12.9375 C 18.75419 12.6359 18.78125 12.32193 18.78125 12 C 18.78125 9.6181999 16.8818 7.6875 14.5 7.6875 z M 8.875 9.6875 C 7.634625 9.6875 6.625 10.69712 6.625 11.9375 C 6.625 12.3391 6.72279 12.70624 6.90625 13.03125 C 7.65474 12.60902 8.5183475 12.375 9.4375 12.375 C 9.526205 12.375 9.63115 12.371 9.71875 12.375 C 9.70882 12.2497 9.6875 12.12826 9.6875 12 C 9.6875 11.30913 9.83008 10.65627 10.09375 10.0625 C 9.7387425 9.8244499 9.3358175 9.6875 8.875 9.6875 z M 19.21875 11.25 C 19.25778 11.49606 19.28125 11.74306 19.28125 12 C 19.28125 12.39985 19.248935 12.78521 19.15625 13.15625 C 20.2429 13.75761 21.12418 14.65908 21.71875 15.75 C 22.335455 15.42894 23.01983 15.23643 23.75 15.1875 C 23.56182 12.98063 21.755825 11.25 19.5 11.25 C 19.40836 11.25 19.30897 11.2444 19.21875 11.25 z M 16 12.84375 C 12.66715 12.84375 9.96875 15.54192 9.96875 18.875 C 9.96875 22.20772 12.667013 24.90625 16 24.90625 C 19.33299 24.90625 22.03125 22.20771 22.03125 18.875 C 22.03125 15.54193 19.332853 12.84375 16 12.84375 z M 9.4375 12.875 C 6.85184 12.875 4.78125 14.94559 4.78125 17.53125 C 4.78125 19.05338 5.501155 20.42736 6.625 21.28125 C 7.09879 20.36744 8.0570875 19.71875 9.15625 19.71875 C 9.289095 19.71875 9.403215 19.7323 9.53125 19.75 C 9.491058 19.45758 9.46875 19.1784 9.46875 18.875 C 9.46875 17.4244 9.947247 16.08344 10.75 15 C 10.26948 14.39871 9.9278275 13.66206 9.78125 12.875 C 9.6726175 12.867 9.5480625 12.875 9.4375 12.875 z M 12.8125 15 L 16 17.40625 L 19.1875 15 L 20 15.8125 L 17.59375 19 L 20 22.1875 L 19.1875 23 L 16 20.59375 L 12.8125 23 L 12 22.1875 L 14.40625 19 L 12 15.8125 L 12.8125 15 z M 24.09375 15.65625 C 23.308625 15.65625 22.586838 15.84758 21.9375 16.1875 C 22.306215 17.00423 22.5 17.92139 22.5 18.875 C 22.5 20.66055 21.78996 22.2909 20.625 23.46875 C 21.48082 24.41888 22.712632 25 24.09375 25 C 26.67941 25 28.78125 22.89816 28.78125 20.3125 C 28.78125 17.726839 26.67941 15.65625 24.09375 15.65625 z M 4.3125 16.28125 C 1.9306325 16.28125 0 18.18063 0 20.5625 C 0 22.94437 1.9306325 24.875 4.3125 24.875 C 5.2190732 24.875 6.056265 24.602439 6.75 24.125 C 6.463335 23.67955 6.3125 23.129619 6.3125 22.5625 C 6.3125 22.268139 6.3542845 21.98594 6.4375 21.71875 C 5.13876 20.78017 4.28125 19.25317 4.28125 17.53125 C 4.28125 17.09375 4.3347293 16.6872 4.4375 16.28125 C 4.394842 16.28025 4.3554647 16.28125 4.3125 16.28125 z M 29.625 19.96875 C 29.497935 19.96875 29.371487 19.9807 29.25 20 C 29.2567 20.1074 29.28125 20.20342 29.28125 20.3125 C 29.28125 21.68587 28.720337 22.9487 27.84375 23.875 C 28.275 24.37649 28.908165 24.6875 29.625 24.6875 C 30.93072 24.6875 32 23.64947 32 22.34375 C 32 21.03803 30.93072 19.96875 29.625 19.96875 z M 9.15625 20.21875 C 7.8505975 20.21875 6.78125 21.25684 6.78125 22.5625 C 6.78125 23.86815 7.8505975 24.9375 9.15625 24.9375 C 10.15705 24.9375 10.99878 24.31592 11.34375 23.4375 C 10.50201 22.5802 9.8922975 21.49648 9.625 20.28125 C 9.4685825 20.24891 9.322335 20.21875 9.15625 20.21875 z "
-   transform="translate(0,-1.5e-6)"
-   id="path7625" /><path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.80000000000000004;color:#000000;fill:url(#linearGradient3956);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="m 14.5,6.687498 c -2.381798,0 -4.3125,1.9307 -4.3125,4.312501 0,0.98178 0.323818,1.90142 0.875,2.625 1.195708,-1.38395 2.967095,-2.28125 4.9375,-2.28125 0.964013,0 1.863805,0.21739 2.6875,0.59375 0.06669,-0.3016 0.09375,-0.61557 0.09375,-0.9375 0,-2.381801 -1.89945,-4.312501 -4.28125,-4.312501 z m -5.625,2 c -1.240375,0 -2.25,1.00963 -2.25,2.250001 0,0.4016 0.09779,0.76874 0.28125,1.09375 0.74849,-0.422231 1.6120975,-0.65625 2.53125,-0.65625 0.088705,0 0.19365,-0.004 0.28125,0 -0.00993,-0.1253 -0.03125,-0.246741 -0.03125,-0.375 0,-0.69086 0.14258,-1.343731 0.40625,-1.937501 -0.3550075,-0.238049 -0.7579325,-0.375 -1.21875,-0.375 z m 10.34375,1.562501 c 0.03903,0.24606 0.0625,0.49307 0.0625,0.75 0,0.39985 -0.03232,0.78521 -0.125,1.15625 1.08665,0.60137 1.96793,1.50283 2.5625,2.59375 0.616705,-0.32106 1.30108,-0.51356 2.03125,-0.5625 -0.18818,-2.20687 -1.994175,-3.9375 -4.25,-3.9375 -0.09164,0 -0.19103,-0.0056 -0.28125,0 z M 16,11.843749 c -3.33285,0 -6.03125,2.69817 -6.03125,6.031249 0,3.33272 2.698263,6.03125 6.03125,6.03125 3.33299,0 6.03125,-2.69854 6.03125,-6.03125 0,-3.333069 -2.698397,-6.031249 -6.03125,-6.031249 z m -6.5625,0.03125 c -2.58566,0 -4.65625,2.07058 -4.65625,4.656249 0,1.52212 0.719905,2.89611 1.84375,3.75 0.47379,-0.913811 1.4320875,-1.5625 2.53125,-1.5625 0.132845,0 0.246965,0.01355 0.375,0.03125 -0.040192,-0.29242 -0.0625,-0.5716 -0.0625,-0.875 0,-1.450599 0.478497,-2.791559 1.28125,-3.874999 -0.48052,-0.60129 -0.8221725,-1.33794 -0.96875,-2.125 -0.1086325,-0.008 -0.2331875,0 -0.34375,0 z m 3.375,2.125 L 16,16.406248 19.1875,13.999999 20,14.812499 17.59375,17.999998 20,21.187498 19.1875,21.999998 16,19.593748 12.8125,21.999998 12,21.187498 14.40625,17.999998 12,14.812499 l 0.8125,-0.8125 z m 11.28125,0.65625 c -0.785125,0 -1.506912,0.19133 -2.15625,0.53125 0.368715,0.816729 0.5625,1.733889 0.5625,2.687499 0,1.78555 -0.71004,3.4159 -1.875,4.59375 0.85582,0.950131 2.087632,1.53125 3.46875,1.53125 2.58566,0 4.6875,-2.10184 4.6875,-4.6875 0,-2.58566 -2.10184,-4.656249 -4.6875,-4.656249 z m -19.78125,0.625 C 1.9306325,15.281249 0,17.180628 0,19.562498 c 0,2.38187 1.9306325,4.3125 4.3125,4.3125 0.9065732,0 1.743765,-0.272561 2.4375,-0.75 -0.286665,-0.44545 -0.4375,-0.99538 -0.4375,-1.5625 0,-0.29436 0.041785,-0.57656 0.125,-0.84375 -1.29874,-0.938579 -2.15625,-2.465589 -2.15625,-4.1875 0,-0.43751 0.053479,-0.844049 0.15625,-1.249999 -0.042658,-0.001 -0.082035,0 -0.125,0 z m 25.3125,3.687499 c -0.127065,0 -0.253513,0.01195 -0.375,0.03125 0.0067,0.1074 0.03125,0.203421 0.03125,0.3125 0,1.373371 -0.560913,2.6362 -1.4375,3.5625 0.43125,0.50149 1.064415,0.8125 1.78125,0.8125 1.30572,0 2.375,-1.03803 2.375,-2.34375 0,-1.30572 -1.06928,-2.375 -2.375,-2.375 z m -20.46875,0.25 c -1.3056525,0 -2.375,1.03809 -2.375,2.34375 0,1.30565 1.0693475,2.375 2.375,2.375 1.0008,0 1.84253,-0.621579 2.1875,-1.5 -0.84174,-0.857299 -1.4514525,-1.941019 -1.71875,-3.15625 -0.1564175,-0.03234 -0.302665,-0.0625 -0.46875,-0.0625 z"
-   id="circle238"
-   inkscape:connector-curvature="0" />
-
-
-
-
-
-
-
-
-
-
-</svg>
\ No newline at end of file
diff --git a/core/img/icon-sync.png b/core/img/icon-sync.png
deleted file mode 100644
index c38ca87a237bd0be449e41c845c8f7add91b230c..0000000000000000000000000000000000000000
Binary files a/core/img/icon-sync.png and /dev/null differ
diff --git a/core/img/icon-sync.svg b/core/img/icon-sync.svg
deleted file mode 100644
index 0806572f2c717fea53640cd450f8dc74982f02a9..0000000000000000000000000000000000000000
--- a/core/img/icon-sync.svg
+++ /dev/null
@@ -1,815 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   id="Layer_1"
-   x="0px"
-   y="0px"
-   width="32"
-   height="32"
-   viewBox="0 0 32 31.999997"
-   enable-background="new 0 0 595.275 311.111"
-   xml:space="preserve"
-   inkscape:version="0.48.3.1 r9886"
-   sodipodi:docname="icon-sync-light.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/icon-sync-light.png"
-   inkscape:export-xdpi="89.826416"
-   inkscape:export-ydpi="89.826416"><metadata
-   id="metadata327"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-   id="defs325"><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_1_"
-   id="linearGradient3353"
-   gradientUnits="userSpaceOnUse"
-   x1="288.49411"
-   y1="55.888199"
-   x2="288.49411"
-   y2="339.22189" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_2_"
-   id="linearGradient3355"
-   gradientUnits="userSpaceOnUse"
-   x1="251.2114"
-   y1="55.888199"
-   x2="251.2114"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_3_"
-   id="linearGradient3357"
-   gradientUnits="userSpaceOnUse"
-   x1="293.22461"
-   y1="55.888199"
-   x2="293.22461"
-   y2="339.22171" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_4_"
-   id="linearGradient3359"
-   gradientUnits="userSpaceOnUse"
-   x1="375.33401"
-   y1="55.888199"
-   x2="375.33401"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_5_"
-   id="linearGradient3361"
-   gradientUnits="userSpaceOnUse"
-   x1="334.49411"
-   y1="55.888199"
-   x2="334.49411"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_6_"
-   id="linearGradient3363"
-   gradientUnits="userSpaceOnUse"
-   x1="458.42679"
-   y1="55.8867"
-   x2="458.42679"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_7_"
-   id="linearGradient3365"
-   gradientUnits="userSpaceOnUse"
-   x1="413.16309"
-   y1="55.888199"
-   x2="413.16309"
-   y2="339.22131" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_8_"
-   id="linearGradient3367"
-   gradientUnits="userSpaceOnUse"
-   x1="290.76169"
-   y1="55.8867"
-   x2="290.76169"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3369"
-   gradientUnits="userSpaceOnUse"
-   x1="346.77341"
-   y1="55.888199"
-   x2="346.77341"
-   y2="339.22119" />
-	<linearGradient
-   y2="339.22189"
-   x2="288.49411"
-   y1="55.888199"
-   x1="288.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_1_">
-		<stop
-   id="stop261"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop263"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="251.2114"
-   y1="55.888199"
-   x1="251.2114"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_2_">
-		<stop
-   id="stop268"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop270"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22171"
-   x2="293.22461"
-   y1="55.888199"
-   x1="293.22461"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_3_">
-		<stop
-   id="stop275"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop277"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="375.33401"
-   y1="55.888199"
-   x1="375.33401"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_4_">
-		<stop
-   id="stop282"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop284"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="334.49411"
-   y1="55.888199"
-   x1="334.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_5_">
-		<stop
-   id="stop289"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop291"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="458.42679"
-   y1="55.8867"
-   x1="458.42679"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_6_">
-		<stop
-   id="stop296"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop298"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22131"
-   x2="413.16309"
-   y1="55.888199"
-   x1="413.16309"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_7_">
-		<stop
-   id="stop303"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop305"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="290.76169"
-   y1="55.8867"
-   x1="290.76169"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_8_">
-		<stop
-   id="stop310"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop312"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22119"
-   x2="346.77341"
-   y1="55.888199"
-   x1="346.77341"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_9_">
-		<stop
-   id="stop317"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop319"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-<linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient3475"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   id="linearGradient3587-6-5-26"><stop
-     id="stop3589-9-2-45"
-     style="stop-color:#000000;stop-opacity:1"
-     offset="0" /><stop
-     id="stop3591-7-4-20"
-     style="stop-color:#363636;stop-opacity:1"
-     offset="1" /></linearGradient><linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient7590"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
-   id="linearGradient7614"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="translate(15.071012,45.700897)"
-   x1="-2.4040222"
-   y1="4.4573336"
-   x2="-2.4040222"
-   y2="18.967093" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3342"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)"
-   x1="58.866638"
-   y1="24.928007"
-   x2="58.866638"
-   y2="93.882034" /></defs><sodipodi:namedview
-   pagecolor="#ffffff"
-   bordercolor="#666666"
-   borderopacity="1"
-   objecttolerance="10"
-   gridtolerance="10"
-   guidetolerance="10"
-   inkscape:pageopacity="0"
-   inkscape:pageshadow="2"
-   inkscape:window-width="1280"
-   inkscape:window-height="800"
-   id="namedview323"
-   showgrid="true"
-   inkscape:zoom="5.6568543"
-   inkscape:cx="30.833096"
-   inkscape:cy="24.980259"
-   inkscape:window-x="0"
-   inkscape:window-y="-31"
-   inkscape:window-maximized="1"
-   inkscape:current-layer="Layer_1"
-   units="px"
-   fit-margin-top="0"
-   fit-margin-left="0"
-   fit-margin-right="0"
-   fit-margin-bottom="0"
-   showguides="true"
-   inkscape:guide-bbox="true"><inkscape:grid
-     type="xygrid"
-     id="grid3152"
-     empspacing="2"
-     visible="true"
-     enabled="true"
-     snapvisiblegridlinesonly="true"
-     dotted="false" /></sodipodi:namedview>
-<pattern
-   y="565.223"
-   width="69"
-   height="69"
-   patternUnits="userSpaceOnUse"
-   id="Polka_Dot_Pattern"
-   viewBox="2.125 -70.896 69 69"
-   overflow="visible">
-	<g
-   id="g4">
-		<polygon
-   fill="none"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon6" />
-		<polygon
-   fill="#F6BB60"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon8" />
-		<g
-   id="g10">
-			<path
-   fill="#FFFFFF"
-   d="M61.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path12" />
-			<path
-   fill="#FFFFFF"
-   d="M54.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path14" />
-			<path
-   fill="#FFFFFF"
-   d="M46.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path16" />
-			<path
-   fill="#FFFFFF"
-   d="M38.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path18" />
-			<path
-   fill="#FFFFFF"
-   d="M31.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path20" />
-			<path
-   fill="#FFFFFF"
-   d="M23.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path22" />
-			<path
-   fill="#FFFFFF"
-   d="M15.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path24" />
-			<path
-   fill="#FFFFFF"
-   d="M8.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path26" />
-			<path
-   fill="#FFFFFF"
-   d="M0.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19C0.361-71.362,0.3-71.4,0.248-71.335     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path28" />
-		</g>
-		<g
-   id="g30">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path32" />
-		</g>
-		<path
-   fill="#FFFFFF"
-   d="M0.495-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128    c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161    c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631    c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45    c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221    c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337    c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207    c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224C0.5-71.68,0.503-71.744,0.51-71.626    c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path34" />
-		<g
-   id="g36">
-			<g
-   id="g38">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path40" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path42" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path44" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path46" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path48" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path50" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path52" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path54" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path56" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143C2-61.45,2.217-61.397,2.391-61.46c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path58" />
-			</g>
-			<g
-   id="g60">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path62" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path64" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path66" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path68" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path70" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path72" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path74" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path76" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path78" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-56.374,0.503-56.438,0.51-56.32      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path80" />
-			</g>
-			<g
-   id="g82">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path84" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path86" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path88" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path90" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path92" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path94" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path96" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path98" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path100" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path102" />
-			</g>
-			<g
-   id="g104">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path106" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path108" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path110" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path112" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path114" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path116" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path118" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path120" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      C8.15-41.004,8.149-41.02,8.14-41.04"
-   id="path122" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path124" />
-			</g>
-			<g
-   id="g126">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path128" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path130" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path132" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path134" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path136" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path138" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path140" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path142" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path144" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-33.416,0.503-33.48,0.51-33.362      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path146" />
-			</g>
-			<g
-   id="g148">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path150" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path152" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path154" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path156" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path158" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path160" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path162" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path164" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path166" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path168" />
-			</g>
-			<g
-   id="g170">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path172" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path174" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path176" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path178" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path180" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path182" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path184" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path186" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path188" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-18.11,0.503-18.175,0.51-18.057      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path190" />
-			</g>
-			<g
-   id="g192">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362C69-9.692,69.159-9.523,69.154-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path194" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path196" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path198" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path200" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path202" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path204" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path206" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053C17.933-7.969,17.839-8.227,18-8.34      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path208" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C7.915-10.05,7.866-9.836,7.886-9.75C7.717-9.692,7.876-9.523,7.871-9.4C7.868-9.351,7.83-9.295,7.826-9.239      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      C9.114-7.652,9.321-7.799,9.48-7.837c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path210" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C0.254-10.05,0.205-9.836,0.225-9.75C0.056-9.692,0.215-9.523,0.21-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-8.671,0.501-8.456,0.668-8.325c0.19,0.148,0.365,0.572,0.608,0.631      C1.454-7.652,1.66-7.799,1.819-7.837C2-7.88,2.217-7.827,2.391-7.89c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46C3.477-8.933,3.471-8.995,3.5-9.071      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path212" />
-			</g>
-		</g>
-		<g
-   id="g214">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-2.778c0.018,0.072,0.008,0.127-0.026,0.19C69.361-2.487,69.3-2.525,69.248-2.46     c-0.051,0.062-0.099,0.276-0.079,0.362C69-2.04,69.159-1.871,69.154-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C70.397,0,70.604-0.146,70.763-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path216" />
-			<path
-   fill="#FFFFFF"
-   d="M61.778-2.778c0.018,0.072,0.007,0.127-0.026,0.19C61.7-2.487,61.64-2.525,61.587-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C62.737,0,62.943-0.146,63.103-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C61.915-3.117,61.78-3.02,61.781-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path218" />
-			<path
-   fill="#FFFFFF"
-   d="M54.118-2.778c0.018,0.072,0.007,0.127-0.026,0.19C54.04-2.487,53.98-2.525,53.927-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C55.077,0,55.283-0.146,55.442-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C54.255-3.117,54.12-3.02,54.121-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path220" />
-			<path
-   fill="#FFFFFF"
-   d="M46.458-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C47.416,0,47.623-0.146,47.782-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C46.594-3.117,46.459-3.02,46.46-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path222" />
-			<path
-   fill="#FFFFFF"
-   d="M38.797-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C39.756,0,39.962-0.146,40.122-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C38.934-3.117,38.799-3.02,38.8-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path224" />
-			<path
-   fill="#FFFFFF"
-   d="M31.137-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C32.095,0,32.302-0.146,32.461-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C31.273-3.117,31.139-3.02,31.14-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path226" />
-			<path
-   fill="#FFFFFF"
-   d="M23.477-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C24.435,0,24.642-0.146,24.801-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path228" />
-			<path
-   fill="#FFFFFF"
-   d="M15.816-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C16.774,0,16.981-0.146,17.14-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     C15.81-2.74,15.809-2.756,15.8-2.776"
-   id="path230" />
-			<path
-   fill="#FFFFFF"
-   d="M8.156-2.778c0.018,0.072,0.007,0.127-0.026,0.19C8.077-2.487,8.018-2.525,7.965-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35C7.868-1.698,7.83-1.643,7.826-1.587     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C9.114,0,9.321-0.146,9.48-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C8.954-3.54,8.847-3.448,8.692-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C8.292-3.117,8.158-3.02,8.159-2.92C8.16-2.805,8.164-2.869,8.17-2.751     C8.15-2.74,8.149-2.756,8.14-2.776"
-   id="path232" />
-			<path
-   fill="#FFFFFF"
-   d="M0.495-2.778c0.018,0.072,0.008,0.127-0.026,0.19C0.417-2.487,0.356-2.525,0.304-2.46     C0.253-2.397,0.205-2.184,0.225-2.098C0.056-2.04,0.215-1.871,0.21-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-1.019,0.501-0.804,0.668-0.673c0.19,0.148,0.365,0.572,0.608,0.631     C1.454,0,1.66-0.146,1.819-0.185C2-0.228,2.217-0.175,2.391-0.237c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46C3.477-1.28,3.471-1.343,3.5-1.419     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C1.293-3.54,1.187-3.448,1.031-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C0.632-3.117,0.498-3.02,0.498-2.92C0.5-2.805,0.503-2.869,0.51-2.751     C0.489-2.74,0.488-2.756,0.479-2.776"
-   id="path234" />
-		</g>
-	</g>
-</pattern>
-
-<path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.2;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="M 14.5 7.6875 C 12.118202 7.6875 10.1875 9.6181999 10.1875 12 C 10.1875 12.98178 10.511318 13.90142 11.0625 14.625 C 12.258208 13.24105 14.029595 12.34375 16 12.34375 C 16.964013 12.34375 17.863805 12.56114 18.6875 12.9375 C 18.75419 12.6359 18.78125 12.32193 18.78125 12 C 18.78125 9.6181999 16.8818 7.6875 14.5 7.6875 z M 8.875 9.6875 C 7.634625 9.6875 6.625 10.69712 6.625 11.9375 C 6.625 12.3391 6.72279 12.70624 6.90625 13.03125 C 7.65474 12.60902 8.5183475 12.375 9.4375 12.375 C 9.526205 12.375 9.63115 12.371 9.71875 12.375 C 9.70882 12.2497 9.6875 12.12826 9.6875 12 C 9.6875 11.30913 9.83008 10.65627 10.09375 10.0625 C 9.7387425 9.8244499 9.3358175 9.6875 8.875 9.6875 z M 19.21875 11.25 C 19.25778 11.49606 19.28125 11.74306 19.28125 12 C 19.28125 12.39985 19.248935 12.78521 19.15625 13.15625 C 20.2429 13.75761 21.12418 14.65908 21.71875 15.75 C 22.335455 15.42894 23.01983 15.23643 23.75 15.1875 C 23.56182 12.98063 21.755825 11.25 19.5 11.25 C 19.40836 11.25 19.30897 11.2444 19.21875 11.25 z M 16 12.84375 C 12.66715 12.84375 9.96875 15.54192 9.96875 18.875 C 9.96875 22.20772 12.667013 24.90625 16 24.90625 C 19.33299 24.90625 22.03125 22.20771 22.03125 18.875 C 22.03125 15.54193 19.332853 12.84375 16 12.84375 z M 9.4375 12.875 C 6.85184 12.875 4.78125 14.94559 4.78125 17.53125 C 4.78125 19.05338 5.501155 20.42736 6.625 21.28125 C 7.09879 20.36744 8.0570875 19.71875 9.15625 19.71875 C 9.289095 19.71875 9.403215 19.7323 9.53125 19.75 C 9.491058 19.45758 9.46875 19.1784 9.46875 18.875 C 9.46875 17.4244 9.947247 16.08344 10.75 15 C 10.26948 14.39871 9.9278275 13.66206 9.78125 12.875 C 9.6726175 12.867 9.5480625 12.875 9.4375 12.875 z M 16 15 C 16.786501 15 17.505108 15.232582 18.125 15.625 L 18.375 15.3125 L 18.78125 16.28125 L 19.15625 17.25 L 18.125 17.09375 L 17.125 16.9375 L 17.34375 16.65625 C 16.954783 16.434451 16.48047 16.34375 16 16.34375 C 14.525735 16.34375 13.34375 17.525635 13.34375 19 C 13.34375 19.1555 13.34954 19.289339 13.375 19.4375 L 12.0625 19.65625 C 12.02588 19.438476 12 19.228287 12 19 C 12 16.788454 13.788603 15 16 15 z M 24.09375 15.65625 C 23.308625 15.65625 22.586838 15.84758 21.9375 16.1875 C 22.306215 17.00423 22.5 17.92139 22.5 18.875 C 22.5 20.66055 21.78996 22.2909 20.625 23.46875 C 21.48082 24.41888 22.712632 25 24.09375 25 C 26.67941 25 28.78125 22.89816 28.78125 20.3125 C 28.78125 17.726839 26.67941 15.65625 24.09375 15.65625 z M 4.3125 16.28125 C 1.9306325 16.28125 0 18.18063 0 20.5625 C 0 22.94437 1.9306325 24.875 4.3125 24.875 C 5.2190732 24.875 6.056265 24.602439 6.75 24.125 C 6.463335 23.67955 6.3125 23.129619 6.3125 22.5625 C 6.3125 22.268139 6.3542845 21.98594 6.4375 21.71875 C 5.13876 20.78017 4.28125 19.25317 4.28125 17.53125 C 4.28125 17.09375 4.3347293 16.6872 4.4375 16.28125 C 4.394842 16.28025 4.3554647 16.28125 4.3125 16.28125 z M 19.9375 18.34375 C 19.97413 18.561539 20 18.771691 20 19 C 20 21.211306 18.21149 23 16 23 C 15.213467 23 14.494885 22.767434 13.875 22.375 L 13.625 22.6875 L 13.21875 21.71875 L 12.84375 20.75 L 13.875 20.90625 L 14.875 21.0625 L 14.65625 21.34375 C 15.045211 21.565557 15.51951 21.65625 16 21.65625 C 17.474326 21.65625 18.65625 20.474204 18.65625 19 C 18.65625 18.844486 18.65047 18.710671 18.625 18.5625 L 19.9375 18.34375 z M 29.625 19.96875 C 29.497935 19.96875 29.371487 19.9807 29.25 20 C 29.2567 20.1074 29.28125 20.20342 29.28125 20.3125 C 29.28125 21.68587 28.720337 22.9487 27.84375 23.875 C 28.275 24.37649 28.908165 24.6875 29.625 24.6875 C 30.93072 24.6875 32 23.64947 32 22.34375 C 32 21.03803 30.93072 19.96875 29.625 19.96875 z M 9.15625 20.21875 C 7.8505975 20.21875 6.78125 21.25684 6.78125 22.5625 C 6.78125 23.86815 7.8505975 24.9375 9.15625 24.9375 C 10.15705 24.9375 10.99878 24.31592 11.34375 23.4375 C 10.50201 22.5802 9.8922975 21.49648 9.625 20.28125 C 9.4685825 20.24891 9.322335 20.21875 9.15625 20.21875 z "
-   transform="translate(0,-1.5e-6)"
-   id="path7625" /><path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.80000000000000004;color:#000000;fill:url(#linearGradient3342);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="m 14.5,6.687498 c -2.381798,0 -4.3125,1.9307 -4.3125,4.312501 0,0.98178 0.323818,1.90142 0.875,2.625 1.195708,-1.38395 2.967095,-2.28125 4.9375,-2.28125 0.964013,0 1.863805,0.21739 2.6875,0.59375 0.06669,-0.3016 0.09375,-0.61557 0.09375,-0.9375 0,-2.381801 -1.89945,-4.312501 -4.28125,-4.312501 z M 8.875,8.687499 c -1.240375,0 -2.25,1.009629 -2.25,2.25 0,0.4016 0.09779,0.76874 0.28125,1.09375 0.74849,-0.422231 1.6120975,-0.65625 2.53125,-0.65625 0.088705,0 0.19365,-0.004 0.28125,0 -0.00993,-0.1253 -0.03125,-0.246741 -0.03125,-0.375 0,-0.69086 0.14258,-1.343731 0.40625,-1.9375 -0.3550075,-0.23805 -0.7579325,-0.375 -1.21875,-0.375 z m 10.34375,1.5625 c 0.03903,0.24606 0.0625,0.49307 0.0625,0.75 0,0.39985 -0.03232,0.78521 -0.125,1.15625 1.08665,0.60137 1.96793,1.50283 2.5625,2.593749 0.616705,-0.32106 1.30108,-0.51356 2.03125,-0.5625 -0.18818,-2.206869 -1.994175,-3.937499 -4.25,-3.937499 -0.09164,0 -0.19103,-0.0056 -0.28125,0 z M 16,11.843749 c -3.33285,0 -6.03125,2.69817 -6.03125,6.031249 0,3.33272 2.698263,6.03125 6.03125,6.03125 3.33299,0 6.03125,-2.69854 6.03125,-6.03125 0,-3.33307 -2.698397,-6.031249 -6.03125,-6.031249 z m -6.5625,0.03125 c -2.58566,0 -4.65625,2.07058 -4.65625,4.656249 0,1.52212 0.719905,2.89611 1.84375,3.75 0.47379,-0.913811 1.4320875,-1.5625 2.53125,-1.5625 0.132845,0 0.246965,0.01355 0.375,0.03125 -0.040192,-0.29242 -0.0625,-0.5716 -0.0625,-0.875 0,-1.4506 0.478497,-2.79156 1.28125,-3.874999 -0.48052,-0.60129 -0.8221725,-1.33794 -0.96875,-2.125 -0.1086325,-0.008 -0.2331875,0 -0.34375,0 z m 6.5625,2.125 c 0.786501,0 1.505108,0.232583 2.125,0.624999 l 0.25,-0.3125 0.40625,0.96875 0.375,0.96875 -1.03125,-0.15625 -1,-0.15625 0.21875,-0.28125 c -0.388967,-0.221799 -0.86328,-0.3125 -1.34375,-0.3125 -1.474265,0 -2.65625,1.181886 -2.65625,2.65625 0,0.1555 0.0058,0.28934 0.03125,0.4375 l -1.3125,0.21875 C 12.02588,18.438475 12,18.228286 12,17.999998 c 0,-2.211546 1.788603,-3.999999 4,-3.999999 z m 8.09375,0.656249 c -0.785125,0 -1.506912,0.19133 -2.15625,0.53125 0.368715,0.81673 0.5625,1.73389 0.5625,2.6875 0,1.78555 -0.71004,3.4159 -1.875,4.59375 0.85582,0.950131 2.087632,1.53125 3.46875,1.53125 2.58566,0 4.6875,-2.10184 4.6875,-4.6875 0,-2.585661 -2.10184,-4.65625 -4.6875,-4.65625 z m -19.78125,0.625 c -2.3818675,0 -4.3125,1.89938 -4.3125,4.28125 0,2.38187 1.9306325,4.3125 4.3125,4.3125 0.9065732,0 1.743765,-0.272561 2.4375,-0.75 -0.286665,-0.44545 -0.4375,-0.99538 -0.4375,-1.5625 0,-0.29436 0.041785,-0.57656 0.125,-0.84375 -1.29874,-0.93858 -2.15625,-2.465589 -2.15625,-4.1875 0,-0.43751 0.053479,-0.84405 0.15625,-1.25 -0.042658,-10e-4 -0.082035,0 -0.125,0 z m 15.625,2.0625 C 19.97413,17.561537 20,17.771689 20,17.999998 c 0,2.211306 -1.78851,4 -4,4 -0.786533,0 -1.505115,-0.232565 -2.125,-0.625 l -0.25,0.3125 -0.40625,-0.96875 -0.375,-0.96875 1.03125,0.15625 1,0.15625 -0.21875,0.28125 c 0.388961,0.221806 0.86326,0.3125 1.34375,0.3125 1.474326,0 2.65625,-1.182046 2.65625,-2.65625 0,-0.155514 -0.0058,-0.289328 -0.03125,-0.4375 l 1.3125,-0.21875 z m 9.6875,1.625 c -0.127065,0 -0.253513,0.01195 -0.375,0.03125 0.0067,0.1074 0.03125,0.203421 0.03125,0.3125 0,1.373371 -0.560913,2.6362 -1.4375,3.5625 0.43125,0.50149 1.064415,0.8125 1.78125,0.8125 1.30572,0 2.375,-1.03803 2.375,-2.34375 0,-1.30572 -1.06928,-2.375 -2.375,-2.375 z m -20.46875,0.25 c -1.3056525,0 -2.375,1.03809 -2.375,2.34375 0,1.30565 1.0693475,2.375 2.375,2.375 1.0008,0 1.84253,-0.62158 2.1875,-1.5 -0.84174,-0.857299 -1.4514525,-1.94102 -1.71875,-3.15625 -0.1564175,-0.03234 -0.302665,-0.0625 -0.46875,-0.0625 z"
-   id="circle238"
-   inkscape:connector-curvature="0" />
-
-
-
-
-
-
-
-
-
-
-<g
-   id="Layer_1-6"
-   transform="matrix(0.5,0,0,0.5,-5,5.9999985)" /></svg>
\ No newline at end of file
diff --git a/core/img/icon.png b/core/img/icon.png
deleted file mode 100644
index e87191f1c0cedd918056b7330b9966e1f65cca3f..0000000000000000000000000000000000000000
Binary files a/core/img/icon.png and /dev/null differ
diff --git a/core/img/icon.svg b/core/img/icon.svg
deleted file mode 100644
index 6f91abe6e48cd02529552f8b7158ae286b3be41a..0000000000000000000000000000000000000000
--- a/core/img/icon.svg
+++ /dev/null
@@ -1,821 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   id="Layer_1"
-   x="0px"
-   y="0px"
-   width="32"
-   height="32"
-   viewBox="0 0 32 31.999997"
-   enable-background="new 0 0 595.275 311.111"
-   xml:space="preserve"
-   inkscape:version="0.48.3.1 r9886"
-   sodipodi:docname="icon-light.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/icon.png"
-   inkscape:export-xdpi="89.826416"
-   inkscape:export-ydpi="89.826416"><metadata
-   id="metadata327"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
-   id="defs325"><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_1_"
-   id="linearGradient3353"
-   gradientUnits="userSpaceOnUse"
-   x1="288.49411"
-   y1="55.888199"
-   x2="288.49411"
-   y2="339.22189" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_2_"
-   id="linearGradient3355"
-   gradientUnits="userSpaceOnUse"
-   x1="251.2114"
-   y1="55.888199"
-   x2="251.2114"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_3_"
-   id="linearGradient3357"
-   gradientUnits="userSpaceOnUse"
-   x1="293.22461"
-   y1="55.888199"
-   x2="293.22461"
-   y2="339.22171" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_4_"
-   id="linearGradient3359"
-   gradientUnits="userSpaceOnUse"
-   x1="375.33401"
-   y1="55.888199"
-   x2="375.33401"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_5_"
-   id="linearGradient3361"
-   gradientUnits="userSpaceOnUse"
-   x1="334.49411"
-   y1="55.888199"
-   x2="334.49411"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_6_"
-   id="linearGradient3363"
-   gradientUnits="userSpaceOnUse"
-   x1="458.42679"
-   y1="55.8867"
-   x2="458.42679"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_7_"
-   id="linearGradient3365"
-   gradientUnits="userSpaceOnUse"
-   x1="413.16309"
-   y1="55.888199"
-   x2="413.16309"
-   y2="339.22131" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_8_"
-   id="linearGradient3367"
-   gradientUnits="userSpaceOnUse"
-   x1="290.76169"
-   y1="55.8867"
-   x2="290.76169"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3369"
-   gradientUnits="userSpaceOnUse"
-   x1="346.77341"
-   y1="55.888199"
-   x2="346.77341"
-   y2="339.22119" />
-	<linearGradient
-   y2="339.22189"
-   x2="288.49411"
-   y1="55.888199"
-   x1="288.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_1_">
-		<stop
-   id="stop261"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop263"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="251.2114"
-   y1="55.888199"
-   x1="251.2114"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_2_">
-		<stop
-   id="stop268"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop270"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22171"
-   x2="293.22461"
-   y1="55.888199"
-   x1="293.22461"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_3_">
-		<stop
-   id="stop275"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop277"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="375.33401"
-   y1="55.888199"
-   x1="375.33401"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_4_">
-		<stop
-   id="stop282"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop284"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="334.49411"
-   y1="55.888199"
-   x1="334.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_5_">
-		<stop
-   id="stop289"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop291"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="458.42679"
-   y1="55.8867"
-   x1="458.42679"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_6_">
-		<stop
-   id="stop296"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop298"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22131"
-   x2="413.16309"
-   y1="55.888199"
-   x1="413.16309"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_7_">
-		<stop
-   id="stop303"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop305"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="290.76169"
-   y1="55.8867"
-   x1="290.76169"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_8_">
-		<stop
-   id="stop310"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop312"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22119"
-   x2="346.77341"
-   y1="55.888199"
-   x1="346.77341"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_9_">
-		<stop
-   id="stop317"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop319"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-<linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient3475"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   id="linearGradient3587-6-5-26"><stop
-     id="stop3589-9-2-45"
-     style="stop-color:#000000;stop-opacity:1"
-     offset="0" /><stop
-     id="stop3591-7-4-20"
-     style="stop-color:#363636;stop-opacity:1"
-     offset="1" /></linearGradient><linearGradient
-   y2="18.967093"
-   x2="-2.4040222"
-   y1="4.4573336"
-   x1="-2.4040222"
-   gradientTransform="translate(13.927091,16.573387)"
-   gradientUnits="userSpaceOnUse"
-   id="linearGradient7590"
-   xlink:href="#linearGradient3587-6-5-26"
-   inkscape:collect="always" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
-   id="linearGradient7614"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="translate(15.071012,45.700897)"
-   x1="-2.4040222"
-   y1="4.4573336"
-   x2="-2.4040222"
-   y2="18.967093" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient7623"
-   x1="58.866638"
-   y1="24.928007"
-   x2="58.866638"
-   y2="93.882034"
-   gradientUnits="userSpaceOnUse"
-   gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)" /></defs><sodipodi:namedview
-   pagecolor="#000000"
-   bordercolor="#666666"
-   borderopacity="1"
-   objecttolerance="10"
-   gridtolerance="10"
-   guidetolerance="10"
-   inkscape:pageopacity="0"
-   inkscape:pageshadow="2"
-   inkscape:window-width="1280"
-   inkscape:window-height="800"
-   id="namedview323"
-   showgrid="true"
-   inkscape:zoom="16"
-   inkscape:cx="24.701671"
-   inkscape:cy="13.807816"
-   inkscape:window-x="0"
-   inkscape:window-y="-31"
-   inkscape:window-maximized="1"
-   inkscape:current-layer="Layer_1"
-   units="px"
-   fit-margin-top="0"
-   fit-margin-left="0"
-   fit-margin-right="0"
-   fit-margin-bottom="0"
-   showguides="true"
-   inkscape:guide-bbox="true"><inkscape:grid
-     type="xygrid"
-     id="grid3152"
-     empspacing="2"
-     visible="true"
-     enabled="true"
-     snapvisiblegridlinesonly="true"
-     dotted="false" /></sodipodi:namedview>
-<pattern
-   y="565.223"
-   width="69"
-   height="69"
-   patternUnits="userSpaceOnUse"
-   id="Polka_Dot_Pattern"
-   viewBox="2.125 -70.896 69 69"
-   overflow="visible">
-	<g
-   id="g4">
-		<polygon
-   fill="none"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon6" />
-		<polygon
-   fill="#F6BB60"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon8" />
-		<g
-   id="g10">
-			<path
-   fill="#FFFFFF"
-   d="M61.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path12" />
-			<path
-   fill="#FFFFFF"
-   d="M54.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path14" />
-			<path
-   fill="#FFFFFF"
-   d="M46.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path16" />
-			<path
-   fill="#FFFFFF"
-   d="M38.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path18" />
-			<path
-   fill="#FFFFFF"
-   d="M31.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path20" />
-			<path
-   fill="#FFFFFF"
-   d="M23.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path22" />
-			<path
-   fill="#FFFFFF"
-   d="M15.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path24" />
-			<path
-   fill="#FFFFFF"
-   d="M8.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path26" />
-			<path
-   fill="#FFFFFF"
-   d="M0.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19C0.361-71.362,0.3-71.4,0.248-71.335     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path28" />
-		</g>
-		<g
-   id="g30">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path32" />
-		</g>
-		<path
-   fill="#FFFFFF"
-   d="M0.495-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128    c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161    c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631    c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45    c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221    c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337    c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207    c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224C0.5-71.68,0.503-71.744,0.51-71.626    c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path34" />
-		<g
-   id="g36">
-			<g
-   id="g38">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path40" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path42" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path44" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path46" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path48" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path50" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path52" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path54" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path56" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143C2-61.45,2.217-61.397,2.391-61.46c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path58" />
-			</g>
-			<g
-   id="g60">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path62" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path64" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path66" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path68" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path70" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path72" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path74" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path76" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path78" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-56.374,0.503-56.438,0.51-56.32      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path80" />
-			</g>
-			<g
-   id="g82">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path84" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path86" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path88" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path90" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path92" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path94" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path96" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path98" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path100" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path102" />
-			</g>
-			<g
-   id="g104">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path106" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path108" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path110" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path112" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path114" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path116" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path118" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path120" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      C8.15-41.004,8.149-41.02,8.14-41.04"
-   id="path122" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path124" />
-			</g>
-			<g
-   id="g126">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path128" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path130" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path132" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path134" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path136" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path138" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path140" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path142" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path144" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-33.416,0.503-33.48,0.51-33.362      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path146" />
-			</g>
-			<g
-   id="g148">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path150" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path152" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path154" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path156" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path158" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path160" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path162" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path164" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path166" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path168" />
-			</g>
-			<g
-   id="g170">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path172" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path174" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path176" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path178" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path180" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path182" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path184" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path186" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path188" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-18.11,0.503-18.175,0.51-18.057      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path190" />
-			</g>
-			<g
-   id="g192">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362C69-9.692,69.159-9.523,69.154-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path194" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path196" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path198" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path200" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path202" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path204" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path206" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053C17.933-7.969,17.839-8.227,18-8.34      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path208" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C7.915-10.05,7.866-9.836,7.886-9.75C7.717-9.692,7.876-9.523,7.871-9.4C7.868-9.351,7.83-9.295,7.826-9.239      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      C9.114-7.652,9.321-7.799,9.48-7.837c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path210" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C0.254-10.05,0.205-9.836,0.225-9.75C0.056-9.692,0.215-9.523,0.21-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-8.671,0.501-8.456,0.668-8.325c0.19,0.148,0.365,0.572,0.608,0.631      C1.454-7.652,1.66-7.799,1.819-7.837C2-7.88,2.217-7.827,2.391-7.89c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46C3.477-8.933,3.471-8.995,3.5-9.071      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path212" />
-			</g>
-		</g>
-		<g
-   id="g214">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-2.778c0.018,0.072,0.008,0.127-0.026,0.19C69.361-2.487,69.3-2.525,69.248-2.46     c-0.051,0.062-0.099,0.276-0.079,0.362C69-2.04,69.159-1.871,69.154-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C70.397,0,70.604-0.146,70.763-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path216" />
-			<path
-   fill="#FFFFFF"
-   d="M61.778-2.778c0.018,0.072,0.007,0.127-0.026,0.19C61.7-2.487,61.64-2.525,61.587-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C62.737,0,62.943-0.146,63.103-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C61.915-3.117,61.78-3.02,61.781-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path218" />
-			<path
-   fill="#FFFFFF"
-   d="M54.118-2.778c0.018,0.072,0.007,0.127-0.026,0.19C54.04-2.487,53.98-2.525,53.927-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C55.077,0,55.283-0.146,55.442-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C54.255-3.117,54.12-3.02,54.121-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path220" />
-			<path
-   fill="#FFFFFF"
-   d="M46.458-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C47.416,0,47.623-0.146,47.782-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C46.594-3.117,46.459-3.02,46.46-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path222" />
-			<path
-   fill="#FFFFFF"
-   d="M38.797-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C39.756,0,39.962-0.146,40.122-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C38.934-3.117,38.799-3.02,38.8-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path224" />
-			<path
-   fill="#FFFFFF"
-   d="M31.137-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C32.095,0,32.302-0.146,32.461-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C31.273-3.117,31.139-3.02,31.14-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path226" />
-			<path
-   fill="#FFFFFF"
-   d="M23.477-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C24.435,0,24.642-0.146,24.801-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path228" />
-			<path
-   fill="#FFFFFF"
-   d="M15.816-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C16.774,0,16.981-0.146,17.14-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     C15.81-2.74,15.809-2.756,15.8-2.776"
-   id="path230" />
-			<path
-   fill="#FFFFFF"
-   d="M8.156-2.778c0.018,0.072,0.007,0.127-0.026,0.19C8.077-2.487,8.018-2.525,7.965-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35C7.868-1.698,7.83-1.643,7.826-1.587     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C9.114,0,9.321-0.146,9.48-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C8.954-3.54,8.847-3.448,8.692-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C8.292-3.117,8.158-3.02,8.159-2.92C8.16-2.805,8.164-2.869,8.17-2.751     C8.15-2.74,8.149-2.756,8.14-2.776"
-   id="path232" />
-			<path
-   fill="#FFFFFF"
-   d="M0.495-2.778c0.018,0.072,0.008,0.127-0.026,0.19C0.417-2.487,0.356-2.525,0.304-2.46     C0.253-2.397,0.205-2.184,0.225-2.098C0.056-2.04,0.215-1.871,0.21-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-1.019,0.501-0.804,0.668-0.673c0.19,0.148,0.365,0.572,0.608,0.631     C1.454,0,1.66-0.146,1.819-0.185C2-0.228,2.217-0.175,2.391-0.237c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46C3.477-1.28,3.471-1.343,3.5-1.419     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C1.293-3.54,1.187-3.448,1.031-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C0.632-3.117,0.498-3.02,0.498-2.92C0.5-2.805,0.503-2.869,0.51-2.751     C0.489-2.74,0.488-2.756,0.479-2.776"
-   id="path234" />
-		</g>
-	</g>
-</pattern>
-
-<path
-   sodipodi:nodetypes="sscscsscscscscccscscccsssssssscscsccsscscssscsscscsccccscssccsssccs"
-   inkscape:connector-curvature="0"
-   inkscape:export-ydpi="90"
-   inkscape:export-xdpi="90"
-   inkscape:export-filename="/home/user/owncloud/core/img/logo.png"
-   id="path7625"
-   d="m 14.488658,7.6997589 c -2.381798,0 -4.30607,1.92427 -4.30607,4.3060701 0,0.98178 0.32692,1.88539 0.878102,2.60897 1.195708,-1.38395 2.960465,-2.2628 4.93087,-2.2628 0.964013,0 1.878155,0.21467 2.70185,0.59103 0.06669,-0.3016 0.101318,-0.61527 0.101318,-0.9372 0,-2.3818001 -1.92427,-4.3060701 -4.30607,-4.3060701 z m -5.6232205,1.99261 c -1.240375,0 -2.2374675,1.0055301 -2.2374675,2.2459101 0,0.4016 0.10361,0.78106 0.28707,1.10607 0.74849,-0.42223 1.61383,-0.66702 2.5329825,-0.66702 0.088705,0 0.1741425,0.004 0.2617425,0.008 -0.00993,-0.1253 -0.016875,-0.25124 -0.016875,-0.3795 0,-0.69087 0.15005,-1.34819 0.41372,-1.94196 C 9.7516025,9.8258189 9.3262675,9.6923689 8.86545,9.6923689 z M 19.487078,11.237489 c -0.09164,0 -0.179965,0.0113 -0.270185,0.0169 0.03903,0.24606 0.06755,0.49451 0.06755,0.75145 0,0.39985 -0.05085,0.78569 -0.143535,1.15673 1.08665,0.60136 1.989072,1.50116 2.583642,2.59208 0.616705,-0.32106 1.30466,-0.52521 2.03483,-0.57414 -0.18818,-2.20687 -2.016472,-3.94301 -4.272297,-3.94301 z m -3.495518,1.60422 c -3.33285,0 -6.0284975,2.69542 -6.0284975,6.0285 0,3.33272 2.6955105,6.0285 6.0284975,6.0285 3.33299,0 6.0285,-2.69579 6.0285,-6.0285 0,-3.33307 -2.695647,-6.0285 -6.0285,-6.0285 z m -6.5435375,0.0253 c -2.58566,0 -4.6775725,2.09191 -4.6775725,4.67757 0,1.52213 0.7252325,2.8696 1.8490775,3.72349 0.47379,-0.91381 1.425375,-1.53668 2.5245375,-1.53668 0.132845,0 0.260355,0.0161 0.38839,0.0338 -0.040192,-0.29242 -0.0591,-0.59159 -0.0591,-0.89499 0,-1.4506 0.47218,-2.79202 1.274933,-3.87546 -0.48052,-0.60129 -0.8244005,-1.32376 -0.970978,-2.11082 -0.1086325,-0.008 -0.218725,-0.0169 -0.3292875,-0.0169 z m 14.6575255,2.78628 c -0.785125,0 -1.520585,0.20045 -2.169923,0.54037 0.368715,0.81673 0.574143,1.72291 0.574143,2.67652 0,1.78555 -0.71789,3.406849 -1.88285,4.584699 0.85582,0.95013 2.097512,1.54512 3.47863,1.54512 2.58566,0 4.677575,-2.091919 4.677575,-4.677579 0,-2.585661 -2.091915,-4.66913 -4.677575,-4.66913 z M 4.3145118,16.269679 C 1.9326443,16.269679 0,18.185439 0,20.567309 c 0,2.38187 1.9326443,4.31451 4.3145118,4.31451 0.9065732,0 1.7463732,-0.282451 2.4401082,-0.75989 -0.286665,-0.44545 -0.4559375,-0.978001 -0.4559375,-1.54512 0,-0.294361 0.043432,-0.57714 0.1266475,-0.84433 -1.29874,-0.93858 -2.1445912,-2.46595 -2.1445912,-4.18787 0,-0.4375 0.057653,-0.86054 0.1604237,-1.26649 -0.042658,-0.001 -0.083686,-0.008 -0.1266507,-0.008 z m 25.3213812,3.69816 c -0.127065,0 -0.250018,0.0145 -0.371505,0.0338 0.0067,0.1074 0.0084,0.21176 0.0084,0.32084 0,1.37337 -0.541883,2.61988 -1.41847,3.54618 0.43125,0.50149 1.064697,0.819 1.781532,0.819 1.30572,0 2.364118,-1.04996 2.364118,-2.35568 0,-1.30572 -1.058398,-2.36411 -2.364118,-2.36411 z m -20.491828,0.25329 c -1.3056525,0 -2.3556725,1.05002 -2.3556725,2.35568 0,1.30565 1.05002,2.36411 2.3556725,2.36411 1.0008,0 1.850283,-0.62448 2.195253,-1.5029 -0.84174,-0.8573 -1.446688,-1.951 -1.7139855,-3.16623 C 9.468915,20.239449 9.31015,20.221129 9.144065,20.221129 z"
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.2;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /><path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.80000000000000004;color:#000000;fill:url(#linearGradient7623);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="m 14.488658,6.699758 c -2.381798,0 -4.30607,1.92427 -4.30607,4.306071 0,0.98178 0.32692,1.88539 0.878102,2.60897 1.195708,-1.38395 2.960465,-2.2628 4.93087,-2.2628 0.964013,0 1.878155,0.21467 2.70185,0.59103 0.06669,-0.3016 0.101318,-0.61527 0.101318,-0.9372 0,-2.381801 -1.92427,-4.306071 -4.30607,-4.306071 z m -5.6232205,1.99261 c -1.240375,0 -2.2374675,1.00554 -2.2374675,2.245911 0,0.4016 0.10361,0.78106 0.28707,1.10607 0.74849,-0.42223 1.61383,-0.66702 2.5329825,-0.66702 0.088705,0 0.1741425,0.004 0.2617425,0.008 -0.00993,-0.1253 -0.016875,-0.25124 -0.016875,-0.3795 0,-0.69086 0.15005,-1.348191 0.41372,-1.941961 -0.3550075,-0.23805 -0.7803425,-0.3715 -1.24116,-0.3715 z m 10.6216405,1.545121 c -0.09164,0 -0.179965,0.0113 -0.270185,0.0169 0.03903,0.24606 0.06755,0.49452 0.06755,0.75145 0,0.39985 -0.05085,0.78569 -0.143535,1.15673 1.08665,0.60137 1.989072,1.50116 2.583642,2.59208 0.616705,-0.32106 1.30466,-0.5252 2.03483,-0.57414 -0.18818,-2.20687 -2.016472,-3.94301 -4.272297,-3.94301 z m -3.495518,1.60422 c -3.33285,0 -6.0284975,2.69542 -6.0284975,6.0285 0,3.33272 2.6955105,6.0285 6.0284975,6.0285 3.33299,0 6.0285,-2.69579 6.0285,-6.0285 0,-3.33307 -2.695647,-6.0285 -6.0285,-6.0285 z m -6.5435375,0.0253 c -2.58566,0 -4.6775725,2.09191 -4.6775725,4.67758 0,1.52212 0.7252325,2.86959 1.8490775,3.72348 0.47379,-0.913811 1.425375,-1.53668 2.5245375,-1.53668 0.132845,0 0.260355,0.0161 0.38839,0.0338 -0.040192,-0.29242 -0.0591,-0.59159 -0.0591,-0.89499 0,-1.4506 0.47218,-2.792019 1.274933,-3.875459 -0.48052,-0.60129 -0.8244005,-1.32376 -0.970978,-2.11082 -0.1086325,-0.008 -0.218725,-0.0169 -0.3292875,-0.0169 z m 14.6575255,2.78628 c -0.785125,0 -1.520585,0.20045 -2.169923,0.54037 0.368715,0.81673 0.574143,1.72291 0.574143,2.67652 0,1.78555 -0.71789,3.406849 -1.88285,4.584699 0.85582,0.95013 2.097512,1.54512 3.47863,1.54512 2.58566,0 4.677575,-2.091919 4.677575,-4.677579 0,-2.585661 -2.091915,-4.66913 -4.677575,-4.66913 z M 4.3145118,15.269679 C 1.9326443,15.269679 0,17.185439 0,19.567309 c 0,2.38187 1.9326443,4.31451 4.3145118,4.31451 0.9065732,0 1.7463732,-0.282451 2.4401082,-0.75989 -0.286665,-0.44545 -0.4559375,-0.978001 -0.4559375,-1.54512 0,-0.294361 0.043432,-0.57714 0.1266475,-0.84433 -1.29874,-0.93858 -2.1445912,-2.46595 -2.1445912,-4.18786 0,-0.43751 0.057653,-0.86055 0.1604237,-1.2665 -0.042658,-10e-4 -0.083686,-0.008 -0.1266507,-0.008 z m 25.3213812,3.69816 c -0.127065,0 -0.250018,0.0145 -0.371505,0.0338 0.0067,0.1074 0.0084,0.21176 0.0084,0.32084 0,1.37337 -0.541883,2.61988 -1.41847,3.54618 0.43125,0.50149 1.064697,0.819 1.781532,0.819 1.30572,0 2.364118,-1.04996 2.364118,-2.35568 0,-1.30572 -1.058398,-2.36411 -2.364118,-2.36411 z m -20.491828,0.25329 c -1.3056525,0 -2.3556725,1.05002 -2.3556725,2.35568 0,1.30565 1.05002,2.36411 2.3556725,2.36411 1.0008,0 1.850283,-0.62448 2.195253,-1.5029 -0.84174,-0.8573 -1.446688,-1.951 -1.7139855,-3.16623 C 9.468915,19.239449 9.31015,19.221129 9.144065,19.221129 z"
-   id="circle238"
-   inkscape:export-filename="/home/user/owncloud/core/img/logo.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   inkscape:connector-curvature="0"
-   sodipodi:nodetypes="sscscsscscscscccscscccsssssssscscsccsscscssscsscscsccccscssccsssccs" />
-
-
-
-
-
-
-
-
-
-
-</svg>
\ No newline at end of file
diff --git a/core/img/logo-inverted.png b/core/img/logo-inverted.png
deleted file mode 100644
index 265a8871b45b14b046fd3cf20531d9a3694fb445..0000000000000000000000000000000000000000
Binary files a/core/img/logo-inverted.png and /dev/null differ
diff --git a/core/img/logo-inverted.svg b/core/img/logo-inverted.svg
deleted file mode 100644
index 9ac167cc41f0a19ec81ad892773433ebf33a220b..0000000000000000000000000000000000000000
--- a/core/img/logo-inverted.svg
+++ /dev/null
@@ -1,762 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   id="Layer_1"
-   x="0px"
-   y="0px"
-   width="250.00002"
-   height="118.22803"
-   viewBox="0 0 250.00001 118.22802"
-   enable-background="new 0 0 595.275 311.111"
-   xml:space="preserve"
-   inkscape:version="0.48.2 r9819"
-   sodipodi:docname="logo.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/logo-sticker.png"
-   inkscape:export-xdpi="300.00223"
-   inkscape:export-ydpi="300.00223"><metadata
-   id="metadata327"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-   id="defs325"><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_1_"
-   id="linearGradient3353"
-   gradientUnits="userSpaceOnUse"
-   x1="288.49411"
-   y1="55.888199"
-   x2="288.49411"
-   y2="339.22189" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_2_"
-   id="linearGradient3355"
-   gradientUnits="userSpaceOnUse"
-   x1="251.2114"
-   y1="55.888199"
-   x2="251.2114"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_3_"
-   id="linearGradient3357"
-   gradientUnits="userSpaceOnUse"
-   x1="293.22461"
-   y1="55.888199"
-   x2="293.22461"
-   y2="339.22171" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_4_"
-   id="linearGradient3359"
-   gradientUnits="userSpaceOnUse"
-   x1="375.33401"
-   y1="55.888199"
-   x2="375.33401"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_5_"
-   id="linearGradient3361"
-   gradientUnits="userSpaceOnUse"
-   x1="334.49411"
-   y1="55.888199"
-   x2="334.49411"
-   y2="339.22159" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_6_"
-   id="linearGradient3363"
-   gradientUnits="userSpaceOnUse"
-   x1="458.42679"
-   y1="55.8867"
-   x2="458.42679"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_7_"
-   id="linearGradient3365"
-   gradientUnits="userSpaceOnUse"
-   x1="413.16309"
-   y1="55.888199"
-   x2="413.16309"
-   y2="339.22131" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_8_"
-   id="linearGradient3367"
-   gradientUnits="userSpaceOnUse"
-   x1="290.76169"
-   y1="55.8867"
-   x2="290.76169"
-   y2="339.2236" /><linearGradient
-   inkscape:collect="always"
-   xlink:href="#SVGID_9_"
-   id="linearGradient3369"
-   gradientUnits="userSpaceOnUse"
-   x1="346.77341"
-   y1="55.888199"
-   x2="346.77341"
-   y2="339.22119" />
-	<linearGradient
-   y2="339.22189"
-   x2="288.49411"
-   y1="55.888199"
-   x1="288.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_1_">
-		<stop
-   id="stop261"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop263"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="251.2114"
-   y1="55.888199"
-   x1="251.2114"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_2_">
-		<stop
-   id="stop268"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop270"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22171"
-   x2="293.22461"
-   y1="55.888199"
-   x1="293.22461"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_3_">
-		<stop
-   id="stop275"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop277"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="375.33401"
-   y1="55.888199"
-   x1="375.33401"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_4_">
-		<stop
-   id="stop282"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop284"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22159"
-   x2="334.49411"
-   y1="55.888199"
-   x1="334.49411"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_5_">
-		<stop
-   id="stop289"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop291"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="458.42679"
-   y1="55.8867"
-   x1="458.42679"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_6_">
-		<stop
-   id="stop296"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop298"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22131"
-   x2="413.16309"
-   y1="55.888199"
-   x1="413.16309"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_7_">
-		<stop
-   id="stop303"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop305"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.2236"
-   x2="290.76169"
-   y1="55.8867"
-   x1="290.76169"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_8_">
-		<stop
-   id="stop310"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop312"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-	<linearGradient
-   y2="339.22119"
-   x2="346.77341"
-   y1="55.888199"
-   x1="346.77341"
-   gradientUnits="userSpaceOnUse"
-   id="SVGID_9_">
-		<stop
-   id="stop317"
-   style="stop-color:#BED5E1"
-   offset="0" />
-		<stop
-   id="stop319"
-   style="stop-color:#567B8F"
-   offset="1" />
-	</linearGradient>
-	
-</defs><sodipodi:namedview
-   pagecolor="#ffffff"
-   bordercolor="#666666"
-   borderopacity="1"
-   objecttolerance="10"
-   gridtolerance="10"
-   guidetolerance="10"
-   inkscape:pageopacity="0"
-   inkscape:pageshadow="2"
-   inkscape:window-width="1280"
-   inkscape:window-height="774"
-   id="namedview323"
-   showgrid="false"
-   inkscape:zoom="1"
-   inkscape:cx="-43.42615"
-   inkscape:cy="55.236805"
-   inkscape:window-x="0"
-   inkscape:window-y="26"
-   inkscape:window-maximized="1"
-   inkscape:current-layer="Layer_1"
-   units="mm"
-   fit-margin-top="0"
-   fit-margin-left="0"
-   fit-margin-right="0"
-   fit-margin-bottom="0"
-   showguides="true"
-   inkscape:guide-bbox="true" />
-<pattern
-   y="565.223"
-   width="69"
-   height="69"
-   patternUnits="userSpaceOnUse"
-   id="Polka_Dot_Pattern"
-   viewBox="2.125 -70.896 69 69"
-   overflow="visible">
-	<g
-   id="g4">
-		<polygon
-   fill="none"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon6" />
-		<polygon
-   fill="#F6BB60"
-   points="71.125,-1.896 2.125,-1.896 2.125,-70.896 71.125,-70.896   "
-   id="polygon8" />
-		<g
-   id="g10">
-			<path
-   fill="#FFFFFF"
-   d="M61.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path12" />
-			<path
-   fill="#FFFFFF"
-   d="M54.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path14" />
-			<path
-   fill="#FFFFFF"
-   d="M46.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path16" />
-			<path
-   fill="#FFFFFF"
-   d="M38.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path18" />
-			<path
-   fill="#FFFFFF"
-   d="M31.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path20" />
-			<path
-   fill="#FFFFFF"
-   d="M23.439-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path22" />
-			<path
-   fill="#FFFFFF"
-   d="M15.772-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path24" />
-			<path
-   fill="#FFFFFF"
-   d="M8.105-71.653c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path26" />
-			<path
-   fill="#FFFFFF"
-   d="M0.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19C0.361-71.362,0.3-71.4,0.248-71.335     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path28" />
-		</g>
-		<g
-   id="g30">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128     c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path32" />
-		</g>
-		<path
-   fill="#FFFFFF"
-   d="M0.495-71.653c0.018,0.072,0.008,0.127-0.026,0.19c-0.052,0.101-0.113,0.062-0.165,0.128    c-0.051,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161    c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631    c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45    c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221    c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337    c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207    c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224C0.5-71.68,0.503-71.744,0.51-71.626    c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path34" />
-		<g
-   id="g36">
-			<g
-   id="g38">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path40" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path42" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path44" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path46" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path48" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path50" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path52" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path54" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path56" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-64.001c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143C2-61.45,2.217-61.397,2.391-61.46c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path58" />
-			</g>
-			<g
-   id="g60">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path62" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path64" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path66" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path68" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path70" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path72" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path74" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path76" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path78" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-56.348c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-56.374,0.503-56.438,0.51-56.32      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path80" />
-			</g>
-			<g
-   id="g82">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path84" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path86" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path88" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path90" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path92" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path94" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path96" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path98" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path100" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-48.695c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path102" />
-			</g>
-			<g
-   id="g104">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path106" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path108" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path110" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path112" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path114" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path116" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path118" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path120" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      C8.15-41.004,8.149-41.02,8.14-41.04"
-   id="path122" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-41.042c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path124" />
-			</g>
-			<g
-   id="g126">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path128" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path130" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path132" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path134" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path136" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path138" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path140" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path142" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path144" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-33.39c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-33.416,0.503-33.48,0.51-33.362      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path146" />
-			</g>
-			<g
-   id="g148">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path150" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path152" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path154" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path156" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path158" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path160" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path162" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path164" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path166" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-25.736c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path168" />
-			</g>
-			<g
-   id="g170">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path172" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path174" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path176" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path178" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path180" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path182" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path184" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path186" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path188" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-18.084c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224C0.5-18.11,0.503-18.175,0.51-18.057      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path190" />
-			</g>
-			<g
-   id="g192">
-				<path
-   fill="#FFFFFF"
-   d="M69.439-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362C69-9.692,69.159-9.523,69.154-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path194" />
-				<path
-   fill="#FFFFFF"
-   d="M61.778-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path196" />
-				<path
-   fill="#FFFFFF"
-   d="M54.118-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path198" />
-				<path
-   fill="#FFFFFF"
-   d="M46.458-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path200" />
-				<path
-   fill="#FFFFFF"
-   d="M38.797-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path202" />
-				<path
-   fill="#FFFFFF"
-   d="M31.137-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path204" />
-				<path
-   fill="#FFFFFF"
-   d="M23.477-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path206" />
-				<path
-   fill="#FFFFFF"
-   d="M15.816-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.009,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      c0.177,0.042,0.384-0.104,0.543-0.143c0.18-0.043,0.397,0.01,0.571-0.053C17.933-7.969,17.839-8.227,18-8.34      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path208" />
-				<path
-   fill="#FFFFFF"
-   d="M8.156-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C7.915-10.05,7.866-9.836,7.886-9.75C7.717-9.692,7.876-9.523,7.871-9.4C7.868-9.351,7.83-9.295,7.826-9.239      c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631      C9.114-7.652,9.321-7.799,9.48-7.837c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path210" />
-				<path
-   fill="#FFFFFF"
-   d="M0.495-10.431c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128      C0.254-10.05,0.205-9.836,0.225-9.75C0.056-9.692,0.215-9.523,0.21-9.4c-0.002,0.05-0.041,0.105-0.045,0.161      c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-8.671,0.501-8.456,0.668-8.325c0.19,0.148,0.365,0.572,0.608,0.631      C1.454-7.652,1.66-7.799,1.819-7.837C2-7.88,2.217-7.827,2.391-7.89c0.222-0.079,0.127-0.337,0.288-0.45      c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46C3.477-8.933,3.471-8.995,3.5-9.071      c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337      c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207      c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169      c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path212" />
-			</g>
-		</g>
-		<g
-   id="g214">
-			<path
-   fill="#FFFFFF"
-   d="M69.439-2.778c0.018,0.072,0.008,0.127-0.026,0.19C69.361-2.487,69.3-2.525,69.248-2.46     c-0.051,0.062-0.099,0.276-0.079,0.362C69-2.04,69.159-1.871,69.154-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C70.397,0,70.604-0.146,70.763-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.215,0.124-0.215,0.224c0.002,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path216" />
-			<path
-   fill="#FFFFFF"
-   d="M61.778-2.778c0.018,0.072,0.007,0.127-0.026,0.19C61.7-2.487,61.64-2.525,61.587-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C62.737,0,62.943-0.146,63.103-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C61.915-3.117,61.78-3.02,61.781-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path218" />
-			<path
-   fill="#FFFFFF"
-   d="M54.118-2.778c0.018,0.072,0.007,0.127-0.026,0.19C54.04-2.487,53.98-2.525,53.927-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C55.077,0,55.283-0.146,55.442-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C54.255-3.117,54.12-3.02,54.121-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path220" />
-			<path
-   fill="#FFFFFF"
-   d="M46.458-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C47.416,0,47.623-0.146,47.782-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C46.594-3.117,46.459-3.02,46.46-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path222" />
-			<path
-   fill="#FFFFFF"
-   d="M38.797-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C39.756,0,39.962-0.146,40.122-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C38.934-3.117,38.799-3.02,38.8-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path224" />
-			<path
-   fill="#FFFFFF"
-   d="M31.137-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C32.095,0,32.302-0.146,32.461-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224C31.273-3.117,31.139-3.02,31.14-2.92c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path226" />
-			<path
-   fill="#FFFFFF"
-   d="M23.477-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C24.435,0,24.642-0.146,24.801-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     c-0.021,0.011-0.021-0.005-0.03-0.025"
-   id="path228" />
-			<path
-   fill="#FFFFFF"
-   d="M15.816-2.778c0.018,0.072,0.007,0.127-0.026,0.19c-0.053,0.101-0.112,0.062-0.165,0.128     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C16.774,0,16.981-0.146,17.14-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789c-0.18,0.034-0.287,0.126-0.442,0.207     c-0.17,0.088-0.139,0.166-0.318,0.224c-0.081,0.026-0.216,0.124-0.215,0.224c0.001,0.115,0.005,0.051,0.012,0.169     C15.81-2.74,15.809-2.756,15.8-2.776"
-   id="path230" />
-			<path
-   fill="#FFFFFF"
-   d="M8.156-2.778c0.018,0.072,0.007,0.127-0.026,0.19C8.077-2.487,8.018-2.525,7.965-2.46     c-0.05,0.062-0.099,0.276-0.079,0.362c-0.169,0.058-0.01,0.227-0.015,0.35C7.868-1.698,7.83-1.643,7.826-1.587     c-0.01,0.119,0.017,0.266,0.068,0.37c0.097,0.198,0.268,0.413,0.435,0.544c0.19,0.148,0.365,0.572,0.608,0.631     C9.114,0,9.321-0.146,9.48-0.185c0.18-0.043,0.397,0.01,0.571-0.053c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.069,0.339-0.263,0.376-0.46c0.016-0.082,0.01-0.145,0.039-0.221     c0.039-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.052-0.12-0.064-0.187c-0.022-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C8.954-3.54,8.847-3.448,8.692-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C8.292-3.117,8.158-3.02,8.159-2.92C8.16-2.805,8.164-2.869,8.17-2.751     C8.15-2.74,8.149-2.756,8.14-2.776"
-   id="path232" />
-			<path
-   fill="#FFFFFF"
-   d="M0.495-2.778c0.018,0.072,0.008,0.127-0.026,0.19C0.417-2.487,0.356-2.525,0.304-2.46     C0.253-2.397,0.205-2.184,0.225-2.098C0.056-2.04,0.215-1.871,0.21-1.748c-0.002,0.05-0.041,0.105-0.045,0.161     c-0.01,0.119,0.017,0.266,0.068,0.37C0.33-1.019,0.501-0.804,0.668-0.673c0.19,0.148,0.365,0.572,0.608,0.631     C1.454,0,1.66-0.146,1.819-0.185C2-0.228,2.217-0.175,2.391-0.237c0.222-0.079,0.127-0.337,0.288-0.45     c0.104-0.074,0.287-0.01,0.406-0.051c0.2-0.07,0.339-0.263,0.376-0.46C3.477-1.28,3.471-1.343,3.5-1.419     c0.038-0.103,0.111-0.16,0.09-0.293c-0.01-0.062-0.051-0.12-0.064-0.187c-0.021-0.114,0.002-0.224,0-0.337     c-0.003-0.2,0.017-0.379-0.078-0.55c-0.38-0.688-1.236-0.929-1.975-0.789C1.293-3.54,1.187-3.448,1.031-3.367     c-0.17,0.088-0.139,0.166-0.318,0.224C0.632-3.117,0.498-3.02,0.498-2.92C0.5-2.805,0.503-2.869,0.51-2.751     C0.489-2.74,0.488-2.756,0.479-2.776"
-   id="path234" />
-		</g>
-	</g>
-</pattern>
-
-<path
-   style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#1d2d44;fill-opacity:1;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
-   d="m 150.66402,-4.207031e-7 c -11.24079,0 -20.32231,9.0815110207031 -20.32231,20.3223094207031 0,4.63349 1.54288,8.898031 4.14416,12.312928 5.64309,-6.531492 13.97179,-10.679174 23.27103,-10.679174 4.54961,0 8.86387,1.013111 12.75126,2.789337 0.31474,-1.423374 0.47817,-2.903724 0.47817,-4.423091 C 170.98633,9.0815106 161.90482,-4.207031e-7 150.66402,-4.207031e-7 z M 124.12548,9.4040486 c -5.8539,0 -10.55964,4.7455764 -10.55964,10.5994794 0,1.89532 0.48899,3.686187 1.35482,5.220044 3.53247,-1.99271 7.6164,-3.147966 11.9543,-3.147966 0.41864,0 0.82186,0.01699 1.23528,0.03985 -0.0468,-0.593428 -0.0797,-1.187821 -0.0797,-1.793145 0,-3.260488 0.70816,-6.362694 1.95253,-9.164963 -1.67544,-1.123499 -3.68279,-1.7532974 -5.8576,-1.7532974 z m 50.12836,7.2921224 c -0.43247,0 -0.84934,0.05309 -1.27513,0.0797 0.18418,1.16127 0.31878,2.33386 0.31878,3.546442 0,1.887099 -0.24,3.708046 -0.67741,5.45913 5.1284,2.83813 9.38734,7.08467 12.19339,12.233233 2.91052,-1.515226 6.15729,-2.47869 9.60329,-2.709641 -0.8881,-10.415209 -9.51665,-18.60886 -20.16292,-18.60886 z m -16.49694,7.571057 c -15.72924,0 -28.45123,12.720931 -28.45123,28.451232 0,15.728607 12.72134,28.451231 28.45123,28.451231 15.7299,0 28.45124,-12.72265 28.45124,-28.451231 0,-15.730273 -12.72199,-28.451232 -28.45124,-28.451232 z m -30.88194,0.119543 c -12.20291,0 -22.0756,9.87269 -22.0756,22.075606 0,7.183598 3.4227,13.542949 8.72664,17.57282 2.23603,-4.312671 6.727,-7.252275 11.91445,-7.252275 0.62695,0 1.22873,0.07599 1.83299,0.159391 -0.18969,-1.380056 -0.27893,-2.791988 -0.27893,-4.223853 0,-6.846031 2.22844,-13.176829 6.01699,-18.290078 -2.26779,-2.837739 -3.89072,-6.247406 -4.58248,-9.961916 -0.51269,-0.03551 -1.03226,-0.0797 -1.55406,-0.0797 z M 196.05051,37.5365 c -3.70536,0 -7.17634,0.945989 -10.24085,2.550251 1.74013,3.854499 2.70964,8.131195 2.70964,12.631709 0,8.42684 -3.38806,16.078501 -8.88603,21.637282 4.039,4.484129 9.89911,7.292119 16.41724,7.292119 12.20291,0 22.07561,-9.872692 22.07561,-22.075602 0,-12.202916 -9.8727,-22.035759 -22.07561,-22.035759 z m -93.40293,2.90888 c -11.24112,0 -20.36215,9.041344 -20.36215,20.282461 0,11.241122 9.12103,20.36216 20.36215,20.36216 4.27853,0 8.24193,-1.33304 11.51598,-3.58629 -1.3529,-2.102251 -2.15177,-4.615612 -2.15177,-7.292126 0,-1.389185 0.20497,-2.723795 0.59771,-3.984766 -6.12935,-4.429596 -10.12131,-11.637922 -10.12131,-19.764442 0,-2.064771 0.27209,-4.061306 0.75711,-5.97715 -0.20132,-0.0058 -0.39495,-0.03985 -0.59772,-0.03985 z m 119.50315,17.453277 c -0.59968,0 -1.17994,0.06831 -1.7533,0.15939 0.0316,0.506877 0.0398,0.999386 0.0398,1.514212 0,6.481551 -2.55739,12.364405 -6.69441,16.736019 2.03527,2.366783 5.02479,3.865223 8.40786,3.865223 6.16229,0 11.15735,-4.955213 11.15735,-11.117498 0,-6.162288 -4.99506,-11.157346 -11.15735,-11.157346 z m -96.71028,1.19543 c -6.16197,0 -11.1175,4.955527 -11.1175,11.117498 0,6.161966 4.95553,11.157346 11.1175,11.157346 4.72323,0 8.73232,-2.94722 10.36039,-7.092884 -3.97255,-4.045998 -6.82757,-9.207657 -8.08907,-14.942874 -0.73821,-0.152657 -1.48749,-0.239086 -2.27132,-0.239086 z m 122.21279,9.364201 0,22.035763 -11.67537,0 c -7.63217,0 -13.82714,6.23473 -13.82714,13.866979 0,7.63109 6.19497,13.82714 13.82714,13.82714 l 3.38705,0 1.15558,0 c 2.239,0 4.47478,-1.08741 6.25609,-2.74949 1.78131,-1.66207 3.14086,-3.96444 3.18781,-6.53501 0.0801,-4.41219 0,-17.254039 0,-17.254039 l 0,-0.55787 0,-22.633473 -2.31116,0 z m -106.7519,9.961913 0,30.483469 c 0,5.12322 4.20109,9.2845 9.32436,9.2845 l 0,-2.31116 c -3.87663,0 -7.01319,-3.09673 -7.01319,-6.97334 l 0,-29.048949 c -0.80461,-0.4325 -1.55141,-0.93449 -2.31117,-1.43452 z m -23.11164,2.82919 c -4.09351,3.90587 -6.65456,9.40526 -6.65456,15.50074 0,11.827049 9.61175,21.438039 21.43804,21.438039 l 0,-2.31116 c -10.57945,0 -19.12688,-8.54692 -19.12688,-19.126879 0,-5.69048 2.48389,-10.80462 6.41548,-14.30531 -0.73485,-0.33851 -1.4155,-0.73502 -2.07208,-1.19543 z m -27.21596,9.16496 c -7.63218,0 -13.82714,6.19489 -13.82714,13.827139 l 0,12.7911 2.31117,0 0,-12.7911 c 0,-6.385199 5.13086,-11.555819 11.51597,-11.555819 6.38636,0 11.55582,5.17062 11.55582,11.555819 l 0,12.7911 2.31117,0 0,-12.7911 c 0,-7.632249 -6.23376,-13.827139 -13.86699,-13.827139 z m 77.5834,0.0797 c -7.6326,0 -13.82713,6.23438 -13.82713,13.866979 0,7.63262 6.19453,13.86699 13.82713,13.86699 7.63262,0 13.86699,-6.23437 13.86699,-13.86699 0,-7.632599 -6.23437,-13.866979 -13.86699,-13.866979 z m -154.290153,0.0398 c -7.6319743,0 -13.86698728410752,6.19517 -13.86698728410752,13.827139 0,7.63198 6.23501298410752,13.82714 13.86698728410752,13.82714 7.631973,0 13.82714,-6.19516 13.82714,-13.82714 0,-7.631969 -6.195167,-13.827139 -13.82714,-13.827139 z m 20.760634,1.03604 0,17.333739 c 0,5.12342 4.162235,9.2845 9.284505,9.2845 3.491222,0 6.571552,-1.93031 8.168772,-4.78172 1.585655,2.85141 4.638381,4.78172 8.128923,4.78172 5.123264,0 9.324349,-4.16108 9.324349,-9.2845 l 0,-17.333739 -2.31116,0 0,17.333739 c 0,3.8764 -3.136557,6.97334 -7.013189,6.97334 -3.876637,0 -6.973341,-3.09694 -6.973341,-6.97334 l 0,-17.333739 -2.311165,0 0,17.333739 c 0,3.87661 -3.135236,6.97334 -7.013189,6.97334 -3.875319,0 -6.973341,-3.09694 -6.973341,-6.97334 l 0,-17.333739 -2.311164,0 z m 153.453359,0 0,12.791099 c 0,7.63109 6.19496,13.82714 13.82714,13.82714 7.63218,0 13.86698,-6.19592 13.86698,-13.82714 l 0,-12.791099 -2.31116,0 0,12.791099 c 0,6.38369 -5.17071,11.51598 -11.55582,11.51598 -6.3851,0 -11.51598,-5.13216 -11.51598,-11.51598 l 0,-12.791099 -2.31116,0 z m -19.92384,1.23528 c 6.38563,0 11.55583,5.17021 11.55583,11.555819 0,6.38563 -5.1702,11.55583 -11.55583,11.55583 -6.38561,0 -11.51597,-5.1702 -11.51597,-11.55583 0,-6.385609 5.13036,-11.555819 11.51597,-11.555819 z m 67.82073,0 11.67537,0 c 0.009,1.52706 0.0728,12.045619 0,16.058609 -0.0326,1.78576 -1.01212,3.57763 -2.43071,4.90126 -1.41859,1.32363 -3.25441,2.11193 -4.70203,2.11193 l -4.54263,0 c -6.3851,0 -11.51598,-5.13216 -11.51598,-11.51598 0,-6.385199 5.13088,-11.555819 11.51598,-11.555819 z m -222.110883,0.0399 c 6.384977,0 11.515975,5.131 11.515975,11.515969 0,6.38499 -5.130998,11.51598 -11.515975,11.51598 -6.3849773,0 -11.5558223,-5.13099 -11.5558223,-11.51598 0,-6.384969 5.170845,-11.515969 11.5558223,-11.515969 z"
-   id="circle238"
-   inkscape:export-filename="/home/user/owncloud/core/img/logo.png"
-   inkscape:export-xdpi="90"
-   inkscape:export-ydpi="90"
-   inkscape:connector-curvature="0" />
-
-
-
-
-
-
-
-
-
-
-</svg>
\ No newline at end of file
diff --git a/core/img/noise.png b/core/img/noise.png
index 8fdda17b5e36b5a1aacc09652bc93126a1ccb8fc..271dd5ebcfbdc858f83f0f7ea18a59bb1980d74f 100644
Binary files a/core/img/noise.png and b/core/img/noise.png differ
diff --git a/core/img/places/calendar-dark.png b/core/img/places/calendar-dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..e372104a28482c72ff9e2113f5b77e36a7a9ea88
Binary files /dev/null and b/core/img/places/calendar-dark.png differ
diff --git a/core/img/places/calendar-dark.svg b/core/img/places/calendar-dark.svg
new file mode 100644
index 0000000000000000000000000000000000000000..6f7cb8e74d7dfeb65e12a8c7524418bee7035ed9
--- /dev/null
+++ b/core/img/places/calendar-dark.svg
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg4375"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="calendar-dark.svg"
+   inkscape:export-filename="calendar-dark.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs4377" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11.313709"
+     inkscape:cx="16.386906"
+     inkscape:cy="22.866321"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata4380">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(580.71429,-1.576468)">
+    <path
+       sodipodi:nodetypes="sssssssssssssscssscsssssscsssccsssssssss"
+       id="path2995"
+       d="m -572.71429,4.576468 c -1.108,0 -2,0.892 -2,2 l 0,4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 l 0,-4 c 0,-1.108 -0.892,-2 -2,-2 z m 16,0 c -1.108,0 -2,0.892 -2,2 l 0,4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 l 0,-4 c 0,-1.108 -0.892,-2 -2,-2 z m -13,4 0,2 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 l 0,-1.875 c -1.72799,0.4425402 -3,2.00525 -3,3.875 l 0,16 c 0,2.216 1.784,4 4,4 l 20,0 c 2.216,0 4,-1.784 4,-4 l 0,-16 c 0,-1.86975 -1.27201,-3.4324598 -3,-3.875 l 0,1.875 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 l 0,-2 z m -4.90615,10.000125 19.8123,0 c 0.0554,0 0.0937,0.03835 0.0937,0.09375 l 0,9.81225 c 0,0.05539 -0.0384,0.09375 -0.0937,0.09375 l -19.8123,0 c -0.0554,0 -0.0937,-0.03835 -0.0937,-0.09375 l 0,-9.81225 c 0,-0.05543 0.0384,-0.09375 0.0937,-0.09375 z"
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       inkscape:connector-curvature="0" />
+    <path
+       inkscape:connector-curvature="0"
+       style="fill:#000000;fill-opacity:1;stroke:none"
+       d="m -572.71429,3.576468 c -1.108,0 -2,0.892 -2,2 l 0,4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 l 0,-4 c 0,-1.108 -0.892,-2 -2,-2 z m 16,0 c -1.108,0 -2,0.892 -2,2 l 0,4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 l 0,-4 c 0,-1.108 -0.892,-2 -2,-2 z m -13,4 0,2 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 l 0,-1.875 c -1.72799,0.4425402 -3,2.00525 -3,3.875 l 0,16 c 0,2.216 1.784,4 4,4 l 20,0 c 2.216,0 4,-1.784 4,-4 l 0,-16 c 0,-1.86975 -1.27201,-3.4324598 -3,-3.875 l 0,1.875 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 l 0,-2 z m -4.90615,10.000125 19.8123,0 c 0.0554,0 0.0937,0.03835 0.0937,0.09375 l 0,9.81225 c 0,0.05539 -0.0384,0.09375 -0.0937,0.09375 l -19.8123,0 c -0.0554,0 -0.0937,-0.03835 -0.0937,-0.09375 l 0,-9.81225 c 0,-0.05543 0.0384,-0.09375 0.0937,-0.09375 z"
+       id="path3763"
+       sodipodi:nodetypes="sssssssssssssscssscsssssscsssccsssssssss" />
+  </g>
+</svg>
diff --git a/core/img/places/contacts-dark.png b/core/img/places/contacts-dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..a08339d1d3d88413910fe07e95beb32536983983
Binary files /dev/null and b/core/img/places/contacts-dark.png differ
diff --git a/core/img/places/contacts-dark.svg b/core/img/places/contacts-dark.svg
new file mode 100644
index 0000000000000000000000000000000000000000..df364911c519e617ecdee7dca235072513107705
--- /dev/null
+++ b/core/img/places/contacts-dark.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="32"
+   height="32"
+   id="svg3301"
+   version="1.1"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="contacts-dark.svg"
+   inkscape:export-filename="contacts-dark.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs3303" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11.313708"
+     inkscape:cx="20.488654"
+     inkscape:cy="17.050062"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:window-width="1280"
+     inkscape:window-height="773"
+     inkscape:window-x="0"
+     inkscape:window-y="-1"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata3306">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-359.05493,-515.86218)">
+    <path
+       inkscape:connector-curvature="0"
+       id="path2995"
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m 368.28616,523.52657 c -1.95489,0 -3.61329,1.42966 -3.61329,3.27468 0.0139,0.58316 0.066,1.30227 0.41402,2.82301 l 0,0.0376 0.0377,0.0377 c 0.11171,0.32 0.27429,0.50305 0.4893,0.7528 0.21502,0.24974 0.47136,0.54371 0.71513,0.79045 0.0288,0.029 0.047,0.0469 0.0752,0.0753 0.0483,0.21038 0.1069,0.43679 0.15055,0.63988 0.11614,0.54034 0.10423,0.92299 0.0752,1.05392 -0.84004,0.29496 -1.88513,0.64623 -2.82289,1.05393 -0.52647,0.22889 -1.00287,0.43328 -1.39261,0.67751 -0.38974,0.24425 -0.77735,0.42877 -0.90332,0.97865 -0.002,0.025 -0.002,0.0502 0,0.0753 -0.1231,1.13039 -0.30932,2.79261 -0.45166,3.91458 -0.0307,0.23616 0.0937,0.48512 0.3011,0.60223 1.70267,0.91975 4.31819,1.28993 6.92547,1.27976 2.60727,-0.0102 5.20196,-0.4021 6.85019,-1.27976 0.20736,-0.11711 0.33184,-0.36607 0.3011,-0.60223 -0.0454,-0.35072 -0.10126,-1.14154 -0.15055,-1.91966 -0.0493,-0.77812 -0.092,-1.54354 -0.15055,-1.99492 -0.0204,-0.1119 -0.0734,-0.21766 -0.15056,-0.30112 -0.52359,-0.62524 -1.30583,-1.00746 -2.22067,-1.39269 -0.83517,-0.35169 -1.81429,-0.71689 -2.78523,-1.1292 -0.0543,-0.12106 -0.10833,-0.47327 0,-1.01628 0.029,-0.1458 0.0747,-0.30196 0.11292,-0.45168 0.0913,-0.1022 0.16236,-0.18571 0.26346,-0.30112 0.21564,-0.24614 0.44734,-0.50432 0.63986,-0.7528 0.19251,-0.24849 0.35001,-0.46165 0.45166,-0.7528 l 0.0377,-0.0376 c 0.39341,-1.58787 0.39363,-2.25045 0.41403,-2.82301 l 0,-0.0377 c 0,-1.84501 -1.6584,-3.27468 -3.61329,-3.27468 z m 10.33571,-3.00497 c -2.85015,0 -5.26802,2.08432 -5.26802,4.77416 0.0202,0.85019 0.0963,1.89859 0.60362,4.11566 l 0,0.0549 0.0549,0.0549 c 0.16287,0.46651 0.39989,0.73339 0.71338,1.0975 0.31349,0.36411 0.68722,0.79267 1.04262,1.15239 0.0418,0.0423 0.0686,0.0686 0.10975,0.10977 0.0705,0.3067 0.15586,0.63679 0.21951,0.93288 0.16931,0.78776 0.15194,1.34562 0.10976,1.5365 -1.22474,0.43004 -2.74844,0.94215 -4.11565,1.53651 -0.76758,0.3337 -1.46216,0.63168 -2.03038,0.98778 -0.56823,0.35608 -1.13334,0.6251 -1.31701,1.42675 -0.003,0.0365 -0.003,0.0733 0,0.10977 -0.17948,1.64799 -0.45098,4.07134 -0.6585,5.70704 -0.0448,0.34431 0.13667,0.70727 0.439,0.87801 2.48242,1.34091 6.29573,1.88059 10.09705,1.86576 3.8013,-0.0148 7.58424,-0.58622 9.98729,-1.86576 0.30232,-0.17074 0.4838,-0.5337 0.439,-0.87801 -0.0663,-0.51129 -0.14765,-1.66422 -0.21951,-2.79864 -0.0719,-1.13442 -0.13422,-2.25035 -0.21948,-2.90841 -0.0298,-0.16311 -0.10688,-0.31733 -0.2195,-0.43899 -0.76337,-0.91154 -1.90387,-1.46878 -3.23765,-2.0304 -1.21766,-0.51271 -2.64517,-1.04515 -4.06077,-1.64625 -0.0791,-0.1765 -0.15794,-0.69001 0,-1.48165 0.0424,-0.21256 0.10883,-0.44024 0.16463,-0.65849 0.13304,-0.14901 0.23672,-0.27077 0.38413,-0.43901 0.3144,-0.35883 0.6522,-0.73526 0.93288,-1.09751 0.28067,-0.36226 0.51031,-0.67304 0.65849,-1.09752 l 0.0549,-0.0549 c 0.57359,-2.31494 0.57389,-3.28093 0.60364,-4.11566 l 0,-0.0549 c 0,-2.68983 -2.41788,-4.77415 -5.26803,-4.77415 z" />
+    <path
+       d="m 368.28616,522.52661 c -1.95489,0 -3.61329,1.42966 -3.61329,3.27468 0.0139,0.58316 0.066,1.30227 0.41402,2.82301 l 0,0.0376 0.0377,0.0377 c 0.11171,0.32 0.27429,0.50305 0.4893,0.7528 0.21502,0.24974 0.47136,0.54371 0.71513,0.79045 0.0288,0.029 0.047,0.0469 0.0752,0.0753 0.0483,0.21038 0.1069,0.43679 0.15055,0.63988 0.11614,0.54034 0.10423,0.92299 0.0752,1.05392 -0.84004,0.29496 -1.88513,0.64623 -2.82289,1.05393 -0.52647,0.22889 -1.00287,0.43328 -1.39261,0.67751 -0.38974,0.24425 -0.77735,0.42877 -0.90332,0.97865 -0.002,0.025 -0.002,0.0502 0,0.0753 -0.1231,1.13039 -0.30932,2.79261 -0.45166,3.91458 -0.0307,0.23616 0.0937,0.48512 0.3011,0.60223 1.70267,0.91975 4.31819,1.28993 6.92547,1.27976 2.60727,-0.0102 5.20196,-0.4021 6.85019,-1.27976 0.20736,-0.11711 0.33184,-0.36607 0.3011,-0.60223 -0.0454,-0.35072 -0.10126,-1.14154 -0.15055,-1.91966 -0.0493,-0.77812 -0.092,-1.54354 -0.15055,-1.99492 -0.0204,-0.1119 -0.0734,-0.21766 -0.15056,-0.30112 -0.52359,-0.62524 -1.30583,-1.00746 -2.22067,-1.39269 -0.83517,-0.35169 -1.81429,-0.71689 -2.78523,-1.1292 -0.0543,-0.12106 -0.10833,-0.47327 0,-1.01628 0.029,-0.1458 0.0747,-0.30196 0.11292,-0.45168 0.0913,-0.1022 0.16236,-0.18571 0.26346,-0.30112 0.21564,-0.24614 0.44734,-0.50432 0.63986,-0.7528 0.19251,-0.24849 0.35001,-0.46165 0.45166,-0.7528 l 0.0377,-0.0376 c 0.39341,-1.58787 0.39363,-2.25045 0.41403,-2.82301 l 0,-0.0377 c 0,-1.84501 -1.6584,-3.27468 -3.61329,-3.27468 z m 10.33571,-3.00497 c -2.85015,0 -5.26802,2.08432 -5.26802,4.77416 0.0202,0.85019 0.0963,1.89859 0.60362,4.11566 l 0,0.0549 0.0549,0.0549 c 0.16287,0.46651 0.39989,0.73339 0.71338,1.0975 0.31349,0.36411 0.68722,0.79267 1.04262,1.15239 0.0418,0.0423 0.0686,0.0686 0.10975,0.10977 0.0705,0.3067 0.15586,0.63679 0.21951,0.93288 0.16931,0.78776 0.15194,1.34562 0.10976,1.5365 -1.22474,0.43004 -2.74844,0.94215 -4.11565,1.53651 -0.76758,0.3337 -1.46216,0.63168 -2.03038,0.98778 -0.56823,0.35608 -1.13334,0.6251 -1.31701,1.42675 -0.003,0.0365 -0.003,0.0733 0,0.10977 -0.17948,1.64799 -0.45098,4.07134 -0.6585,5.70704 -0.0448,0.34431 0.13667,0.70727 0.439,0.87801 2.48242,1.34091 6.29573,1.88059 10.09705,1.86576 3.8013,-0.0148 7.58424,-0.58622 9.98729,-1.86576 0.30232,-0.17074 0.4838,-0.5337 0.439,-0.87801 -0.0663,-0.51129 -0.14765,-1.66422 -0.21951,-2.79864 -0.0719,-1.13442 -0.13422,-2.25035 -0.21948,-2.90841 -0.0298,-0.16311 -0.10688,-0.31733 -0.2195,-0.43899 -0.76337,-0.91154 -1.90387,-1.46878 -3.23765,-2.0304 -1.21766,-0.51271 -2.64517,-1.04515 -4.06077,-1.64625 -0.0791,-0.1765 -0.15794,-0.69001 0,-1.48165 0.0424,-0.21256 0.10883,-0.44024 0.16463,-0.65849 0.13304,-0.14901 0.23672,-0.27077 0.38413,-0.43901 0.3144,-0.35883 0.6522,-0.73526 0.93288,-1.09751 0.28067,-0.36226 0.51031,-0.67304 0.65849,-1.09752 l 0.0549,-0.0549 c 0.57359,-2.31494 0.57389,-3.28093 0.60364,-4.11566 l 0,-0.0549 c 0,-2.68983 -2.41788,-4.77415 -5.26803,-4.77415 z"
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       id="path3763"
+       inkscape:connector-curvature="0" />
+  </g>
+</svg>
diff --git a/core/js/compatibility.js b/core/js/compatibility.js
new file mode 100644
index 0000000000000000000000000000000000000000..0cfeefab87128329f43dceb35c473fc806c70ca4
--- /dev/null
+++ b/core/js/compatibility.js
@@ -0,0 +1,32 @@
+
+//https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/bind
+if (!Function.prototype.bind) {
+	Function.prototype.bind = function (oThis) {
+		if (typeof this !== "function") {
+			// closest thing possible to the ECMAScript 5 internal IsCallable function
+			throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
+		}
+
+		var aArgs = Array.prototype.slice.call(arguments, 1),
+			fToBind = this,
+			fNOP = function () {},
+			fBound = function () {
+				return fToBind.apply(this instanceof fNOP && oThis
+					? this
+					: oThis,
+					aArgs.concat(Array.prototype.slice.call(arguments)));
+			};
+
+		fNOP.prototype = this.prototype;
+		fBound.prototype = new fNOP();
+
+		return fBound;
+	};
+}
+
+//https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/Trim
+if(!String.prototype.trim) {
+	String.prototype.trim = function () {
+		return this.replace(/^\s+|\s+$/g,'');
+	};
+}
\ No newline at end of file
diff --git a/core/js/eventsource.js b/core/js/eventsource.js
index f783ade7ae916cd79401a4fa98bd9b4cbe25b45d..ce8c8387c8efef5eab85542807ca2993a0a998a2 100644
--- a/core/js/eventsource.js
+++ b/core/js/eventsource.js
@@ -87,8 +87,10 @@ OC.EventSource.prototype={
 	useFallBack:false,
 	fallBackCallBack:function(type,data){
 		if(type){
-			for(var i=0;i<this.listeners[type].length;i++){
-				this.listeners[type][i](data);
+			if (typeof this.listeners['done'] != 'undefined') {
+				for(var i=0;i<this.listeners[type].length;i++){
+					this.listeners[type][i](data);
+				}
 			}
 		}else{
 			for(var i=0;i<this.typelessListeners.length;i++){
@@ -117,6 +119,8 @@ OC.EventSource.prototype={
 		}
 	},
 	close:function(){
-		this.source.close();
+		if (typeof this.source !='undefined') {
+			this.source.close();
+		}
 	}
 }
diff --git a/core/js/js.js b/core/js/js.js
index ae23c955c3865379e5f35a163dff57014d975879..6d5d65403fb104103c882a4ee11d081bfb34e2ec 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -663,14 +663,14 @@ $(document).ready(function(){
 		}
 	});
 	$('#settings #expand').click(function(event) {
-		$('#settings #expanddiv').slideToggle();
+		$('#settings #expanddiv').slideToggle(200);
 		event.stopPropagation();
 	});
 	$('#settings #expanddiv').click(function(event){
 		event.stopPropagation();
 	});
 	$(window).click(function(){//hide the settings menu when clicking outside it
-		$('#settings #expanddiv').slideUp();
+		$('#settings #expanddiv').slideUp(200);
 	});
 
 	// all the tipsy stuff needs to be here (in reverse order) to work
diff --git a/core/js/share.js b/core/js/share.js
index 58cb787b6d1038585748c2b5fccfd9d19ed18d29..6d1c3954044c03f2dfc47ed26967195d0c0e7595 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -26,7 +26,7 @@ OC.Share={
 							var action = $(file).find('.fileactions .action').filterAttr('data-action', 'Share');
 							action.find('img').attr('src', image);
 							action.addClass('permanent');
-							action.html(action.html().replace(t('core', 'Share'), t('core', 'Shared')));
+							action.html(t('core', 'Shared'));
 						}
 						var dir = $('#dir').val();
 						if (dir.length > 1) {
@@ -40,7 +40,7 @@ OC.Share={
 									if (img.attr('src') != OC.imagePath('core', 'actions/public')) {
 										img.attr('src', image);
 										action.addClass('permanent');
-										action.html(action.html().replace(t('core', 'Share'), t('core', 'Shared')));
+										action.html(t('core', 'Shared'));
 									}
 								}
 								last = path;
@@ -87,10 +87,10 @@ OC.Share={
 			action.find('img').attr('src', image);
 			if (shares) {
 				action.addClass('permanent');
-				action.html(action.html().replace(t('core', 'Share'), t('core', 'Shared')));
+				action.html(t('core', 'Shared'));
 			} else {
 				action.removeClass('permanent');
-				action.html(action.html().replace(t('core', 'Shared'), t('core', 'Share')));
+				action.html(t('core', 'Share'));
 			}
 		}
 		if (shares) {
diff --git a/core/js/singleselect.js b/core/js/singleselect.js
new file mode 100644
index 0000000000000000000000000000000000000000..1a018b7414872b3a740e7adf26d63d5ea7f1fc0f
--- /dev/null
+++ b/core/js/singleselect.js
@@ -0,0 +1,76 @@
+(function ($) {
+	$.fn.singleSelect = function () {
+		return this.each(function (i, select) {
+			var input = $('<input/>');
+			select = $(select);
+			input.css('position', 'absolute');
+			input.css(select.offset());
+			input.css({
+				'box-sizing': 'border-box',
+				'-moz-box-sizing': 'border-box',
+				'margin': 0,
+				'width': (select.width() - 5) + 'px',
+				'height': (select.outerHeight() - 2) + 'px',
+				'border': 'none',
+				'box-shadow': 'none',
+				'margin-top': '1px',
+				'margin-left': '1px',
+				'z-index': 1000
+			});
+			input.hide();
+			$('body').append(input);
+
+			select.on('change', function (event) {
+				var value = $(this).val(),
+					newAttr = $('option:selected', $(this)).attr('data-new');
+				if (!(typeof newAttr !== 'undefined' && newAttr !== false)) {
+					input.hide();
+					select.data('previous', value);
+				} else {
+					event.stopImmediatePropagation();
+					input.show();
+					select.css('background-color', 'white');
+					input.focus();
+				}
+			});
+
+			$(select).data('previous', $(select).val());
+
+			input.on('change', function () {
+				var value = $(this).val();
+				if (value) {
+					select.children().attr('selected', null);
+					var existingOption = select.children().filter(function (i, option) {
+						return ($(option).val() == value);
+					});
+					if (existingOption.length) {
+						existingOption.attr('selected', 'selected');
+					} else {
+						var option = $('<option/>');
+						option.attr('selected', 'selected').attr('value', value).text(value);
+						select.children().last().before(option);
+					}
+					select.val(value);
+					select.css('background-color', null);
+					input.val(null);
+					input.hide();
+					select.change();
+				} else {
+					var previous = select.data('previous');
+					select.children().attr('selected', null);
+					select.children().each(function (i, option) {
+						if ($(option).val() == previous) {
+							$(option).attr('selected', 'selected');
+						}
+					});
+					select.removeClass('active');
+					input.hide();
+				}
+			});
+
+			input.on('blur', function () {
+				$(this).change();
+			});
+		});
+	}
+})(jQuery);
diff --git a/core/l10n/bn_BD.php b/core/l10n/bn_BD.php
index 426b4856707ad07bd86841cf5fa0c53b97cff96a..686ebdf9af1a74091a9f72bac93bccbf628f7135 100644
--- a/core/l10n/bn_BD.php
+++ b/core/l10n/bn_BD.php
@@ -52,8 +52,8 @@
 "Error" => "সমস্যা",
 "The app name is not specified." => "অ্যাপের নামটি  সুনির্দিষ্ট নয়।",
 "The required file {file} is not installed!" => "আবশ্যিক {file} টি সংস্থাপিত নেই !",
-"Share" => "ভাগাভাগি কর",
 "Shared" => "ভাগাভাগিকৃত",
+"Share" => "ভাগাভাগি কর",
 "Error while sharing" => "ভাগাভাগি করতে সমস্যা দেখা দিয়েছে  ",
 "Error while unsharing" => "ভাগাভাগি বাতিল করতে সমস্যা দেখা দিয়েছে",
 "Error while changing permissions" => "অনুমতিসমূহ  পরিবর্তন করতে সমস্যা দেখা দিয়েছে",
diff --git a/core/l10n/ca.php b/core/l10n/ca.php
index 2126b96eddb3abd0fb71c42122f68c683e62dd87..d260241c4d6fab767d789b92ecd48c0f09f367db 100644
--- a/core/l10n/ca.php
+++ b/core/l10n/ca.php
@@ -53,8 +53,8 @@
 "Error" => "Error",
 "The app name is not specified." => "No s'ha especificat el nom de l'aplicació.",
 "The required file {file} is not installed!" => "El fitxer requerit {file} no està instal·lat!",
-"Share" => "Comparteix",
 "Shared" => "Compartit",
+"Share" => "Comparteix",
 "Error while sharing" => "Error en compartir",
 "Error while unsharing" => "Error en deixar de compartir",
 "Error while changing permissions" => "Error en canviar els permisos",
diff --git a/core/l10n/cs_CZ.php b/core/l10n/cs_CZ.php
index 331fcefd923bb055ff45b5b329fb2ab0fb20051a..afd55d42bf4b1ea4758225216028b6e7dda0782b 100644
--- a/core/l10n/cs_CZ.php
+++ b/core/l10n/cs_CZ.php
@@ -53,8 +53,8 @@
 "Error" => "Chyba",
 "The app name is not specified." => "Není určen název aplikace.",
 "The required file {file} is not installed!" => "Požadovaný soubor {file} není nainstalován.",
-"Share" => "Sdílet",
 "Shared" => "Sdílené",
+"Share" => "Sdílet",
 "Error while sharing" => "Chyba při sdílení",
 "Error while unsharing" => "Chyba při rušení sdílení",
 "Error while changing permissions" => "Chyba při změně oprávnění",
diff --git a/core/l10n/da.php b/core/l10n/da.php
index ebe4808544b22767a3d3254382e788e9ba9c55d0..6d982aac2a91bafe39f8b1f2bf7f1246c623c3ca 100644
--- a/core/l10n/da.php
+++ b/core/l10n/da.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "Bruger %s delte mappe \"%s\" med dig. Det kan hentes her: %s",
 "Category type not provided." => "Kategori typen ikke er fastsat.",
 "No category to add?" => "Ingen kategori at tilføje?",
+"This category already exists: %s" => "Kategorien eksisterer allerede: %s",
 "Object type not provided." => "Object type ikke er fastsat.",
 "%s ID not provided." => "%s ID ikke oplyst.",
 "Error adding %s to favorites." => "Fejl ved tilføjelse af %s til favoritter.",
@@ -52,6 +53,7 @@
 "Error" => "Fejl",
 "The app name is not specified." => "Den app navn er ikke angivet.",
 "The required file {file} is not installed!" => "Den krævede fil {file} er ikke installeret!",
+"Shared" => "Delt",
 "Share" => "Del",
 "Error while sharing" => "Fejl under deling",
 "Error while unsharing" => "Fejl under annullering af deling",
@@ -107,6 +109,8 @@
 "Security Warning" => "Sikkerhedsadvarsel",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ingen sikker tilfældighedsgenerator til tal er tilgængelig. Aktiver venligst OpenSSL udvidelsen.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Uden en sikker tilfældighedsgenerator til tal kan en angriber måske gætte dit gendan kodeord og overtage din konto",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dine data mappe og filer er sandsynligvis tilgængelige fra internettet fordi .htaccess filen ikke virker.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "For at vide mere om hvordan du konfigurerer din server ordentligt, se venligst <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentationen</a>.",
 "Create an <strong>admin account</strong>" => "Opret en <strong>administratorkonto</strong>",
 "Advanced" => "Avanceret",
 "Data folder" => "Datamappe",
@@ -126,6 +130,7 @@
 "Lost your password?" => "Mistet dit kodeord?",
 "remember" => "husk",
 "Log in" => "Log ind",
+"Alternative Logins" => "Alternative logins",
 "prev" => "forrige",
 "next" => "næste",
 "Updating ownCloud to version %s, this may take a while." => "Opdatere Owncloud til version %s, dette kan tage et stykke tid."
diff --git a/core/l10n/de.php b/core/l10n/de.php
index d14af6639c921b3bf3da20cfce93466c698e5b1d..c18cf7259c5c2c51d128fe4eee186340d31eb238 100644
--- a/core/l10n/de.php
+++ b/core/l10n/de.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s hat eine Verzeichnis \"%s\" für Dich freigegeben. Es ist zum Download hier ferfügbar: %s",
 "Category type not provided." => "Kategorie nicht angegeben.",
 "No category to add?" => "Keine Kategorie hinzuzufügen?",
+"This category already exists: %s" => "Die Kategorie '%s' existiert bereits.",
 "Object type not provided." => "Objekttyp nicht angegeben.",
 "%s ID not provided." => "%s ID nicht angegeben.",
 "Error adding %s to favorites." => "Fehler beim Hinzufügen von %s zu den Favoriten.",
@@ -52,8 +53,8 @@
 "Error" => "Fehler",
 "The app name is not specified." => "Der App-Name ist nicht angegeben.",
 "The required file {file} is not installed!" => "Die benötigte Datei {file} ist nicht installiert.",
-"Share" => "Freigeben",
 "Shared" => "Freigegeben",
+"Share" => "Freigeben",
 "Error while sharing" => "Fehler beim Freigeben",
 "Error while unsharing" => "Fehler beim Aufheben der Freigabe",
 "Error while changing permissions" => "Fehler beim Ändern der Rechte",
@@ -108,6 +109,8 @@
 "Security Warning" => "Sicherheitswarnung",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktiviere die PHP-Erweiterung für OpenSSL.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Konten  zu übernehmen.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Bitte lesen Sie die <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">Dokumentation</a> für Informationen, wie Sie Ihren Server konfigurieren.",
 "Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen",
 "Advanced" => "Fortgeschritten",
 "Data folder" => "Datenverzeichnis",
@@ -127,6 +130,7 @@
 "Lost your password?" => "Passwort vergessen?",
 "remember" => "merken",
 "Log in" => "Einloggen",
+"Alternative Logins" => "Alternative Logins",
 "prev" => "Zurück",
 "next" => "Weiter",
 "Updating ownCloud to version %s, this may take a while." => "Aktualisiere ownCloud auf Version %s. Dies könnte eine Weile dauern."
diff --git a/core/l10n/de_DE.php b/core/l10n/de_DE.php
index fdebfeb6587145f2dc581d09dd333d6a142cbe37..b099510d0d9eed511ae9ba5adf0c52e9a827e791 100644
--- a/core/l10n/de_DE.php
+++ b/core/l10n/de_DE.php
@@ -53,8 +53,8 @@
 "Error" => "Fehler",
 "The app name is not specified." => "Der App-Name ist nicht angegeben.",
 "The required file {file} is not installed!" => "Die benötigte Datei {file} ist nicht installiert.",
-"Share" => "Freigeben",
 "Shared" => "Freigegeben",
+"Share" => "Freigeben",
 "Error while sharing" => "Fehler bei der Freigabe",
 "Error while unsharing" => "Fehler bei der Aufhebung der Freigabe",
 "Error while changing permissions" => "Fehler bei der Änderung der Rechte",
@@ -109,6 +109,8 @@
 "Security Warning" => "Sicherheitshinweis",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktivieren Sie die PHP-Erweiterung für OpenSSL.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage, die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Ihr Konto zu übernehmen.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Bitte lesen Sie die <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">Dokumentation</a> für Informationen, wie Sie Ihren Server wahrscheinlich konfigurieren.",
 "Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen",
 "Advanced" => "Fortgeschritten",
 "Data folder" => "Datenverzeichnis",
diff --git a/core/l10n/es.php b/core/l10n/es.php
index a95d408a0bede3795479fbabcfeda1833abf4791..5f4a2d6b724dd61d4ece0905fc5de816f3227ae4 100644
--- a/core/l10n/es.php
+++ b/core/l10n/es.php
@@ -53,8 +53,8 @@
 "Error" => "Fallo",
 "The app name is not specified." => "El nombre de la app no se ha especificado.",
 "The required file {file} is not installed!" => "El fichero  {file} requerido, no está instalado.",
-"Share" => "Compartir",
 "Shared" => "Compartido",
+"Share" => "Compartir",
 "Error while sharing" => "Error compartiendo",
 "Error while unsharing" => "Error descompartiendo",
 "Error while changing permissions" => "Error cambiando permisos",
@@ -109,6 +109,8 @@
 "Security Warning" => "Advertencia de seguridad",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "No está disponible un generador de números aleatorios seguro, por favor habilite la extensión OpenSSL de PHP.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de su contraseña y tomar control de su cuenta.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Su directorio de datos y sus archivos están probablemente accesibles a través de internet ya que el archivo .htaccess no está funcionando.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Para información sobre cómo configurar adecuadamente su servidor, por favor vea la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentación</a>.",
 "Create an <strong>admin account</strong>" => "Crea una <strong>cuenta de administrador</strong>",
 "Advanced" => "Avanzado",
 "Data folder" => "Directorio de almacenamiento",
diff --git a/core/l10n/es_AR.php b/core/l10n/es_AR.php
index 819e52a7856a6819417c89ac61e1787d27fd6f09..dcbae5c1e94ff0cf62aad86eb6405d43e2c5ed8b 100644
--- a/core/l10n/es_AR.php
+++ b/core/l10n/es_AR.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "El usuario %s compartió el archivo \"%s\" con vos. Está disponible para su descarga aquí: %s",
 "Category type not provided." => "Tipo de categoría no provisto. ",
 "No category to add?" => "¿Ninguna categoría para añadir?",
+"This category already exists: %s" => "Esta categoría ya existe: %s",
 "Object type not provided." => "Tipo de objeto no provisto. ",
 "%s ID not provided." => "%s ID no provista. ",
 "Error adding %s to favorites." => "Error al agregar %s a favoritos. ",
@@ -52,8 +53,8 @@
 "Error" => "Error",
 "The app name is not specified." => "El nombre de la aplicación no esta especificado.",
 "The required file {file} is not installed!" => "¡El archivo requerido {file} no está instalado!",
-"Share" => "Compartir",
 "Shared" => "Compartido",
+"Share" => "Compartir",
 "Error while sharing" => "Error al compartir",
 "Error while unsharing" => "Error en el procedimiento de ",
 "Error while changing permissions" => "Error al cambiar permisos",
@@ -108,6 +109,8 @@
 "Security Warning" => "Advertencia de seguridad",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "No hay disponible ningún generador de números aleatorios seguro. Por favor habilitá la extensión OpenSSL de PHP.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de tu contraseña y tomar control de tu cuenta.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Tu directorio de datos y tus archivos probablemente son accesibles a través de internet, ya que el archivo .htaccess no está funcionando.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Para información sobre cómo configurar adecuadamente tu servidor, por favor mirá la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentación</a>.",
 "Create an <strong>admin account</strong>" => "Crear una <strong>cuenta de administrador</strong>",
 "Advanced" => "Avanzado",
 "Data folder" => "Directorio de almacenamiento",
@@ -127,6 +130,7 @@
 "Lost your password?" => "¿Perdiste tu contraseña?",
 "remember" => "recordame",
 "Log in" => "Entrar",
+"Alternative Logins" => "Nombre alternativos de usuarios",
 "prev" => "anterior",
 "next" => "siguiente",
 "Updating ownCloud to version %s, this may take a while." => "Actualizando ownCloud a la versión %s, puede domorar un rato."
diff --git a/core/l10n/et_EE.php b/core/l10n/et_EE.php
index b0fc75736a0c3cd852e82c24d27d43de06f7386d..de75b3f6f1638dde26d39bc2312b2890243de025 100644
--- a/core/l10n/et_EE.php
+++ b/core/l10n/et_EE.php
@@ -24,6 +24,7 @@
 "seconds ago" => "sekundit tagasi",
 "1 minute ago" => "1 minut tagasi",
 "{minutes} minutes ago" => "{minutes} minutit tagasi",
+"1 hour ago" => "1 tund tagasi",
 "today" => "täna",
 "yesterday" => "eile",
 "{days} days ago" => "{days} päeva tagasi",
diff --git a/core/l10n/eu.php b/core/l10n/eu.php
index 7dce8c53fb9d32808361a12e7089c6a203837862..8c36254caf8e7e6bf3c3c3c63aea27ea912128e9 100644
--- a/core/l10n/eu.php
+++ b/core/l10n/eu.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s erabiltzaileak \"%s\" karpeta zurekin partekatu du. Hemen duzu eskuragarri:  %s",
 "Category type not provided." => "Kategoria mota ez da zehaztu.",
 "No category to add?" => "Ez dago gehitzeko kategoriarik?",
+"This category already exists: %s" => "Kategoria hau dagoeneko existitzen da: %s",
 "Object type not provided." => "Objetu mota ez da zehaztu.",
 "%s ID not provided." => "%s ID mota ez da zehaztu.",
 "Error adding %s to favorites." => "Errorea gertatu da %s gogokoetara gehitzean.",
@@ -52,8 +53,8 @@
 "Error" => "Errorea",
 "The app name is not specified." => "App izena ez dago zehaztuta.",
 "The required file {file} is not installed!" => "Beharrezkoa den {file} fitxategia ez dago instalatuta!",
-"Share" => "Elkarbanatu",
 "Shared" => "Elkarbanatuta",
+"Share" => "Elkarbanatu",
 "Error while sharing" => "Errore bat egon da elkarbanatzean",
 "Error while unsharing" => "Errore bat egon da elkarbanaketa desegitean",
 "Error while changing permissions" => "Errore bat egon da baimenak aldatzean",
@@ -108,6 +109,8 @@
 "Security Warning" => "Segurtasun abisua",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ez dago hausazko zenbaki sortzaile segururik eskuragarri, mesedez gatiu PHP OpenSSL extensioa.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Hausazko zenbaki sortzaile segururik gabe erasotzaile batek pasahitza berrezartzeko kodeak iragarri ditzake eta zure kontuaz jabetu.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Zure data karpeta eta fitxategiak interneten bidez eskuragarri egon daitezke .htaccess fitxategia ez delako funtzionatzen ari.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Zure zerbitzaria ongi konfiguratzeko informazioa eskuratzeko, begiratu  <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentazioa</a>.",
 "Create an <strong>admin account</strong>" => "Sortu <strong>kudeatzaile kontu<strong> bat",
 "Advanced" => "Aurreratua",
 "Data folder" => "Datuen karpeta",
@@ -127,6 +130,7 @@
 "Lost your password?" => "Galdu duzu pasahitza?",
 "remember" => "gogoratu",
 "Log in" => "Hasi saioa",
+"Alternative Logins" => "Beste erabiltzaile izenak",
 "prev" => "aurrekoa",
 "next" => "hurrengoa",
 "Updating ownCloud to version %s, this may take a while." => "ownCloud %s bertsiora eguneratzen, denbora har dezake."
diff --git a/core/l10n/fi_FI.php b/core/l10n/fi_FI.php
index dedbf6723f79b416bd6eb7acc41b2c86aa0f1076..1b412510e0a391ec3181016a34fa855186efb150 100644
--- a/core/l10n/fi_FI.php
+++ b/core/l10n/fi_FI.php
@@ -100,6 +100,8 @@
 "Edit categories" => "Muokkaa luokkia",
 "Add" => "Lisää",
 "Security Warning" => "Turvallisuusvaroitus",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Datakansiosi ja tiedostosi ovat mitä luultavimmin muiden saavutettavissa internetistä, koska .htaccess-tiedosto ei toimi.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Katso palvelimen asetuksien määrittämiseen liittyvät ohjeet <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentaatiosta</a>.",
 "Create an <strong>admin account</strong>" => "Luo <strong>ylläpitäjän tunnus</strong>",
 "Advanced" => "Lisäasetukset",
 "Data folder" => "Datakansio",
diff --git a/core/l10n/fr.php b/core/l10n/fr.php
index ad8ff0a6fcadf98ed31586713b0aa4d4d413e701..f6ad077d268d7803cf3f96bf5ad913b334c8f9a3 100644
--- a/core/l10n/fr.php
+++ b/core/l10n/fr.php
@@ -53,8 +53,8 @@
 "Error" => "Erreur",
 "The app name is not specified." => "Le nom de l'application n'est pas spécifié.",
 "The required file {file} is not installed!" => "Le fichier requis {file} n'est pas installé !",
-"Share" => "Partager",
 "Shared" => "Partagé",
+"Share" => "Partager",
 "Error while sharing" => "Erreur lors de la mise en partage",
 "Error while unsharing" => "Erreur lors de l'annulation du partage",
 "Error while changing permissions" => "Erreur lors du changement des permissions",
@@ -109,6 +109,8 @@
 "Security Warning" => "Avertissement de sécurité",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Aucun générateur de nombre aléatoire sécurisé n'est disponible, veuillez activer l'extension PHP OpenSSL",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sans générateur de nombre aléatoire sécurisé, un attaquant peut être en mesure de prédire les jetons de réinitialisation du mot de passe, et ainsi prendre le contrôle de votre compte utilisateur.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Votre répertoire data est certainement accessible depuis l'internet car le fichier .htaccess ne semble pas fonctionner",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Pour les informations de configuration de votre serveur, veuillez lire la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>.",
 "Create an <strong>admin account</strong>" => "Créer un <strong>compte administrateur</strong>",
 "Advanced" => "Avancé",
 "Data folder" => "Répertoire des données",
diff --git a/core/l10n/hi.php b/core/l10n/hi.php
index d7f9fd150b0fa963f249759d64e3a778a1535fea..7d55c5b6b2f9aab1e95e080f0d0ef1d25a5822b6 100644
--- a/core/l10n/hi.php
+++ b/core/l10n/hi.php
@@ -1,17 +1,27 @@
 <?php $TRANSLATIONS = array(
+"Settings" => "सेटिंग्स",
 "Password" => "पासवर्ड",
 "Use the following link to reset your password: {link}" => "आगे दिये गये लिंक का उपयोग पासवर्ड बदलने के लिये किजीये: {link}",
 "You will receive a link to reset your password via Email." => "पासवर्ड बदलने कि लिंक आपको ई-मेल द्वारा भेजी जायेगी|",
 "Username" => "प्रयोक्ता का नाम",
 "Your password was reset" => "आपका पासवर्ड बदला गया है",
 "New password" => "नया पासवर्ड",
+"Personal" => "यक्तिगत",
+"Users" => "उपयोगकर्ता",
+"Apps" => "Apps",
+"Help" => "सहयोग",
 "Cloud not found" => "क्लौड नहीं मिला ",
 "Create an <strong>admin account</strong>" => "व्यवस्थापक खाता बनाएँ",
 "Advanced" => "उन्नत",
+"Data folder" => "डाटा फोल्डर",
 "Configure the database" => "डेटाबेस कॉन्फ़िगर करें ",
+"will be used" => "उपयोग होगा",
 "Database user" => "डेटाबेस उपयोगकर्ता",
 "Database password" => "डेटाबेस पासवर्ड",
+"Database name" => "डेटाबेस का नाम",
 "Finish setup" => "सेटअप समाप्त करे",
+"Log out" => "लोग  आउट",
+"remember" => "याद रखें",
 "prev" => "पिछला",
 "next" => "अगला"
 );
diff --git a/core/l10n/hu_HU.php b/core/l10n/hu_HU.php
index fc71a669e8953057ae660f994f7373dea59bf7d2..e8fcdeeca11af6c29f9575b43f86d6d5dddac407 100644
--- a/core/l10n/hu_HU.php
+++ b/core/l10n/hu_HU.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s felhasználó megosztotta ezt a mappát Önnel: %s. A mappa innen tölthető le: %s",
 "Category type not provided." => "Nincs megadva a kategória típusa.",
 "No category to add?" => "Nincs hozzáadandó kategória?",
+"This category already exists: %s" => "Ez a kategória már létezik: %s",
 "Object type not provided." => "Az objektum típusa nincs megadva.",
 "%s ID not provided." => "%s ID nincs megadva.",
 "Error adding %s to favorites." => "Nem sikerült a kedvencekhez adni ezt: %s",
@@ -52,6 +53,7 @@
 "Error" => "Hiba",
 "The app name is not specified." => "Az alkalmazás neve nincs megadva.",
 "The required file {file} is not installed!" => "A szükséges fájl: {file} nincs telepítve!",
+"Shared" => "Megosztott",
 "Share" => "Megosztás",
 "Error while sharing" => "Nem sikerült létrehozni a megosztást",
 "Error while unsharing" => "Nem sikerült visszavonni a megosztást",
@@ -82,6 +84,8 @@
 "Error setting expiration date" => "Nem sikerült a lejárati időt beállítani",
 "Sending ..." => "Küldés ...",
 "Email sent" => "Az emailt elküldtük",
+"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "A frissítés nem sikerült. Kérem értesítse erről a problémáról az <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud közösséget</a>.",
+"The update was successful. Redirecting you to ownCloud now." => "A frissítés sikeres volt. Visszairányítjuk az ownCloud szolgáltatáshoz.",
 "ownCloud password reset" => "ownCloud jelszó-visszaállítás",
 "Use the following link to reset your password: {link}" => "Használja ezt a linket a jelszó ismételt beállításához: {link}",
 "You will receive a link to reset your password via Email." => "Egy emailben fog értesítést kapni a jelszóbeállítás módjáról.",
@@ -105,6 +109,8 @@
 "Security Warning" => "Biztonsági figyelmeztetés",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nem érhető el megfelelő véletlenszám-generátor, telepíteni kellene a PHP OpenSSL kiegészítését.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Megfelelő véletlenszám-generátor hiányában egy támadó szándékú idegen képes lehet megjósolni a jelszóvisszaállító tokent, és Ön helyett belépni.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Az adatkönyvtár és a benne levő állományok valószínűleg közvetlenül is elérhetők az internetről, mert a .htaccess állomány nem érvényesül.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "A kiszolgáló megfelelő beállításához kérjük olvassa el a <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentációt</a>.",
 "Create an <strong>admin account</strong>" => "<strong>Rendszergazdai belépés</strong> létrehozása",
 "Advanced" => "Haladó",
 "Data folder" => "Adatkönyvtár",
@@ -124,6 +130,7 @@
 "Lost your password?" => "Elfelejtette a jelszavát?",
 "remember" => "emlékezzen",
 "Log in" => "Bejelentkezés",
+"Alternative Logins" => "Alternatív bejelentkezés",
 "prev" => "előző",
 "next" => "következő",
 "Updating ownCloud to version %s, this may take a while." => "Owncloud frissítés a %s verzióra folyamatban. Kis türelmet."
diff --git a/core/l10n/it.php b/core/l10n/it.php
index c0109b91239c2f09d5742f6c904cda3a1ccd8e81..e8bd848bfeec1a402f7f58cd9acaea2700401969 100644
--- a/core/l10n/it.php
+++ b/core/l10n/it.php
@@ -53,8 +53,8 @@
 "Error" => "Errore",
 "The app name is not specified." => "Il nome dell'applicazione non è specificato.",
 "The required file {file} is not installed!" => "Il file richiesto {file} non è installato!",
-"Share" => "Condividi",
 "Shared" => "Condivisi",
+"Share" => "Condividi",
 "Error while sharing" => "Errore durante la condivisione",
 "Error while unsharing" => "Errore durante la rimozione della condivisione",
 "Error while changing permissions" => "Errore durante la modifica dei permessi",
diff --git a/core/l10n/ja_JP.php b/core/l10n/ja_JP.php
index 803faaf75a68a01732b7bf6b17560af46875132b..2a69275e33419d77d27c7a5fc70a80a3a31bd141 100644
--- a/core/l10n/ja_JP.php
+++ b/core/l10n/ja_JP.php
@@ -53,8 +53,8 @@
 "Error" => "エラー",
 "The app name is not specified." => "アプリ名がしていされていません。",
 "The required file {file} is not installed!" => "必要なファイル {file} がインストールされていません!",
-"Share" => "共有",
 "Shared" => "共有中",
+"Share" => "共有",
 "Error while sharing" => "共有でエラー発生",
 "Error while unsharing" => "共有解除でエラー発生",
 "Error while changing permissions" => "権限変更でエラー発生",
@@ -109,6 +109,8 @@
 "Security Warning" => "セキュリティ警告",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "セキュアな乱数生成器が利用可能ではありません。PHPのOpenSSL拡張を有効にして下さい。",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "セキュアな乱数生成器が無い場合、攻撃者はパスワードリセットのトークンを予測してアカウントを乗っ取られる可能性があります。",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => ".htaccess ファイルが動作していないため、おそらくあなたのデータディレクトリもしくはファイルはインターネットからアクセス可能です。",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "あなたのサーバの適切な設定に関する情報として、<a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">ドキュメント</a>を参照して下さい。",
 "Create an <strong>admin account</strong>" => "<strong>管理者アカウント</strong>を作成してください",
 "Advanced" => "詳細設定",
 "Data folder" => "データフォルダ",
diff --git a/core/l10n/ko.php b/core/l10n/ko.php
index 172ec3e03a5df231e5569748b70b73005cbfbbb1..408afa372b7e5393fd96b806575a693cce679a96 100644
--- a/core/l10n/ko.php
+++ b/core/l10n/ko.php
@@ -52,8 +52,8 @@
 "Error" => "오류",
 "The app name is not specified." => "앱 이름이 지정되지 않았습니다.",
 "The required file {file} is not installed!" => "필요한 파일 {file}이(가) 설치되지 않았습니다!",
-"Share" => "공유",
 "Shared" => "공유됨",
+"Share" => "공유",
 "Error while sharing" => "공유하는 중 오류 발생",
 "Error while unsharing" => "공유 해제하는 중 오류 발생",
 "Error while changing permissions" => "권한 변경하는 중 오류 발생",
diff --git a/core/l10n/lv.php b/core/l10n/lv.php
index bc2306774aac7380b902bd7934940898775fd5b4..9e3f169b2f4e191c0013b6b5098a9fdab452abac 100644
--- a/core/l10n/lv.php
+++ b/core/l10n/lv.php
@@ -53,8 +53,8 @@
 "Error" => "Kļūda",
 "The app name is not specified." => "Nav norādīts lietotnes nosaukums.",
 "The required file {file} is not installed!" => "Pieprasītā datne {file} nav instalēta!",
-"Share" => "Dalīties",
 "Shared" => "Kopīgs",
+"Share" => "Dalīties",
 "Error while sharing" => "Kļūda, daloties",
 "Error while unsharing" => "Kļūda, beidzot dalīties",
 "Error while changing permissions" => "Kļūda, mainot atļaujas",
@@ -109,6 +109,8 @@
 "Security Warning" => "Brīdinājums par drošību",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nav pieejams drošs nejaušu skaitļu ģenerators. Lūdzu, aktivējiet PHP OpenSSL paplašinājumu.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Bez droša nejaušu skaitļu ģeneratora uzbrucējs var paredzēt paroļu atjaunošanas marķierus un pārņem jūsu kontu.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Visticamāk, jūsu datu direktorija un datnes ir pieejamas no interneta, jo .htaccess datne nedarbojas.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Lai uzzinātu, kā pareizi jākonfigurē šis serveris, skatiet <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentāciju</a>.",
 "Create an <strong>admin account</strong>" => "Izveidot <strong>administratora kontu</strong>",
 "Advanced" => "Paplašināti",
 "Data folder" => "Datu mape",
diff --git a/core/l10n/nl.php b/core/l10n/nl.php
index 1dc8a9ca3be90da81fc6f407f7d648b7bd36543e..6daa9227904591d52a2568b27a76910c0cf7bda7 100644
--- a/core/l10n/nl.php
+++ b/core/l10n/nl.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "Gebruiker %s deelde de map \"%s\" met u. De map is hier beschikbaar voor download: %s",
 "Category type not provided." => "Categorie type niet opgegeven.",
 "No category to add?" => "Geen categorie toevoegen?",
+"This category already exists: %s" => "Deze categorie bestaat al: %s",
 "Object type not provided." => "Object type niet opgegeven.",
 "%s ID not provided." => "%s ID niet opgegeven.",
 "Error adding %s to favorites." => "Toevoegen van %s aan favorieten is mislukt.",
@@ -52,8 +53,8 @@
 "Error" => "Fout",
 "The app name is not specified." => "De app naam is niet gespecificeerd.",
 "The required file {file} is not installed!" => "Het vereiste bestand {file} is niet geïnstalleerd!",
-"Share" => "Delen",
 "Shared" => "Gedeeld",
+"Share" => "Delen",
 "Error while sharing" => "Fout tijdens het delen",
 "Error while unsharing" => "Fout tijdens het stoppen met delen",
 "Error while changing permissions" => "Fout tijdens het veranderen van permissies",
@@ -108,6 +109,8 @@
 "Security Warning" => "Beveiligingswaarschuwing",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Er kon geen willekeurig nummer worden gegenereerd. Zet de PHP OpenSSL extentie aan.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Zonder random nummer generator is het mogelijk voor een aanvaller om de reset tokens van wachtwoorden te voorspellen. Dit kan leiden tot het inbreken op uw account.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Uw gegevensdirectory en bestanden zijn vermoedelijk bereikbaar vanaf het internet omdat het .htaccess bestand niet werkt.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Informatie over het configureren van uw server is hier te vinden <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentatie</a>.",
 "Create an <strong>admin account</strong>" => "Maak een <strong>beheerdersaccount</strong> aan",
 "Advanced" => "Geavanceerd",
 "Data folder" => "Gegevensmap",
diff --git a/core/l10n/pl.php b/core/l10n/pl.php
index 682289326dddda7636feb1bf813e59ad2850bb30..8f548fe5be6728952b9c913c6460d6bc59afd3b9 100644
--- a/core/l10n/pl.php
+++ b/core/l10n/pl.php
@@ -52,8 +52,8 @@
 "Error" => "Błąd",
 "The app name is not specified." => "Nazwa aplikacji nie jest określona.",
 "The required file {file} is not installed!" => "Żądany plik {file} nie jest zainstalowany!",
-"Share" => "Udostępnij",
 "Shared" => "Udostępniono",
+"Share" => "Udostępnij",
 "Error while sharing" => "Błąd podczas współdzielenia",
 "Error while unsharing" => "Błąd podczas zatrzymywania współdzielenia",
 "Error while changing permissions" => "Błąd przy zmianie uprawnień",
diff --git a/core/l10n/pt_BR.php b/core/l10n/pt_BR.php
index 0d440f4c9d3e9e80f89dc229c913a5acb7c0d4d3..15a3c997b0fde86ccd7ab7b56dfc2718e8cdb516 100644
--- a/core/l10n/pt_BR.php
+++ b/core/l10n/pt_BR.php
@@ -4,11 +4,12 @@
 "User %s shared the file \"%s\" with you. It is available for download here: %s" => "O usuário %s compartilhou com você o arquivo \"%s\", que está disponível para download em: %s",
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "O usuário %s compartilhou com você a pasta \"%s\", que está disponível para download em: %s",
 "Category type not provided." => "Tipo de categoria não fornecido.",
-"No category to add?" => "Nenhuma categoria adicionada?",
+"No category to add?" => "Nenhuma categoria a adicionar?",
+"This category already exists: %s" => "Esta categoria já existe: %s",
 "Object type not provided." => "tipo de objeto não fornecido.",
 "%s ID not provided." => "%s ID não fornecido(s).",
 "Error adding %s to favorites." => "Erro ao adicionar %s aos favoritos.",
-"No categories selected for deletion." => "Nenhuma categoria selecionada para deletar.",
+"No categories selected for deletion." => "Nenhuma categoria selecionada para excluir.",
 "Error removing %s from favorites." => "Erro ao remover %s dos favoritos.",
 "Sunday" => "Domingo",
 "Monday" => "Segunda-feira",
@@ -17,18 +18,18 @@
 "Thursday" => "Quinta-feira",
 "Friday" => "Sexta-feira",
 "Saturday" => "Sábado",
-"January" => "Janeiro",
-"February" => "Fevereiro",
-"March" => "Março",
-"April" => "Abril",
-"May" => "Maio",
-"June" => "Junho",
-"July" => "Julho",
-"August" => "Agosto",
-"September" => "Setembro",
-"October" => "Outubro",
-"November" => "Novembro",
-"December" => "Dezembro",
+"January" => "janeiro",
+"February" => "fevereiro",
+"March" => "março",
+"April" => "abril",
+"May" => "maio",
+"June" => "junho",
+"July" => "julho",
+"August" => "agosto",
+"September" => "setembro",
+"October" => "outubro",
+"November" => "novembro",
+"December" => "dezembro",
 "Settings" => "Configurações",
 "seconds ago" => "segundos atrás",
 "1 minute ago" => "1 minuto atrás",
@@ -52,8 +53,8 @@
 "Error" => "Erro",
 "The app name is not specified." => "O nome do app não foi especificado.",
 "The required file {file} is not installed!" => "O arquivo {file} necessário não está instalado!",
-"Share" => "Compartilhar",
 "Shared" => "Compartilhados",
+"Share" => "Compartilhar",
 "Error while sharing" => "Erro ao compartilhar",
 "Error while unsharing" => "Erro ao descompartilhar",
 "Error while changing permissions" => "Erro ao mudar permissões",
@@ -87,46 +88,49 @@
 "The update was successful. Redirecting you to ownCloud now." => "A atualização teve êxito. Você será redirecionado ao ownCloud agora.",
 "ownCloud password reset" => "Redefinir senha ownCloud",
 "Use the following link to reset your password: {link}" => "Use o seguinte link para redefinir sua senha: {link}",
-"You will receive a link to reset your password via Email." => "Você receberá um link para redefinir sua senha via e-mail.",
+"You will receive a link to reset your password via Email." => "Você receberá um link para redefinir sua senha por e-mail.",
 "Reset email send." => "Email de redefinição de senha enviado.",
 "Request failed!" => "A requisição falhou!",
 "Username" => "Nome de Usuário",
-"Request reset" => "Pedido de reposição",
-"Your password was reset" => "Sua senha foi mudada",
+"Request reset" => "Pedir redefinição",
+"Your password was reset" => "Sua senha foi redefinida",
 "To login page" => "Para a página de login",
 "New password" => "Nova senha",
-"Reset password" => "Mudar senha",
+"Reset password" => "Redefinir senha",
 "Personal" => "Pessoal",
 "Users" => "Usuários",
 "Apps" => "Apps",
 "Admin" => "Admin",
 "Help" => "Ajuda",
-"Access forbidden" => "Acesso Proibido",
+"Access forbidden" => "Acesso proibido",
 "Cloud not found" => "Cloud não encontrado",
 "Edit categories" => "Editar categorias",
 "Add" => "Adicionar",
 "Security Warning" => "Aviso de Segurança",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nenhum gerador de número aleatório de segurança disponível. Habilite a extensão OpenSSL do PHP.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sem um gerador de número aleatório de segurança, um invasor pode ser capaz de prever os símbolos de redefinição de senhas e assumir sua conta.",
-"Create an <strong>admin account</strong>" => "Criar uma <strong>conta</strong> de <strong>administrador</strong>",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Seu diretório de dados e arquivos são provavelmente acessíveis pela internet, porque o .htaccess não funciona.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Para obter informações sobre como configurar corretamente o seu servidor, consulte a <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentação</a>.",
+"Create an <strong>admin account</strong>" => "Criar uma <strong>conta de administrador</strong>",
 "Advanced" => "Avançado",
 "Data folder" => "Pasta de dados",
 "Configure the database" => "Configurar o banco de dados",
 "will be used" => "será usado",
-"Database user" => "Usuário de banco de dados",
+"Database user" => "Usuário do banco de dados",
 "Database password" => "Senha do banco de dados",
 "Database name" => "Nome do banco de dados",
 "Database tablespace" => "Espaço de tabela do banco de dados",
-"Database host" => "Banco de dados do host",
+"Database host" => "Host do banco de dados",
 "Finish setup" => "Concluir configuração",
-"web services under your control" => "web services sob seu controle",
+"web services under your control" => "serviços web sob seu controle",
 "Log out" => "Sair",
 "Automatic logon rejected!" => "Entrada Automática no Sistema Rejeitada!",
 "If you did not change your password recently, your account may be compromised!" => "Se você não mudou a sua senha recentemente, a sua conta pode estar comprometida!",
 "Please change your password to secure your account again." => "Por favor troque sua senha para tornar sua conta segura novamente.",
-"Lost your password?" => "Esqueçeu sua senha?",
-"remember" => "lembrete",
-"Log in" => "Log in",
+"Lost your password?" => "Esqueceu sua senha?",
+"remember" => "lembrar",
+"Log in" => "Fazer login",
+"Alternative Logins" => "Logins alternativos",
 "prev" => "anterior",
 "next" => "próximo",
 "Updating ownCloud to version %s, this may take a while." => "Atualizando ownCloud para a versão %s, isto pode levar algum tempo."
diff --git a/core/l10n/pt_PT.php b/core/l10n/pt_PT.php
index 3fb3361b2dc7266e14219e7f77a5a41d8abd6f68..28d6506bd3384dd7a82d77a007dc51022c96a3b1 100644
--- a/core/l10n/pt_PT.php
+++ b/core/l10n/pt_PT.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "O utilizador %s partilhou a pasta \"%s\" consigo. Está disponível para download aqui: %s",
 "Category type not provided." => "Tipo de categoria não fornecido",
 "No category to add?" => "Nenhuma categoria para adicionar?",
+"This category already exists: %s" => "A categoria já existe: %s",
 "Object type not provided." => "Tipo de objecto não fornecido",
 "%s ID not provided." => "ID %s não fornecido",
 "Error adding %s to favorites." => "Erro a adicionar %s aos favoritos",
@@ -52,8 +53,8 @@
 "Error" => "Erro",
 "The app name is not specified." => "O nome da aplicação não foi especificado",
 "The required file {file} is not installed!" => "O ficheiro necessário {file} não está instalado!",
-"Share" => "Partilhar",
 "Shared" => "Partilhado",
+"Share" => "Partilhar",
 "Error while sharing" => "Erro ao partilhar",
 "Error while unsharing" => "Erro ao deixar de partilhar",
 "Error while changing permissions" => "Erro ao mudar permissões",
@@ -108,6 +109,8 @@
 "Security Warning" => "Aviso de Segurança",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Não existe nenhum gerador seguro de números aleatórios, por favor, active a extensão OpenSSL no PHP.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sem nenhum gerador seguro de números aleatórios, uma pessoa mal intencionada pode prever a sua password, reiniciar as seguranças adicionais e tomar conta da sua conta. ",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "A pasta de dados do ownCloud e os respectivos ficheiros, estarão provavelmente acessíveis a partir da internet, pois o ficheiros .htaccess não funciona.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Para obter informações de como configurar correctamente o servidor, veja em: <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>.",
 "Create an <strong>admin account</strong>" => "Criar uma <strong>conta administrativa</strong>",
 "Advanced" => "Avançado",
 "Data folder" => "Pasta de dados",
diff --git a/core/l10n/ru.php b/core/l10n/ru.php
index b9c00c6691c1322cc21222bd384b8384d285310d..2ca4eeb47775f6abe5bcd1bf3cb5d54ef18a1440 100644
--- a/core/l10n/ru.php
+++ b/core/l10n/ru.php
@@ -53,8 +53,8 @@
 "Error" => "Ошибка",
 "The app name is not specified." => "Имя приложения не указано",
 "The required file {file} is not installed!" => "Необходимый файл {file} не установлен!",
-"Share" => "Открыть доступ",
 "Shared" => "Общие",
+"Share" => "Открыть доступ",
 "Error while sharing" => "Ошибка при открытии доступа",
 "Error while unsharing" => "Ошибка при закрытии доступа",
 "Error while changing permissions" => "Ошибка при смене разрешений",
diff --git a/core/l10n/ru_RU.php b/core/l10n/ru_RU.php
index 86e068c6c8dd9ac13fda49f9920340811d96ccb1..0399d56dfcf020d8e771fd77d28fc72443db2e7a 100644
--- a/core/l10n/ru_RU.php
+++ b/core/l10n/ru_RU.php
@@ -53,8 +53,8 @@
 "Error" => "Ошибка",
 "The app name is not specified." => "Имя приложения не указано.",
 "The required file {file} is not installed!" => "Требуемый файл {файл} не установлен!",
-"Share" => "Сделать общим",
 "Shared" => "Опубликовано",
+"Share" => "Сделать общим",
 "Error while sharing" => "Ошибка создания общего доступа",
 "Error while unsharing" => "Ошибка отключения общего доступа",
 "Error while changing permissions" => "Ошибка при изменении прав доступа",
diff --git a/core/l10n/sk_SK.php b/core/l10n/sk_SK.php
index 26f04c1bcea96641a1ddce5d11bf35438fffee4d..b2c2dcf989f535c440817cbe6d1b59962270c1c9 100644
--- a/core/l10n/sk_SK.php
+++ b/core/l10n/sk_SK.php
@@ -53,8 +53,8 @@
 "Error" => "Chyba",
 "The app name is not specified." => "Nešpecifikované meno aplikácie.",
 "The required file {file} is not installed!" => "Požadovaný súbor {file} nie je inštalovaný!",
-"Share" => "Zdieľaj",
 "Shared" => "Zdieľané",
+"Share" => "Zdieľaj",
 "Error while sharing" => "Chyba počas zdieľania",
 "Error while unsharing" => "Chyba počas ukončenia zdieľania",
 "Error while changing permissions" => "Chyba počas zmeny oprávnení",
@@ -69,7 +69,7 @@
 "Set expiration date" => "Nastaviť dátum expirácie",
 "Expiration date" => "Dátum expirácie",
 "Share via email:" => "Zdieľať cez e-mail:",
-"No people found" => "Užívateľ nenájdený",
+"No people found" => "Používateľ nenájdený",
 "Resharing is not allowed" => "Zdieľanie už zdieľanej položky nie je povolené",
 "Shared in {item} with {user}" => "Zdieľané v {item} s {user}",
 "Unshare" => "Zrušiť zdieľanie",
@@ -109,6 +109,8 @@
 "Security Warning" => "Bezpečnostné varovanie",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nie je dostupný žiadny bezpečný generátor náhodných čísel, prosím, povoľte rozšírenie OpenSSL v PHP.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Bez bezpečného generátora náhodných čísel môže útočník predpovedať token pre obnovu hesla a prevziať kontrolu nad vaším kontom.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Váš priečinok s dátami a súbormi je dostupný z internetu, lebo súbor .htaccess nefunguje.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "Pre informácie, ako správne nastaviť Váš server sa pozrite do <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentácie</a>.",
 "Create an <strong>admin account</strong>" => "Vytvoriť <strong>administrátorský účet</strong>",
 "Advanced" => "Pokročilé",
 "Data folder" => "Priečinok dát",
diff --git a/core/l10n/sv.php b/core/l10n/sv.php
index bc96c237134615436c1be3df45972c2035078b06..590f2f3c846d741ab1a8da8e4d62728c545f6456 100644
--- a/core/l10n/sv.php
+++ b/core/l10n/sv.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "Användare %s delade mappen \"%s\" med dig. Den finns att ladda ner här: %s",
 "Category type not provided." => "Kategorityp inte angiven.",
 "No category to add?" => "Ingen kategori att lägga till?",
+"This category already exists: %s" => "Denna kategori finns redan: %s",
 "Object type not provided." => "Objekttyp inte angiven.",
 "%s ID not provided." => "%s ID inte angiven.",
 "Error adding %s to favorites." => "Fel vid tillägg av %s till favoriter.",
@@ -52,8 +53,8 @@
 "Error" => "Fel",
 "The app name is not specified." => " Namnet på appen är inte specificerad.",
 "The required file {file} is not installed!" => "Den nödvändiga filen {file} är inte installerad!",
-"Share" => "Dela",
 "Shared" => "Delad",
+"Share" => "Dela",
 "Error while sharing" => "Fel vid delning",
 "Error while unsharing" => "Fel när delning skulle avslutas",
 "Error while changing permissions" => "Fel vid ändring av rättigheter",
@@ -108,6 +109,8 @@
 "Security Warning" => "Säkerhetsvarning",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ingen säker slumptalsgenerator finns tillgänglig. Du bör aktivera PHP OpenSSL-tillägget.",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Utan en säker slumptalsgenerator kan angripare få möjlighet att förutsäga lösenordsåterställningar och ta över ditt konto.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Din datakatalog och filer är förmodligen tillgängliga från Internet, eftersom .htaccess-filen inte fungerar.",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "För information hur man korrekt konfigurera servern, var god se <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>.",
 "Create an <strong>admin account</strong>" => "Skapa ett <strong>administratörskonto</strong>",
 "Advanced" => "Avancerat",
 "Data folder" => "Datamapp",
@@ -127,6 +130,7 @@
 "Lost your password?" => "Glömt ditt lösenord?",
 "remember" => "kom ihåg",
 "Log in" => "Logga in",
+"Alternative Logins" => "Alternativa inloggningar",
 "prev" => "föregående",
 "next" => "nästa",
 "Updating ownCloud to version %s, this may take a while." => "Uppdaterar ownCloud till version %s, detta kan ta en stund."
diff --git a/core/l10n/th_TH.php b/core/l10n/th_TH.php
index e5295cee103914d6c196d146f471772698e18879..560c150066c2977bef212a13fa7d90cc007d5fd5 100644
--- a/core/l10n/th_TH.php
+++ b/core/l10n/th_TH.php
@@ -52,8 +52,8 @@
 "Error" => "พบข้อผิดพลาด",
 "The app name is not specified." => "ชื่อของแอปยังไม่ได้รับการระบุชื่อ",
 "The required file {file} is not installed!" => "ไฟล์ {file} ซึ่งเป็นไฟล์ที่จำเป็นต้องได้รับการติดตั้งไว้ก่อน ยังไม่ได้ถูกติดตั้ง",
-"Share" => "แชร์",
 "Shared" => "แชร์แล้ว",
+"Share" => "แชร์",
 "Error while sharing" => "เกิดข้อผิดพลาดในระหว่างการแชร์ข้อมูล",
 "Error while unsharing" => "เกิดข้อผิดพลาดในการยกเลิกการแชร์ข้อมูล",
 "Error while changing permissions" => "เกิดข้อผิดพลาดในการเปลี่ยนสิทธิ์การเข้าใช้งาน",
diff --git a/core/l10n/uk.php b/core/l10n/uk.php
index 7eab365a39d0741242d0ca6ee6eccee0ba8777c4..a2f297fc224e18791a4587fa881414dad69de4ea 100644
--- a/core/l10n/uk.php
+++ b/core/l10n/uk.php
@@ -52,8 +52,8 @@
 "Error" => "Помилка",
 "The app name is not specified." => "Не визначено ім'я програми.",
 "The required file {file} is not installed!" => "Необхідний файл {file} не встановлено!",
-"Share" => "Поділитися",
 "Shared" => "Опубліковано",
+"Share" => "Поділитися",
 "Error while sharing" => "Помилка під час публікації",
 "Error while unsharing" => "Помилка під час відміни публікації",
 "Error while changing permissions" => "Помилка при зміні повноважень",
diff --git a/core/l10n/vi.php b/core/l10n/vi.php
index 0c4b197322e50b3536ae64c449aee42a98bcf60c..f03c58f34919aea91001b9860ef36bac668a5ddf 100644
--- a/core/l10n/vi.php
+++ b/core/l10n/vi.php
@@ -53,8 +53,8 @@
 "Error" => "Lỗi",
 "The app name is not specified." => "Tên ứng dụng không được chỉ định.",
 "The required file {file} is not installed!" => "Tập tin cần thiết {file} không được cài đặt!",
-"Share" => "Chia sẻ",
 "Shared" => "Được chia sẻ",
+"Share" => "Chia sẻ",
 "Error while sharing" => "Lỗi trong quá trình chia sẻ",
 "Error while unsharing" => "Lỗi trong quá trình gỡ chia sẻ",
 "Error while changing permissions" => "Lỗi trong quá trình phân quyền",
diff --git a/core/l10n/zh_CN.php b/core/l10n/zh_CN.php
index 086687c08c3b499e7c57cbac966bd04d3383f2f4..6a2c2e35a48cec5ee09f5694e8c6bd30ac3603dd 100644
--- a/core/l10n/zh_CN.php
+++ b/core/l10n/zh_CN.php
@@ -52,8 +52,8 @@
 "Error" => "错误",
 "The app name is not specified." => "未指定App名称。",
 "The required file {file} is not installed!" => "所需文件{file}未安装!",
-"Share" => "共享",
 "Shared" => "已共享",
+"Share" => "共享",
 "Error while sharing" => "共享时出错",
 "Error while unsharing" => "取消共享时出错",
 "Error while changing permissions" => "修改权限时出错",
diff --git a/core/l10n/zh_TW.php b/core/l10n/zh_TW.php
index 58d2aca4095e329e270c02321b671858bd3fb289..765aeb34eaced645745b28eadd1b56f60809fd80 100644
--- a/core/l10n/zh_TW.php
+++ b/core/l10n/zh_TW.php
@@ -5,6 +5,7 @@
 "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "用戶 %s 與您分享了資料夾 \"%s\" ,您可以從這裡下載它: %s",
 "Category type not provided." => "未提供分類類型。",
 "No category to add?" => "沒有可增加的分類?",
+"This category already exists: %s" => "分類已經存在: %s",
 "Object type not provided." => "不支援的物件類型",
 "%s ID not provided." => "未提供 %s ID 。",
 "Error adding %s to favorites." => "加入 %s 到最愛時發生錯誤。",
@@ -52,8 +53,8 @@
 "Error" => "錯誤",
 "The app name is not specified." => "沒有指定 app 名稱。",
 "The required file {file} is not installed!" => "沒有安裝所需的檔案 {file} !",
-"Share" => "分享",
 "Shared" => "已分享",
+"Share" => "分享",
 "Error while sharing" => "分享時發生錯誤",
 "Error while unsharing" => "取消分享時發生錯誤",
 "Error while changing permissions" => "修改權限時發生錯誤",
@@ -108,6 +109,8 @@
 "Security Warning" => "安全性警告",
 "No secure random number generator is available, please enable the PHP OpenSSL extension." => "沒有可用的亂數產生器,請啟用 PHP 中的 OpenSSL 擴充功能。",
 "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "若沒有安全的亂數產生器,攻擊者可能可以預測密碼重設信物,然後控制您的帳戶。",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "您的資料目錄看起來可以被 Internet 公開存取,因為 .htaccess 設定並未生效。",
+"For information how to properly configure your server, please see the <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>." => "請參考<a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">說明文件</a>以瞭解如何正確設定您的伺服器。",
 "Create an <strong>admin account</strong>" => "建立一個<strong>管理者帳號</strong>",
 "Advanced" => "進階",
 "Data folder" => "資料夾",
@@ -127,6 +130,7 @@
 "Lost your password?" => "忘記密碼?",
 "remember" => "記住",
 "Log in" => "登入",
+"Alternative Logins" => "替代登入方法",
 "prev" => "上一頁",
 "next" => "下一頁",
 "Updating ownCloud to version %s, this may take a while." => "正在將 Owncloud 升級至版本 %s ,這可能需要一點時間。"
diff --git a/core/templates/exception.php b/core/templates/exception.php
index 47792225557fb5520224c9e7c5ef2c1a3d591fb0..62d6cf2ade5c57d135a0880fc6e514ce7206e68c 100644
--- a/core/templates/exception.php
+++ b/core/templates/exception.php
@@ -20,11 +20,11 @@
 			echo 'Request Method: '  . $_['sysinfo']['requestmethod'] . "\n";
 			echo 'Database: '  . $_['sysinfo']['database'] . "\n";
 			echo '</textarea>';
-		}else{
+		} else {
 			echo 'Your administrator has disabled systeminformations.';
 		}
 		?>
 		</p>
 		</details>
 	</li>
-</ul>
\ No newline at end of file
+</ul>
diff --git a/core/templates/installation.php b/core/templates/installation.php
index cef979c2ab6b6ac4b60b917c8985668c45e13da1..b3b7cfc4b8b0a73fc0e6652b307c7142027eba31 100644
--- a/core/templates/installation.php
+++ b/core/templates/installation.php
@@ -49,7 +49,7 @@
 	</fieldset>
 
 	<fieldset id="datadirField">
-		<legend><a id="showAdvanced"><?php echo $l->t( 'Advanced' ); ?> ▾</a></legend>
+		<legend><a id="showAdvanced"><?php echo $l->t( 'Advanced' ); ?> <img class="svg" src="<?php echo image_path('', 'actions/triangle-s.svg'); ?>" /></a></legend>
 		<div id="datadirContent">
 			<label for="directory"><?php echo $l->t( 'Data folder' ); ?></label>
 			<input type="text" name="directory" id="directory" value="<?php print OC_Helper::init_var('directory', $_['directory']); ?>" />
diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php
index c8b580b5fd9df78112c4b808cc595d47acccd7c2..2d00bdb5c8ec9874832ccce416c99396132fccb3 100644
--- a/core/templates/layout.user.php
+++ b/core/templates/layout.user.php
@@ -31,7 +31,7 @@
 
 			<ul id="settings" class="svg">
 				<span id="expand">
-					<?php echo OCP\User::getDisplayName($user=null)?OCP\User::getDisplayName($user=null):(OC_User::getUser()?OC_User::getUser():'') ?>
+					<?php echo $_['displayname'] ?>
 					<img class="svg" src="<?php echo image_path('', 'actions/caret.svg'); ?>" />
 				</span>
 				<div id="expanddiv">
@@ -61,7 +61,7 @@
 				<?php foreach($_['navigation'] as $entry): ?>
 					<li data-id="<?php echo $entry['id']; ?>">
 						<a href="<?php echo $entry['href']; ?>" title="" <?php if( $entry['active'] ): ?> class="active"<?php endif; ?>>
-							<img class="icon" src="<?php echo $entry['icon']; ?>"/>
+							<img class="icon svg" src="<?php echo $entry['icon']; ?>"/>
 							<?php echo $entry['name']; ?>
 						</a>
 					</li>
diff --git a/db_structure.xml b/db_structure.xml
index a86e5e6a8fd043fdfc39ac80635c3a44155f34d5..37db7d0596810c2c339b3312828299ce55360a6b 100644
--- a/db_structure.xml
+++ b/db_structure.xml
@@ -108,6 +108,14 @@
 				<length>512</length>
 			</field>
 
+			<field>
+				<name>logic_path_hash</name>
+				<type>text</type>
+				<default></default>
+				<notnull>true</notnull>
+				<length>32</length>
+			</field>
+
 			<field>
 				<name>physic_path</name>
 				<type>text</type>
@@ -116,11 +124,19 @@
 				<length>512</length>
 			</field>
 
+			<field>
+				<name>physic_path_hash</name>
+				<type>text</type>
+				<default></default>
+				<notnull>true</notnull>
+				<length>32</length>
+			</field>
+
 			<index>
 				<name>file_map_lp_index</name>
 				<unique>true</unique>
 				<field>
-					<name>logic_path</name>
+					<name>logic_path_hash</name>
 					<sorting>ascending</sorting>
 				</field>
 			</index>
@@ -129,7 +145,7 @@
 				<name>file_map_pp_index</name>
 				<unique>true</unique>
 				<field>
-					<name>physic_path</name>
+					<name>physic_path_hash</name>
 					<sorting>ascending</sorting>
 				</field>
 			</index>
@@ -250,7 +266,7 @@
 				<type>integer</type>
 				<default></default>
 				<notnull>true</notnull>
-				<length>4</length>
+				<length>8</length>
 			</field>
 
 			<field>
diff --git a/l10n/af_ZA/files.po b/l10n/af_ZA/files.po
index 67facac0f9e8753270b11b254947f5de22ffc270..bdbedc57b7bf3dc07a0eab866247429a8166cc3b 100644
--- a/l10n/af_ZA/files.po
+++ b/l10n/af_ZA/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/af_ZA/lib.po b/l10n/af_ZA/lib.po
index 67a6f17cf09fc2bb666b2f6f7bb64565e4ec6567..fb18d9680196f961b82875a17f7aa7728fd92ede 100644
--- a/l10n/af_ZA/lib.po
+++ b/l10n/af_ZA/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/af_ZA/settings.po b/l10n/af_ZA/settings.po
index a768c32d6cd6c899544be0d7619be0586a38619c..9884e8d4a2d0e9781a70c77ae87064da3daf0a13 100644
--- a/l10n/af_ZA/settings.po
+++ b/l10n/af_ZA/settings.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Wagwoord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nuwe wagwoord"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/ar/core.po b/l10n/ar/core.po
index f3cdb9f639cf95d4f32b9fe0f7d0788914156ce3..5da0c711520f7b39fbe3c860d258e4a2c8ebf8fe 100644
--- a/l10n/ar/core.po
+++ b/l10n/ar/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "تشرين الثاني"
 msgid "December"
 msgstr "كانون الاول"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "تعديلات"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "منذ ثواني"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "منذ دقيقة"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} منذ دقائق"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "اليوم"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr ""
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr ""
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr ""
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr ""
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr ""
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "خطأ"
 
@@ -253,15 +253,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "شارك"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "شارك"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "حصل خطأ عند عملية المشاركة"
 
@@ -357,23 +357,23 @@ msgstr "حذف"
 msgid "share"
 msgstr "مشاركة"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "محمي بكلمة السر"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "حصل خطأ عند عملية إزالة تاريخ إنتهاء الصلاحية"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "حصل خطأ عند عملية تعيين تاريخ إنتهاء الصلاحية"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/ar/files.po b/l10n/ar/files.po
index 3e5b521eab816cd32e1dc0d4d51ae99503cda264..35fd5981edbdcf59c97de475ab77a589b69e22b4 100644
--- a/l10n/ar/files.po
+++ b/l10n/ar/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "الملفات"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "محذوف"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -193,31 +193,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "الاسم"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "حجم"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "معدل"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ar/files_trashbin.po b/l10n/ar/files_trashbin.po
index 70c6ea95ddec840170c953e764be2a3d559d5182..174bde4c7f5f7b8cbf0179015ba07be75440f96c 100644
--- a/l10n/ar/files_trashbin.po
+++ b/l10n/ar/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ar/lib.po b/l10n/ar/lib.po
index 512142c6850de83a43174f2e8505b421d9d7e736..458bcb72e2dc2d89d3fb446a1fefd3a95a2fc6f5 100644
--- a/l10n/ar/lib.po
+++ b/l10n/ar/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "معلومات إضافية"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ar/settings.po b/l10n/ar/settings.po
index e3785a9b5a724491496611d866cc40346ae19b74..b4b4bf6b248610ae07823b3bff3cbbd4e5ed23ad 100644
--- a/l10n/ar/settings.po
+++ b/l10n/ar/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "فشل تحميل القائمة من الآب ستور"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "لم يتم التأكد من الشخصية بنجاح"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr "فشل إضافة المستخدم الى المجموعة %s"
 msgid "Unable to remove user from group %s"
 msgstr "فشل إزالة المستخدم من المجموعة %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -123,10 +123,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "حفظ"
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "مجموعات"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "مدير المجموعة"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "حذف"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "تحذير أمان"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "المزيد"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "إصدار"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "طوّر من قبل <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud مجتمع</a>, الـ <a href=\"https://github.com/owncloud\" target=\"_blank\">النص المصدري</a> مرخص بموجب <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">رخصة أفيرو العمومية</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "أضف تطبيقاتك"
@@ -180,116 +386,86 @@ msgstr "دعم تجاري"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "تم إستهلاك <strong>%s</strong> من المتوفر <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "الزبائن"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "تحميل عملاء سطح المكتب"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "تحميل عميل آندرويد"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "تحميل عميل آي أو أس"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "كلمات السر"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "لقد تم تغيير كلمة السر"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "لم يتم تعديل كلمة السر بنجاح"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "كلمات السر الحالية"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "كلمات سر جديدة"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "أظهر"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "عدل كلمة السر"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "العنوان البريدي"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "عنوانك البريدي"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "أدخل عنوانك البريدي لتفعيل استرجاع كلمة المرور"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "اللغة"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "ساعد في الترجمه"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "إستخدم هذا العنوان للإتصال بـ ownCloud في مدير الملفات"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "إصدار"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "طوّر من قبل <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud مجتمع</a>, الـ <a href=\"https://github.com/owncloud\" target=\"_blank\">النص المصدري</a> مرخص بموجب <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">رخصة أفيرو العمومية</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "مجموعات"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "انشئ"
@@ -298,34 +474,26 @@ msgstr "انشئ"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "شيء آخر"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "مدير المجموعة"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "حذف"
diff --git a/l10n/be/core.po b/l10n/be/core.po
new file mode 100644
index 0000000000000000000000000000000000000000..e5b4699d86e2b2dd94e7de328fbc1b24603979a1
--- /dev/null
+++ b/l10n/be/core.po
@@ -0,0 +1,593 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2011-07-25 16:05+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/share.php:85
+#, php-format
+msgid "User %s shared a file with you"
+msgstr ""
+
+#: ajax/share.php:87
+#, php-format
+msgid "User %s shared a folder with you"
+msgstr ""
+
+#: ajax/share.php:89
+#, php-format
+msgid ""
+"User %s shared the file \"%s\" with you. It is available for download here: "
+"%s"
+msgstr ""
+
+#: ajax/share.php:91
+#, php-format
+msgid ""
+"User %s shared the folder \"%s\" with you. It is available for download "
+"here: %s"
+msgstr ""
+
+#: ajax/vcategories/add.php:26 ajax/vcategories/edit.php:25
+msgid "Category type not provided."
+msgstr ""
+
+#: ajax/vcategories/add.php:30
+msgid "No category to add?"
+msgstr ""
+
+#: ajax/vcategories/add.php:37
+#, php-format
+msgid "This category already exists: %s"
+msgstr ""
+
+#: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
+#: ajax/vcategories/favorites.php:24
+#: ajax/vcategories/removeFromFavorites.php:26
+msgid "Object type not provided."
+msgstr ""
+
+#: ajax/vcategories/addToFavorites.php:30
+#: ajax/vcategories/removeFromFavorites.php:30
+#, php-format
+msgid "%s ID not provided."
+msgstr ""
+
+#: ajax/vcategories/addToFavorites.php:35
+#, php-format
+msgid "Error adding %s to favorites."
+msgstr ""
+
+#: ajax/vcategories/delete.php:35 js/oc-vcategories.js:136
+msgid "No categories selected for deletion."
+msgstr ""
+
+#: ajax/vcategories/removeFromFavorites.php:35
+#, php-format
+msgid "Error removing %s from favorites."
+msgstr ""
+
+#: js/config.php:32
+msgid "Sunday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Monday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Tuesday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Wednesday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Thursday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Friday"
+msgstr ""
+
+#: js/config.php:32
+msgid "Saturday"
+msgstr ""
+
+#: js/config.php:33
+msgid "January"
+msgstr ""
+
+#: js/config.php:33
+msgid "February"
+msgstr ""
+
+#: js/config.php:33
+msgid "March"
+msgstr ""
+
+#: js/config.php:33
+msgid "April"
+msgstr ""
+
+#: js/config.php:33
+msgid "May"
+msgstr ""
+
+#: js/config.php:33
+msgid "June"
+msgstr ""
+
+#: js/config.php:33
+msgid "July"
+msgstr ""
+
+#: js/config.php:33
+msgid "August"
+msgstr ""
+
+#: js/config.php:33
+msgid "September"
+msgstr ""
+
+#: js/config.php:33
+msgid "October"
+msgstr ""
+
+#: js/config.php:33
+msgid "November"
+msgstr ""
+
+#: js/config.php:33
+msgid "December"
+msgstr ""
+
+#: js/js.js:286
+msgid "Settings"
+msgstr ""
+
+#: js/js.js:767
+msgid "seconds ago"
+msgstr ""
+
+#: js/js.js:768
+msgid "1 minute ago"
+msgstr ""
+
+#: js/js.js:769
+msgid "{minutes} minutes ago"
+msgstr ""
+
+#: js/js.js:770
+msgid "1 hour ago"
+msgstr ""
+
+#: js/js.js:771
+msgid "{hours} hours ago"
+msgstr ""
+
+#: js/js.js:772
+msgid "today"
+msgstr ""
+
+#: js/js.js:773
+msgid "yesterday"
+msgstr ""
+
+#: js/js.js:774
+msgid "{days} days ago"
+msgstr ""
+
+#: js/js.js:775
+msgid "last month"
+msgstr ""
+
+#: js/js.js:776
+msgid "{months} months ago"
+msgstr ""
+
+#: js/js.js:777
+msgid "months ago"
+msgstr ""
+
+#: js/js.js:778
+msgid "last year"
+msgstr ""
+
+#: js/js.js:779
+msgid "years ago"
+msgstr ""
+
+#: js/oc-dialogs.js:126
+msgid "Choose"
+msgstr ""
+
+#: js/oc-dialogs.js:146 js/oc-dialogs.js:166
+msgid "Cancel"
+msgstr ""
+
+#: js/oc-dialogs.js:162
+msgid "No"
+msgstr ""
+
+#: js/oc-dialogs.js:163
+msgid "Yes"
+msgstr ""
+
+#: js/oc-dialogs.js:180
+msgid "Ok"
+msgstr ""
+
+#: js/oc-vcategories.js:5 js/oc-vcategories.js:85 js/oc-vcategories.js:102
+#: js/oc-vcategories.js:117 js/oc-vcategories.js:132 js/oc-vcategories.js:162
+msgid "The object type is not specified."
+msgstr ""
+
+#: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
+msgid "Error"
+msgstr ""
+
+#: js/oc-vcategories.js:179
+msgid "The app name is not specified."
+msgstr ""
+
+#: js/oc-vcategories.js:194
+msgid "The required file {file} is not installed!"
+msgstr ""
+
+#: js/share.js:29 js/share.js:43 js/share.js:90
+msgid "Shared"
+msgstr ""
+
+#: js/share.js:93
+msgid "Share"
+msgstr ""
+
+#: js/share.js:141 js/share.js:622
+msgid "Error while sharing"
+msgstr ""
+
+#: js/share.js:152
+msgid "Error while unsharing"
+msgstr ""
+
+#: js/share.js:159
+msgid "Error while changing permissions"
+msgstr ""
+
+#: js/share.js:168
+msgid "Shared with you and the group {group} by {owner}"
+msgstr ""
+
+#: js/share.js:170
+msgid "Shared with you by {owner}"
+msgstr ""
+
+#: js/share.js:175
+msgid "Share with"
+msgstr ""
+
+#: js/share.js:180
+msgid "Share with link"
+msgstr ""
+
+#: js/share.js:183
+msgid "Password protect"
+msgstr ""
+
+#: js/share.js:185 templates/installation.php:44 templates/login.php:35
+msgid "Password"
+msgstr ""
+
+#: js/share.js:189
+msgid "Email link to person"
+msgstr ""
+
+#: js/share.js:190
+msgid "Send"
+msgstr ""
+
+#: js/share.js:194
+msgid "Set expiration date"
+msgstr ""
+
+#: js/share.js:195
+msgid "Expiration date"
+msgstr ""
+
+#: js/share.js:227
+msgid "Share via email:"
+msgstr ""
+
+#: js/share.js:229
+msgid "No people found"
+msgstr ""
+
+#: js/share.js:256
+msgid "Resharing is not allowed"
+msgstr ""
+
+#: js/share.js:292
+msgid "Shared in {item} with {user}"
+msgstr ""
+
+#: js/share.js:313
+msgid "Unshare"
+msgstr ""
+
+#: js/share.js:325
+msgid "can edit"
+msgstr ""
+
+#: js/share.js:327
+msgid "access control"
+msgstr ""
+
+#: js/share.js:330
+msgid "create"
+msgstr ""
+
+#: js/share.js:333
+msgid "update"
+msgstr ""
+
+#: js/share.js:336
+msgid "delete"
+msgstr ""
+
+#: js/share.js:339
+msgid "share"
+msgstr ""
+
+#: js/share.js:373 js/share.js:569
+msgid "Password protected"
+msgstr ""
+
+#: js/share.js:582
+msgid "Error unsetting expiration date"
+msgstr ""
+
+#: js/share.js:594
+msgid "Error setting expiration date"
+msgstr ""
+
+#: js/share.js:609
+msgid "Sending ..."
+msgstr ""
+
+#: js/share.js:620
+msgid "Email sent"
+msgstr ""
+
+#: js/update.js:14
+msgid ""
+"The update was unsuccessful. Please report this issue to the <a "
+"href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud "
+"community</a>."
+msgstr ""
+
+#: js/update.js:18
+msgid "The update was successful. Redirecting you to ownCloud now."
+msgstr ""
+
+#: lostpassword/controller.php:47
+msgid "ownCloud password reset"
+msgstr ""
+
+#: lostpassword/templates/email.php:2
+msgid "Use the following link to reset your password: {link}"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:3
+msgid "You will receive a link to reset your password via Email."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:5
+msgid "Reset email send."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:8
+msgid "Request failed!"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:11 templates/installation.php:39
+#: templates/login.php:28
+msgid "Username"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:14
+msgid "Request reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:4
+msgid "Your password was reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:5
+msgid "To login page"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:8
+msgid "New password"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:11
+msgid "Reset password"
+msgstr ""
+
+#: strings.php:5
+msgid "Personal"
+msgstr ""
+
+#: strings.php:6
+msgid "Users"
+msgstr ""
+
+#: strings.php:7
+msgid "Apps"
+msgstr ""
+
+#: strings.php:8
+msgid "Admin"
+msgstr ""
+
+#: strings.php:9
+msgid "Help"
+msgstr ""
+
+#: templates/403.php:12
+msgid "Access forbidden"
+msgstr ""
+
+#: templates/404.php:12
+msgid "Cloud not found"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:4
+msgid "Edit categories"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:16
+msgid "Add"
+msgstr ""
+
+#: templates/installation.php:23 templates/installation.php:30
+msgid "Security Warning"
+msgstr ""
+
+#: templates/installation.php:24
+msgid ""
+"No secure random number generator is available, please enable the PHP "
+"OpenSSL extension."
+msgstr ""
+
+#: templates/installation.php:25
+msgid ""
+"Without a secure random number generator an attacker may be able to predict "
+"password reset tokens and take over your account."
+msgstr ""
+
+#: templates/installation.php:31
+msgid ""
+"Your data directory and files are probably accessible from the internet "
+"because the .htaccess file does not work."
+msgstr ""
+
+#: templates/installation.php:32
+msgid ""
+"For information how to properly configure your server, please see the <a "
+"href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
+"target=\"_blank\">documentation</a>."
+msgstr ""
+
+#: templates/installation.php:36
+msgid "Create an <strong>admin account</strong>"
+msgstr ""
+
+#: templates/installation.php:52
+msgid "Advanced"
+msgstr ""
+
+#: templates/installation.php:54
+msgid "Data folder"
+msgstr ""
+
+#: templates/installation.php:61
+msgid "Configure the database"
+msgstr ""
+
+#: templates/installation.php:66 templates/installation.php:77
+#: templates/installation.php:87 templates/installation.php:97
+msgid "will be used"
+msgstr ""
+
+#: templates/installation.php:109
+msgid "Database user"
+msgstr ""
+
+#: templates/installation.php:113
+msgid "Database password"
+msgstr ""
+
+#: templates/installation.php:117
+msgid "Database name"
+msgstr ""
+
+#: templates/installation.php:125
+msgid "Database tablespace"
+msgstr ""
+
+#: templates/installation.php:131
+msgid "Database host"
+msgstr ""
+
+#: templates/installation.php:136
+msgid "Finish setup"
+msgstr ""
+
+#: templates/layout.guest.php:33
+msgid "web services under your control"
+msgstr ""
+
+#: templates/layout.user.php:48
+msgid "Log out"
+msgstr ""
+
+#: templates/login.php:10
+msgid "Automatic logon rejected!"
+msgstr ""
+
+#: templates/login.php:11
+msgid ""
+"If you did not change your password recently, your account may be "
+"compromised!"
+msgstr ""
+
+#: templates/login.php:13
+msgid "Please change your password to secure your account again."
+msgstr ""
+
+#: templates/login.php:19
+msgid "Lost your password?"
+msgstr ""
+
+#: templates/login.php:41
+msgid "remember"
+msgstr ""
+
+#: templates/login.php:43
+msgid "Log in"
+msgstr ""
+
+#: templates/login.php:49
+msgid "Alternative Logins"
+msgstr ""
+
+#: templates/part.pagenavi.php:3
+msgid "prev"
+msgstr ""
+
+#: templates/part.pagenavi.php:20
+msgid "next"
+msgstr ""
+
+#: templates/update.php:3
+#, php-format
+msgid "Updating ownCloud to version %s, this may take a while."
+msgstr ""
diff --git a/l10n/be/files.po b/l10n/be/files.po
new file mode 100644
index 0000000000000000000000000000000000000000..8a60af5a9604b5a61de98e0d83ce812c0bab2031
--- /dev/null
+++ b/l10n/be/files.po
@@ -0,0 +1,315 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/move.php:17
+#, php-format
+msgid "Could not move %s - File with this name already exists"
+msgstr ""
+
+#: ajax/move.php:27 ajax/move.php:30
+#, php-format
+msgid "Could not move %s"
+msgstr ""
+
+#: ajax/rename.php:22 ajax/rename.php:25
+msgid "Unable to rename file"
+msgstr ""
+
+#: ajax/upload.php:19
+msgid "No file was uploaded. Unknown error"
+msgstr ""
+
+#: ajax/upload.php:26
+msgid "There is no error, the file uploaded with success"
+msgstr ""
+
+#: ajax/upload.php:27
+msgid ""
+"The uploaded file exceeds the upload_max_filesize directive in php.ini: "
+msgstr ""
+
+#: ajax/upload.php:29
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form"
+msgstr ""
+
+#: ajax/upload.php:31
+msgid "The uploaded file was only partially uploaded"
+msgstr ""
+
+#: ajax/upload.php:32
+msgid "No file was uploaded"
+msgstr ""
+
+#: ajax/upload.php:33
+msgid "Missing a temporary folder"
+msgstr ""
+
+#: ajax/upload.php:34
+msgid "Failed to write to disk"
+msgstr ""
+
+#: ajax/upload.php:52
+msgid "Not enough storage available"
+msgstr ""
+
+#: ajax/upload.php:83
+msgid "Invalid directory."
+msgstr ""
+
+#: appinfo/app.php:10
+msgid "Files"
+msgstr ""
+
+#: js/fileactions.js:125
+msgid "Delete permanently"
+msgstr ""
+
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
+msgid "Delete"
+msgstr ""
+
+#: js/fileactions.js:193
+msgid "Rename"
+msgstr ""
+
+#: js/filelist.js:49 js/filelist.js:52 js/files.js:291 js/files.js:407
+#: js/files.js:438
+msgid "Pending"
+msgstr ""
+
+#: js/filelist.js:253 js/filelist.js:255
+msgid "{new_name} already exists"
+msgstr ""
+
+#: js/filelist.js:253 js/filelist.js:255
+msgid "replace"
+msgstr ""
+
+#: js/filelist.js:253
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:253 js/filelist.js:255
+msgid "cancel"
+msgstr ""
+
+#: js/filelist.js:295
+msgid "replaced {new_name}"
+msgstr ""
+
+#: js/filelist.js:295 js/filelist.js:297
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:297
+msgid "replaced {new_name} with {old_name}"
+msgstr ""
+
+#: js/filelist.js:322
+msgid "perform delete operation"
+msgstr ""
+
+#: js/files.js:52
+msgid "'.' is an invalid file name."
+msgstr ""
+
+#: js/files.js:56
+msgid "File name cannot be empty."
+msgstr ""
+
+#: js/files.js:64
+msgid ""
+"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not "
+"allowed."
+msgstr ""
+
+#: js/files.js:78
+msgid "Your storage is full, files can not be updated or synced anymore!"
+msgstr ""
+
+#: js/files.js:82
+msgid "Your storage is almost full ({usedSpacePercent}%)"
+msgstr ""
+
+#: js/files.js:224
+msgid ""
+"Your download is being prepared. This might take some time if the files are "
+"big."
+msgstr ""
+
+#: js/files.js:261
+msgid "Unable to upload your file as it is a directory or has 0 bytes"
+msgstr ""
+
+#: js/files.js:261
+msgid "Upload Error"
+msgstr ""
+
+#: js/files.js:272
+msgid "Close"
+msgstr ""
+
+#: js/files.js:311
+msgid "1 file uploading"
+msgstr ""
+
+#: js/files.js:314 js/files.js:369 js/files.js:384
+msgid "{count} files uploading"
+msgstr ""
+
+#: js/files.js:387 js/files.js:422
+msgid "Upload cancelled."
+msgstr ""
+
+#: js/files.js:496
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:569
+msgid "URL cannot be empty."
+msgstr ""
+
+#: js/files.js:574
+msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
+msgstr ""
+
+#: js/files.js:948 templates/index.php:67
+msgid "Name"
+msgstr ""
+
+#: js/files.js:949 templates/index.php:78
+msgid "Size"
+msgstr ""
+
+#: js/files.js:950 templates/index.php:80
+msgid "Modified"
+msgstr ""
+
+#: js/files.js:969
+msgid "1 folder"
+msgstr ""
+
+#: js/files.js:971
+msgid "{count} folders"
+msgstr ""
+
+#: js/files.js:979
+msgid "1 file"
+msgstr ""
+
+#: js/files.js:981
+msgid "{count} files"
+msgstr ""
+
+#: lib/helper.php:11 templates/index.php:18
+msgid "Upload"
+msgstr ""
+
+#: templates/admin.php:5
+msgid "File handling"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "Maximum upload size"
+msgstr ""
+
+#: templates/admin.php:10
+msgid "max. possible: "
+msgstr ""
+
+#: templates/admin.php:15
+msgid "Needed for multi-file and folder downloads."
+msgstr ""
+
+#: templates/admin.php:17
+msgid "Enable ZIP-download"
+msgstr ""
+
+#: templates/admin.php:20
+msgid "0 is unlimited"
+msgstr ""
+
+#: templates/admin.php:22
+msgid "Maximum input size for ZIP files"
+msgstr ""
+
+#: templates/admin.php:26
+msgid "Save"
+msgstr ""
+
+#: templates/index.php:7
+msgid "New"
+msgstr ""
+
+#: templates/index.php:10
+msgid "Text file"
+msgstr ""
+
+#: templates/index.php:12
+msgid "Folder"
+msgstr ""
+
+#: templates/index.php:14
+msgid "From link"
+msgstr ""
+
+#: templates/index.php:40
+msgid "Deleted files"
+msgstr ""
+
+#: templates/index.php:46
+msgid "Cancel upload"
+msgstr ""
+
+#: templates/index.php:59
+msgid "Nothing in here. Upload something!"
+msgstr ""
+
+#: templates/index.php:73
+msgid "Download"
+msgstr ""
+
+#: templates/index.php:85 templates/index.php:86
+msgid "Unshare"
+msgstr ""
+
+#: templates/index.php:105
+msgid "Upload too large"
+msgstr ""
+
+#: templates/index.php:107
+msgid ""
+"The files you are trying to upload exceed the maximum size for file uploads "
+"on this server."
+msgstr ""
+
+#: templates/index.php:112
+msgid "Files are being scanned, please wait."
+msgstr ""
+
+#: templates/index.php:115
+msgid "Current scanning"
+msgstr ""
+
+#: templates/upgrade.php:2
+msgid "Upgrading filesystem cache..."
+msgstr ""
diff --git a/l10n/be/files_encryption.po b/l10n/be/files_encryption.po
new file mode 100644
index 0000000000000000000000000000000000000000..f1aff43a6c5a1683710bcbe11a050e005d481451
--- /dev/null
+++ b/l10n/be/files_encryption.po
@@ -0,0 +1,38 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2012-08-12 22:33+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: templates/settings-personal.php:4 templates/settings.php:5
+msgid "Encryption"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "File encryption is enabled."
+msgstr ""
+
+#: templates/settings-personal.php:11
+msgid "The following file types will not be encrypted:"
+msgstr ""
+
+#: templates/settings.php:7
+msgid "Exclude the following file types from encryption:"
+msgstr ""
+
+#: templates/settings.php:12
+msgid "None"
+msgstr ""
diff --git a/l10n/be/files_external.po b/l10n/be/files_external.po
new file mode 100644
index 0000000000000000000000000000000000000000..de27bede652979e9bc443cf5247f00d000a9f554
--- /dev/null
+++ b/l10n/be/files_external.po
@@ -0,0 +1,120 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2012-08-12 22:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: js/dropbox.js:7 js/dropbox.js:25 js/google.js:7 js/google.js:23
+msgid "Access granted"
+msgstr ""
+
+#: js/dropbox.js:28 js/dropbox.js:74 js/dropbox.js:79 js/dropbox.js:86
+msgid "Error configuring Dropbox storage"
+msgstr ""
+
+#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40
+msgid "Grant access"
+msgstr ""
+
+#: js/dropbox.js:73 js/google.js:72
+msgid "Fill out all required fields"
+msgstr ""
+
+#: js/dropbox.js:85
+msgid "Please provide a valid Dropbox app key and secret."
+msgstr ""
+
+#: js/google.js:26 js/google.js:73 js/google.js:78
+msgid "Error configuring Google Drive storage"
+msgstr ""
+
+#: lib/config.php:413
+msgid ""
+"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
+"is not possible. Please ask your system administrator to install it."
+msgstr ""
+
+#: lib/config.php:414
+msgid ""
+"<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
+" of FTP shares is not possible. Please ask your system administrator to "
+"install it."
+msgstr ""
+
+#: templates/settings.php:3
+msgid "External Storage"
+msgstr ""
+
+#: templates/settings.php:8 templates/settings.php:22
+msgid "Mount point"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Backend"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Configuration"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "Options"
+msgstr ""
+
+#: templates/settings.php:12
+msgid "Applicable"
+msgstr ""
+
+#: templates/settings.php:27
+msgid "Add mount point"
+msgstr ""
+
+#: templates/settings.php:85
+msgid "None set"
+msgstr ""
+
+#: templates/settings.php:86
+msgid "All Users"
+msgstr ""
+
+#: templates/settings.php:87
+msgid "Groups"
+msgstr ""
+
+#: templates/settings.php:95
+msgid "Users"
+msgstr ""
+
+#: templates/settings.php:108 templates/settings.php:109
+#: templates/settings.php:144 templates/settings.php:145
+msgid "Delete"
+msgstr ""
+
+#: templates/settings.php:124
+msgid "Enable User External Storage"
+msgstr ""
+
+#: templates/settings.php:125
+msgid "Allow users to mount their own external storage"
+msgstr ""
+
+#: templates/settings.php:136
+msgid "SSL root certificates"
+msgstr ""
+
+#: templates/settings.php:153
+msgid "Import Root Certificate"
+msgstr ""
diff --git a/l10n/be/files_sharing.po b/l10n/be/files_sharing.po
new file mode 100644
index 0000000000000000000000000000000000000000..c09045efa9b7bfb0877fbea5fe066cf545449ccb
--- /dev/null
+++ b/l10n/be/files_sharing.po
@@ -0,0 +1,48 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2012-08-12 22:35+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
+
+#: templates/public.php:9
+#, php-format
+msgid "%s shared the folder %s with you"
+msgstr ""
+
+#: templates/public.php:11
+#, php-format
+msgid "%s shared the file %s with you"
+msgstr ""
+
+#: templates/public.php:14 templates/public.php:30
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:29
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:35
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/be/files_trashbin.po b/l10n/be/files_trashbin.po
new file mode 100644
index 0000000000000000000000000000000000000000..c9d67b5a277534d2a8d8d7e61f6d01a73cef1df5
--- /dev/null
+++ b/l10n/be/files_trashbin.po
@@ -0,0 +1,68 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-01-31 16:03+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/delete.php:22
+#, php-format
+msgid "Couldn't delete %s permanently"
+msgstr ""
+
+#: ajax/undelete.php:41
+#, php-format
+msgid "Couldn't restore %s"
+msgstr ""
+
+#: js/trash.js:7 js/trash.js:94
+msgid "perform restore operation"
+msgstr ""
+
+#: js/trash.js:33
+msgid "delete file permanently"
+msgstr ""
+
+#: js/trash.js:125 templates/index.php:17
+msgid "Name"
+msgstr ""
+
+#: js/trash.js:126 templates/index.php:27
+msgid "Deleted"
+msgstr ""
+
+#: js/trash.js:135
+msgid "1 folder"
+msgstr ""
+
+#: js/trash.js:137
+msgid "{count} folders"
+msgstr ""
+
+#: js/trash.js:145
+msgid "1 file"
+msgstr ""
+
+#: js/trash.js:147
+msgid "{count} files"
+msgstr ""
+
+#: templates/index.php:9
+msgid "Nothing in here. Your trash bin is empty!"
+msgstr ""
+
+#: templates/index.php:20 templates/index.php:22
+msgid "Restore"
+msgstr ""
diff --git a/l10n/be/files_versions.po b/l10n/be/files_versions.po
new file mode 100644
index 0000000000000000000000000000000000000000..28ff041ebff6c4faddc893d14be6ce3deb39ca46
--- /dev/null
+++ b/l10n/be/files_versions.po
@@ -0,0 +1,65 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2012-08-12 22:37+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/rollbackVersion.php:15
+#, php-format
+msgid "Could not revert: %s"
+msgstr ""
+
+#: history.php:40
+msgid "success"
+msgstr ""
+
+#: history.php:42
+#, php-format
+msgid "File %s was reverted to version %s"
+msgstr ""
+
+#: history.php:49
+msgid "failure"
+msgstr ""
+
+#: history.php:51
+#, php-format
+msgid "File %s could not be reverted to version %s"
+msgstr ""
+
+#: history.php:68
+msgid "No old versions available"
+msgstr ""
+
+#: history.php:73
+msgid "No path specified"
+msgstr ""
+
+#: js/versions.js:16
+msgid "History"
+msgstr ""
+
+#: templates/history.php:20
+msgid "Revert a file to a previous version by clicking on its revert button"
+msgstr ""
+
+#: templates/settings.php:3
+msgid "Files Versioning"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "Enable"
+msgstr ""
diff --git a/l10n/be/lib.po b/l10n/be/lib.po
new file mode 100644
index 0000000000000000000000000000000000000000..5f4d28d5e4db1be71c0330e9e94dcbd8e65f9b27
--- /dev/null
+++ b/l10n/be/lib.po
@@ -0,0 +1,253 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2012-07-27 22:23+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: app.php:349
+msgid "Help"
+msgstr ""
+
+#: app.php:362
+msgid "Personal"
+msgstr ""
+
+#: app.php:373
+msgid "Settings"
+msgstr ""
+
+#: app.php:385
+msgid "Users"
+msgstr ""
+
+#: app.php:398
+msgid "Apps"
+msgstr ""
+
+#: app.php:406
+msgid "Admin"
+msgstr ""
+
+#: files.php:202
+msgid "ZIP download is turned off."
+msgstr ""
+
+#: files.php:203
+msgid "Files need to be downloaded one by one."
+msgstr ""
+
+#: files.php:204 files.php:231
+msgid "Back to Files"
+msgstr ""
+
+#: files.php:228
+msgid "Selected files too large to generate zip file."
+msgstr ""
+
+#: helper.php:228
+msgid "couldn't be determined"
+msgstr ""
+
+#: json.php:28
+msgid "Application is not enabled"
+msgstr ""
+
+#: json.php:39 json.php:62 json.php:73
+msgid "Authentication error"
+msgstr ""
+
+#: json.php:51
+msgid "Token expired. Please reload page."
+msgstr ""
+
+#: search/provider/file.php:17 search/provider/file.php:35
+msgid "Files"
+msgstr ""
+
+#: search/provider/file.php:26 search/provider/file.php:33
+msgid "Text"
+msgstr ""
+
+#: search/provider/file.php:29
+msgid "Images"
+msgstr ""
+
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: setup.php:651
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: template.php:113
+msgid "seconds ago"
+msgstr ""
+
+#: template.php:114
+msgid "1 minute ago"
+msgstr ""
+
+#: template.php:115
+#, php-format
+msgid "%d minutes ago"
+msgstr ""
+
+#: template.php:116
+msgid "1 hour ago"
+msgstr ""
+
+#: template.php:117
+#, php-format
+msgid "%d hours ago"
+msgstr ""
+
+#: template.php:118
+msgid "today"
+msgstr ""
+
+#: template.php:119
+msgid "yesterday"
+msgstr ""
+
+#: template.php:120
+#, php-format
+msgid "%d days ago"
+msgstr ""
+
+#: template.php:121
+msgid "last month"
+msgstr ""
+
+#: template.php:122
+#, php-format
+msgid "%d months ago"
+msgstr ""
+
+#: template.php:123
+msgid "last year"
+msgstr ""
+
+#: template.php:124
+msgid "years ago"
+msgstr ""
+
+#: updater.php:78
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:81
+msgid "up to date"
+msgstr ""
+
+#: updater.php:84
+msgid "updates check is disabled"
+msgstr ""
+
+#: vcategories.php:188 vcategories.php:249
+#, php-format
+msgid "Could not find category \"%s\""
+msgstr ""
diff --git a/l10n/be/settings.po b/l10n/be/settings.po
new file mode 100644
index 0000000000000000000000000000000000000000..8610e96b1adabe38912670dc70dbebd77f9b60f8
--- /dev/null
+++ b/l10n/be/settings.po
@@ -0,0 +1,496 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2011-07-25 16:05+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/apps/ocs.php:20
+msgid "Unable to load list from App Store"
+msgstr ""
+
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/togglegroups.php:18
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/changedisplayname.php:32
+msgid "Unable to change display name"
+msgstr ""
+
+#: ajax/creategroup.php:10
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Unable to add group"
+msgstr ""
+
+#: ajax/enableapp.php:11
+msgid "Could not enable app. "
+msgstr ""
+
+#: ajax/lostpassword.php:12
+msgid "Email saved"
+msgstr ""
+
+#: ajax/lostpassword.php:14
+msgid "Invalid email"
+msgstr ""
+
+#: ajax/removegroup.php:13
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:24
+msgid "Unable to delete user"
+msgstr ""
+
+#: ajax/setlanguage.php:15
+msgid "Language changed"
+msgstr ""
+
+#: ajax/setlanguage.php:17 ajax/setlanguage.php:20
+msgid "Invalid request"
+msgstr ""
+
+#: ajax/togglegroups.php:12
+msgid "Admins can't remove themself from the admin group"
+msgstr ""
+
+#: ajax/togglegroups.php:28
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:34
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
+#: ajax/updateapp.php:14
+msgid "Couldn't update app."
+msgstr ""
+
+#: js/apps.js:30
+msgid "Update to {appversion}"
+msgstr ""
+
+#: js/apps.js:36 js/apps.js:76
+msgid "Disable"
+msgstr ""
+
+#: js/apps.js:36 js/apps.js:64
+msgid "Enable"
+msgstr ""
+
+#: js/apps.js:55
+msgid "Please wait...."
+msgstr ""
+
+#: js/apps.js:84
+msgid "Updating...."
+msgstr ""
+
+#: js/apps.js:87
+msgid "Error while updating app"
+msgstr ""
+
+#: js/apps.js:87
+msgid "Error"
+msgstr ""
+
+#: js/apps.js:90
+msgid "Updated"
+msgstr ""
+
+#: js/personal.js:96
+msgid "Saving..."
+msgstr ""
+
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:191
+msgid "add group"
+msgstr ""
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr ""
+
+#: personal.php:34 personal.php:35
+msgid "__language_name__"
+msgstr ""
+
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
+#: templates/apps.php:10
+msgid "Add your App"
+msgstr ""
+
+#: templates/apps.php:11
+msgid "More Apps"
+msgstr ""
+
+#: templates/apps.php:24
+msgid "Select an App"
+msgstr ""
+
+#: templates/apps.php:28
+msgid "See application page at apps.owncloud.com"
+msgstr ""
+
+#: templates/apps.php:29
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
+
+#: templates/apps.php:31
+msgid "Update"
+msgstr ""
+
+#: templates/help.php:3
+msgid "User Documentation"
+msgstr ""
+
+#: templates/help.php:4
+msgid "Administrator Documentation"
+msgstr ""
+
+#: templates/help.php:6
+msgid "Online Documentation"
+msgstr ""
+
+#: templates/help.php:7
+msgid "Forum"
+msgstr ""
+
+#: templates/help.php:9
+msgid "Bugtracker"
+msgstr ""
+
+#: templates/help.php:11
+msgid "Commercial Support"
+msgstr ""
+
+#: templates/personal.php:8
+#, php-format
+msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
+msgstr ""
+
+#: templates/personal.php:14
+msgid "Get the apps to sync your files"
+msgstr ""
+
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
+
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
+msgid "Password"
+msgstr ""
+
+#: templates/personal.php:37
+msgid "Your password was changed"
+msgstr ""
+
+#: templates/personal.php:38
+msgid "Unable to change your password"
+msgstr ""
+
+#: templates/personal.php:39
+msgid "Current password"
+msgstr ""
+
+#: templates/personal.php:40
+msgid "New password"
+msgstr ""
+
+#: templates/personal.php:42
+msgid "Change password"
+msgstr ""
+
+#: templates/personal.php:54 templates/users.php:78
+msgid "Display Name"
+msgstr ""
+
+#: templates/personal.php:55
+msgid "Your display name was changed"
+msgstr ""
+
+#: templates/personal.php:56
+msgid "Unable to change your display name"
+msgstr ""
+
+#: templates/personal.php:59
+msgid "Change display name"
+msgstr ""
+
+#: templates/personal.php:68
+msgid "Email"
+msgstr ""
+
+#: templates/personal.php:69
+msgid "Your email address"
+msgstr ""
+
+#: templates/personal.php:70
+msgid "Fill in an email address to enable password recovery"
+msgstr ""
+
+#: templates/personal.php:76 templates/personal.php:77
+msgid "Language"
+msgstr ""
+
+#: templates/personal.php:82
+msgid "Help translate"
+msgstr ""
+
+#: templates/personal.php:87
+msgid "WebDAV"
+msgstr ""
+
+#: templates/personal.php:89
+msgid "Use this address to connect to your ownCloud in your file manager"
+msgstr ""
+
+#: templates/users.php:21 templates/users.php:77
+msgid "Login Name"
+msgstr ""
+
+#: templates/users.php:32
+msgid "Create"
+msgstr ""
+
+#: templates/users.php:35
+msgid "Default Storage"
+msgstr ""
+
+#: templates/users.php:41 templates/users.php:139
+msgid "Unlimited"
+msgstr ""
+
+#: templates/users.php:59 templates/users.php:154
+msgid "Other"
+msgstr ""
+
+#: templates/users.php:84
+msgid "Storage"
+msgstr ""
+
+#: templates/users.php:95
+msgid "change display name"
+msgstr ""
+
+#: templates/users.php:99
+msgid "set new password"
+msgstr ""
+
+#: templates/users.php:134
+msgid "Default"
+msgstr ""
diff --git a/l10n/be/user_ldap.po b/l10n/be/user_ldap.po
new file mode 100644
index 0000000000000000000000000000000000000000..1d422381d076050aa5db1a0f502242749f9456e1
--- /dev/null
+++ b/l10n/be/user_ldap.po
@@ -0,0 +1,309 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2012-08-12 22:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ajax/deleteConfiguration.php:34
+msgid "Failed to delete the server configuration"
+msgstr ""
+
+#: ajax/testConfiguration.php:35
+msgid "The configuration is valid and the connection could be established!"
+msgstr ""
+
+#: ajax/testConfiguration.php:37
+msgid ""
+"The configuration is valid, but the Bind failed. Please check the server "
+"settings and credentials."
+msgstr ""
+
+#: ajax/testConfiguration.php:40
+msgid ""
+"The configuration is invalid. Please look in the ownCloud log for further "
+"details."
+msgstr ""
+
+#: js/settings.js:66
+msgid "Deletion failed"
+msgstr ""
+
+#: js/settings.js:82
+msgid "Take over settings from recent server configuration?"
+msgstr ""
+
+#: js/settings.js:83
+msgid "Keep settings?"
+msgstr ""
+
+#: js/settings.js:97
+msgid "Cannot add server configuration"
+msgstr ""
+
+#: js/settings.js:121
+msgid "Connection test succeeded"
+msgstr ""
+
+#: js/settings.js:126
+msgid "Connection test failed"
+msgstr ""
+
+#: js/settings.js:136
+msgid "Do you really want to delete the current Server Configuration?"
+msgstr ""
+
+#: js/settings.js:137
+msgid "Confirm Deletion"
+msgstr ""
+
+#: templates/settings.php:8
+msgid ""
+"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may"
+" experience unexpected behaviour. Please ask your system administrator to "
+"disable one of them."
+msgstr ""
+
+#: templates/settings.php:11
+msgid ""
+"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not "
+"work. Please ask your system administrator to install it."
+msgstr ""
+
+#: templates/settings.php:15
+msgid "Server configuration"
+msgstr ""
+
+#: templates/settings.php:17
+msgid "Add Server Configuration"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Host"
+msgstr ""
+
+#: templates/settings.php:21
+msgid ""
+"You can omit the protocol, except you require SSL. Then start with ldaps://"
+msgstr ""
+
+#: templates/settings.php:22
+msgid "Base DN"
+msgstr ""
+
+#: templates/settings.php:22
+msgid "One Base DN per line"
+msgstr ""
+
+#: templates/settings.php:22
+msgid "You can specify Base DN for users and groups in the Advanced tab"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "User DN"
+msgstr ""
+
+#: templates/settings.php:23
+msgid ""
+"The DN of the client user with which the bind shall be done, e.g. "
+"uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password "
+"empty."
+msgstr ""
+
+#: templates/settings.php:24
+msgid "Password"
+msgstr ""
+
+#: templates/settings.php:24
+msgid "For anonymous access, leave DN and Password empty."
+msgstr ""
+
+#: templates/settings.php:25
+msgid "User Login Filter"
+msgstr ""
+
+#: templates/settings.php:25
+#, php-format
+msgid ""
+"Defines the filter to apply, when login is attempted. %%uid replaces the "
+"username in the login action."
+msgstr ""
+
+#: templates/settings.php:25
+#, php-format
+msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
+msgstr ""
+
+#: templates/settings.php:26
+msgid "User List Filter"
+msgstr ""
+
+#: templates/settings.php:26
+msgid "Defines the filter to apply, when retrieving users."
+msgstr ""
+
+#: templates/settings.php:26
+msgid "without any placeholder, e.g. \"objectClass=person\"."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "Group Filter"
+msgstr ""
+
+#: templates/settings.php:27
+msgid "Defines the filter to apply, when retrieving groups."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
+msgstr ""
+
+#: templates/settings.php:31
+msgid "Connection Settings"
+msgstr ""
+
+#: templates/settings.php:33
+msgid "Configuration Active"
+msgstr ""
+
+#: templates/settings.php:33
+msgid "When unchecked, this configuration will be skipped."
+msgstr ""
+
+#: templates/settings.php:34
+msgid "Port"
+msgstr ""
+
+#: templates/settings.php:35
+msgid "Backup (Replica) Host"
+msgstr ""
+
+#: templates/settings.php:35
+msgid ""
+"Give an optional backup host. It must be a replica of the main LDAP/AD "
+"server."
+msgstr ""
+
+#: templates/settings.php:36
+msgid "Backup (Replica) Port"
+msgstr ""
+
+#: templates/settings.php:37
+msgid "Disable Main Server"
+msgstr ""
+
+#: templates/settings.php:37
+msgid "When switched on, ownCloud will only connect to the replica server."
+msgstr ""
+
+#: templates/settings.php:38
+msgid "Use TLS"
+msgstr ""
+
+#: templates/settings.php:38
+msgid "Do not use it additionally for LDAPS connections, it will fail."
+msgstr ""
+
+#: templates/settings.php:39
+msgid "Case insensitve LDAP server (Windows)"
+msgstr ""
+
+#: templates/settings.php:40
+msgid "Turn off SSL certificate validation."
+msgstr ""
+
+#: templates/settings.php:40
+msgid ""
+"If connection only works with this option, import the LDAP server's SSL "
+"certificate in your ownCloud server."
+msgstr ""
+
+#: templates/settings.php:40
+msgid "Not recommended, use for testing only."
+msgstr ""
+
+#: templates/settings.php:41
+msgid "in seconds. A change empties the cache."
+msgstr ""
+
+#: templates/settings.php:43
+msgid "Directory Settings"
+msgstr ""
+
+#: templates/settings.php:45
+msgid "User Display Name Field"
+msgstr ""
+
+#: templates/settings.php:45
+msgid "The LDAP attribute to use to generate the user`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:46
+msgid "Base User Tree"
+msgstr ""
+
+#: templates/settings.php:46
+msgid "One User Base DN per line"
+msgstr ""
+
+#: templates/settings.php:47
+msgid "User Search Attributes"
+msgstr ""
+
+#: templates/settings.php:47 templates/settings.php:50
+msgid "Optional; one attribute per line"
+msgstr ""
+
+#: templates/settings.php:48
+msgid "Group Display Name Field"
+msgstr ""
+
+#: templates/settings.php:48
+msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:49
+msgid "Base Group Tree"
+msgstr ""
+
+#: templates/settings.php:49
+msgid "One Group Base DN per line"
+msgstr ""
+
+#: templates/settings.php:50
+msgid "Group Search Attributes"
+msgstr ""
+
+#: templates/settings.php:51
+msgid "Group-Member association"
+msgstr ""
+
+#: templates/settings.php:53
+msgid "Special Attributes"
+msgstr ""
+
+#: templates/settings.php:56
+msgid "in bytes"
+msgstr ""
+
+#: templates/settings.php:58
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:62
+msgid "Help"
+msgstr ""
diff --git a/l10n/be/user_webdavauth.po b/l10n/be/user_webdavauth.po
new file mode 100644
index 0000000000000000000000000000000000000000..16028ee79d808030b822e498304ac99d017c26c9
--- /dev/null
+++ b/l10n/be/user_webdavauth.po
@@ -0,0 +1,33 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2012-11-09 09:06+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian (http://www.transifex.com/projects/p/owncloud/language/be/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: be\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: templates/settings.php:3
+msgid "WebDAV Authentication"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "URL: http://"
+msgstr ""
+
+#: templates/settings.php:7
+msgid ""
+"ownCloud will send the user credentials to this URL. This plugin checks the "
+"response and will interpret the HTTP statuscodes 401 and 403 as invalid "
+"credentials, and all other responses as valid credentials."
+msgstr ""
diff --git a/l10n/bg_BG/files.po b/l10n/bg_BG/files.po
index 827d1e52d1f34a0449a20490dc12b4297d0cce63..449ff417fa107fe61ae9d0d82c5f80ef495c056c 100644
--- a/l10n/bg_BG/files.po
+++ b/l10n/bg_BG/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n"
 "MIME-Version: 1.0\n"
@@ -66,7 +66,7 @@ msgstr "Липсва временна папка"
 
 #: ajax/upload.php:34
 msgid "Failed to write to disk"
-msgstr ""
+msgstr "Възникна проблем при запис в диска"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
@@ -74,28 +74,28 @@ msgstr ""
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
-msgstr ""
+msgstr "Невалидна директория."
 
 #: appinfo/app.php:10
 msgid "Files"
 msgstr "Файлове"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Изтриване"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Преименуване"
 
 #: js/filelist.js:49 js/filelist.js:52 js/files.js:291 js/files.js:407
 #: js/files.js:438
 msgid "Pending"
-msgstr ""
+msgstr "Чакащо"
 
 #: js/filelist.js:253 js/filelist.js:255
 msgid "{new_name} already exists"
@@ -163,7 +163,7 @@ msgstr ""
 
 #: js/files.js:261
 msgid "Upload Error"
-msgstr ""
+msgstr "Възникна грешка при качването"
 
 #: js/files.js:272
 msgid "Close"
@@ -194,33 +194,33 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Име"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Размер"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Променено"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
-msgstr ""
+msgstr "1 папка"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
-msgstr ""
+msgstr "{count} папки"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
-msgstr ""
+msgstr "1 файл"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
-msgstr ""
+msgstr "{count} файла"
 
 #: lib/helper.php:11 templates/index.php:18
 msgid "Upload"
@@ -264,7 +264,7 @@ msgstr "Ново"
 
 #: templates/index.php:10
 msgid "Text file"
-msgstr ""
+msgstr "Текстов файл"
 
 #: templates/index.php:12
 msgid "Folder"
@@ -275,12 +275,12 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
 msgid "Cancel upload"
-msgstr ""
+msgstr "Спри качването"
 
 #: templates/index.php:59
 msgid "Nothing in here. Upload something!"
diff --git a/l10n/bg_BG/files_trashbin.po b/l10n/bg_BG/files_trashbin.po
index bd5ca7e1fe609d48bf091462efe58a55de96b176..f46acd62e56203ce67c1997a2e450a6db2b0c22d 100644
--- a/l10n/bg_BG/files_trashbin.po
+++ b/l10n/bg_BG/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Stefan Ilivanov <ilivanov@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 10:30+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 17:50+0000\n"
+"Last-Translator: Stefan Ilivanov <ilivanov@gmail.com>\n"
 "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Невъзможно изтриване на %s завинаги"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Невъзможно възтановяване на %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "извършване на действие по възтановяване"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "изтриване на файла завинаги"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,27 +42,27 @@ msgstr "Име"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Изтрито"
 
 #: js/trash.js:135
 msgid "1 folder"
-msgstr ""
+msgstr "1 папка"
 
 #: js/trash.js:137
 msgid "{count} folders"
-msgstr ""
+msgstr "{count} папки"
 
 #: js/trash.js:145
 msgid "1 file"
-msgstr ""
+msgstr "1 файл"
 
 #: js/trash.js:147
 msgid "{count} files"
-msgstr ""
+msgstr "{count} файла"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Няма нищо. Кофата е празна!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/bg_BG/lib.po b/l10n/bg_BG/lib.po
index 5ab2d04c53e211689d3af9eaf6f9342bd92a80ca..6ffc3d0f7eed36f123d618e53ed552f99bed52f3 100644
--- a/l10n/bg_BG/lib.po
+++ b/l10n/bg_BG/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 17:30+0000\n"
+"Last-Translator: Stefan Ilivanov <ilivanov@gmail.com>\n"
 "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,27 +18,27 @@ msgstr ""
 "Language: bg_BG\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Помощ"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Лични"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Настройки"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Потребители"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Приложения"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Админ"
 
@@ -50,15 +50,15 @@ msgstr "Изтеглянето като ZIP е изключено."
 msgid "Files need to be downloaded one by one."
 msgstr "Файловете трябва да се изтеглят един по един."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Назад към файловете"
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Избраните файлове са прекалено големи за генерирането на ZIP архив."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr "не може да се определи"
 
@@ -86,13 +86,99 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Снимки"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Въведете потребителско име за администратор."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Въведете парола за администратор."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Укажете папка за данни"
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s въведете потребителско име за базата с данни."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s въведете име на базата с данни."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
@@ -149,16 +235,16 @@ msgstr "последната година"
 msgid "years ago"
 msgstr "последните години"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s е налична. Получете <a href=\"%s\">повече информация</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "е актуална"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "проверката за обновления е изключена"
 
diff --git a/l10n/bg_BG/settings.po b/l10n/bg_BG/settings.po
index ee7d41ac66269f38cd64eea68197f28b0f7c7f07..c68881f51e6e4f7a923909d1a9b0ba97ca6eaf90 100644
--- a/l10n/bg_BG/settings.po
+++ b/l10n/bg_BG/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 10:40+0000\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 17:50+0000\n"
 "Last-Translator: Stefan Ilivanov <ilivanov@gmail.com>\n"
 "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n"
 "MIME-Version: 1.0\n"
@@ -24,22 +24,22 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Възникна проблем с идентификацията"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
-msgstr ""
+msgstr "Групата вече съществува"
 
 #: ajax/creategroup.php:19
 msgid "Unable to add group"
-msgstr ""
+msgstr "Невъзможно добавяне на група"
 
 #: ajax/enableapp.php:11
 msgid "Could not enable app. "
@@ -55,11 +55,11 @@ msgstr ""
 
 #: ajax/removegroup.php:13
 msgid "Unable to delete group"
-msgstr ""
+msgstr "Невъзможно изтриване на група"
 
 #: ajax/removeuser.php:24
 msgid "Unable to delete user"
-msgstr ""
+msgstr "Невъзможно изтриване на потребител"
 
 #: ajax/setlanguage.php:15
 msgid "Language changed"
@@ -93,7 +93,7 @@ msgstr ""
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
-msgstr ""
+msgstr "Изключено"
 
 #: js/apps.js:36 js/apps.js:64
 msgid "Enable"
@@ -101,11 +101,11 @@ msgstr "Включено"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Моля почакайте...."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Обновява се..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
@@ -117,23 +117,229 @@ msgstr "Грешка"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Обновено"
 
 #: js/personal.js:96
 msgid "Saving..."
+msgstr "Записване..."
+
+#: js/users.js:30
+msgid "deleted"
+msgstr "изтрито"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "възтановяване"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Групи"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Изтриване"
+
+#: js/users.js:191
+msgid "add group"
+msgstr ""
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:358
+msgid "A valid password must be provided"
 msgstr ""
 
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Още"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Версия"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Добавете Ваше приложение"
 
 #: templates/apps.php:11
 msgid "More Apps"
-msgstr ""
+msgstr "Още приложения"
 
 #: templates/apps.php:24
 msgid "Select an App"
@@ -153,142 +359,112 @@ msgstr "Обновяване"
 
 #: templates/help.php:3
 msgid "User Documentation"
-msgstr ""
+msgstr "Потребителска документация"
 
 #: templates/help.php:4
 msgid "Administrator Documentation"
-msgstr ""
+msgstr "Административна документация"
 
 #: templates/help.php:6
 msgid "Online Documentation"
-msgstr ""
+msgstr "Документация"
 
 #: templates/help.php:7
 msgid "Forum"
-msgstr ""
+msgstr "Форум"
 
 #: templates/help.php:9
 msgid "Bugtracker"
-msgstr ""
+msgstr "Докладвани грешки"
 
 #: templates/help.php:11
 msgid "Commercial Support"
-msgstr ""
+msgstr "Платена поддръжка"
 
 #: templates/personal.php:8
 #, php-format
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr ""
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Покажи настройките за първоначално зареждане отново"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Парола"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Промяната на паролата не беше извършена"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Текуща парола"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Нова парола"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "показва"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Промяна на паролата"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "Екранно име"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Вашия email адрес"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Език"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Помогнете с превода"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
-msgstr ""
+msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Групи"
+msgstr "Потребител"
 
 #: templates/users.php:32
 msgid "Create"
@@ -296,36 +472,28 @@ msgstr "Създаване"
 
 #: templates/users.php:35
 msgid "Default Storage"
-msgstr ""
+msgstr "Хранилище по подразбиране"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
-msgstr ""
+msgstr "Неограничено"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Други"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
-msgstr ""
+msgstr "Хранилище"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
-msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Изтриване"
+msgstr "По подразбиране"
diff --git a/l10n/bn_BD/core.po b/l10n/bn_BD/core.po
index 6b0d2ba2698c3ea5dd183bb23073d35ca2e303b2..924aa6894fe84bb545dfcb4d10018e7d24f6e132 100644
--- a/l10n/bn_BD/core.po
+++ b/l10n/bn_BD/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "নভেম্বর"
 msgid "December"
 msgstr "ডিসেম্বর"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "নিয়ামকসমূহ"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "সেকেন্ড পূর্বে"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 মিনিট পূর্বে"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} মিনিট পূর্বে"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 ঘন্টা পূর্বে"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} ঘন্টা পূর্বে"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "আজ"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "গতকাল"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} দিন পূর্বে"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "গতমাস"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} মাস পূর্বে"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "মাস পূর্বে"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "গত বছর"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "বছর পূর্বে"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr "অবজেক্টের ধরণটি সুনির্দিষ্ট নয়।"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "সমস্যা"
 
@@ -253,15 +253,15 @@ msgstr "অ্যাপের নামটি  সুনির্দিষ্ট
 msgid "The required file {file} is not installed!"
 msgstr "আবশ্যিক {file} টি সংস্থাপিত নেই !"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "ভাগাভাগি কর"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "ভাগাভাগিকৃত"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "ভাগাভাগি কর"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "ভাগাভাগি করতে সমস্যা দেখা দিয়েছে  "
 
@@ -357,23 +357,23 @@ msgstr "মুছে ফেল"
 msgid "share"
 msgstr "ভাগাভাগি কর"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "কূটশব্দদ্বারা সুরক্ষিত"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "মেয়াদোত্তীর্ণ হওয়ার তারিখ নির্ধারণ বাতিল করতে সমস্যা দেখা দিয়েছে"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "মেয়াদোত্তীর্ণ হওয়ার তারিখ নির্ধারণ করতে সমস্যা দেখা দিয়েছে"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "পাঠানো হচ্ছে......"
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "ই-মেইল পাঠানো হয়েছে"
 
diff --git a/l10n/bn_BD/files.po b/l10n/bn_BD/files.po
index 0cc1231047ba8268ff43f27e9b289733b51a946b..929307cb9cbbf1c1ac62fbc51c557e940d93d8d3 100644
--- a/l10n/bn_BD/files.po
+++ b/l10n/bn_BD/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr "ভুল ডিরেক্টরি"
 msgid "Files"
 msgstr "ফাইল"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "মুছে ফেল"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "পূনঃনামকরণ"
 
@@ -193,31 +193,31 @@ msgstr "URL ফাঁকা রাখা যাবে না।"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "ফোল্ডারের নামটি সঠিক নয়। 'ভাগাভাগি করা' শুধুমাত্র Owncloud  এর জন্য সংরক্ষিত।"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "নাম"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "আকার"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "পরিবর্তিত"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "১টি ফোল্ডার"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} টি ফোল্ডার"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "১টি ফাইল"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} টি ফাইল"
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr " লিংক থেকে"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/bn_BD/files_trashbin.po b/l10n/bn_BD/files_trashbin.po
index ff75311f2f1a8b6ecbd22611c0be7c68f9228e49..b2577e03d2d5d16f0bcc1ffdd4c6873697e559bb 100644
--- a/l10n/bn_BD/files_trashbin.po
+++ b/l10n/bn_BD/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/bn_BD/lib.po b/l10n/bn_BD/lib.po
index cfe719acd213327697fa5466f86ec16eb8256896..747a2e28198dd65e9d4f1490da35ca6db08d3a72 100644
--- a/l10n/bn_BD/lib.po
+++ b/l10n/bn_BD/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/bn_BD/settings.po b/l10n/bn_BD/settings.po
index 946bd8cd254de0034e29ce644d3b478677b636f7..a188eabb80bde10c8e32f9623037e412f3f18705 100644
--- a/l10n/bn_BD/settings.po
+++ b/l10n/bn_BD/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "অ্যাপস্টোর থেকে তালিকা লোড করতে সক্ষম নয়"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "অনুমোদন ঘটিত সমস্যা"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr " %s গোষ্ঠীতে ব্যবহারকারী যোগ
 msgid "Unable to remove user from group %s"
 msgstr "%s গোষ্ঠী থেকে ব্যবহারকারীকে অপসারণ করা সম্ভব হলো না"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "সংরক্ষণ করা হচ্ছে.."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "ক্রিয়া প্রত্যাহার"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "গোষ্ঠীসমূহ"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "গোষ্ঠী প্রশাসক"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "মুছে ফেল"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "নিরাপত্তাজনিত সতর্কতা"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "বেশী"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "ভার্সন"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "তৈলী করেছেন <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud সম্প্রদায়</a>, যার <a href=\"https://github.com/owncloud\" target=\"_blank\"> উৎস কোডটি <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> এর অধীনে লাইসেন্সকৃত।"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "আপনার অ্যাপটি যোগ করুন"
@@ -178,116 +384,86 @@ msgstr "বাণিজ্যিক সাপোর্ট"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "আপনি ব্যবহার করছেন  <strong>%s</strong>, সুলভ  <strong>%s</strong> এর মধ্যে।"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "ক্লায়েন্ট"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "ডেস্কটপ ক্লায়েন্ট  ডাউনলোড করুন"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "অ্যান্ড্রয়েড ক্লায়েন্ট ডাউনলোড করুন"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS ক্লায়েন্ট ডাউনলোড করুন"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "প্রথমবার চালানোর যাদুকর পূনরায় প্রদর্শন কর"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "কূটশব্দ"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "আপনার কূটশব্দটি পরিবর্তন করা হয়েছে "
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "আপনার কূটশব্দটি পরিবর্তন করতে সক্ষম নয়"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "বর্তমান কূটশব্দ"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "নতুন কূটশব্দ"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "প্রদর্শন"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "কূটশব্দ পরিবর্তন করুন"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "ই-মেইল "
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "আপনার ই-মেইল ঠিকানা"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "কূটশব্দ পূনরূদ্ধার সক্রিয় করার জন্য ই-মেইল ঠিকানাটি পূরণ করুন"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "ভাষা"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "অনুবাদ করতে সহায়তা করুন"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "আপনার ownCloud এ সংযুক্ত হতে এই ঠিকানাটি আপনার ফাইল ব্যবস্থাপকে ব্যবহার করুন"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "ভার্সন"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "তৈলী করেছেন <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud সম্প্রদায়</a>, যার <a href=\"https://github.com/owncloud\" target=\"_blank\"> উৎস কোডটি <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> এর অধীনে লাইসেন্সকৃত।"
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "গোষ্ঠীসমূহ"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "তৈরী কর"
@@ -296,34 +472,26 @@ msgstr "তৈরী কর"
 msgid "Default Storage"
 msgstr "পূর্বনির্ধারিত সংরক্ষণাগার"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "অসীম"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "অন্যান্য"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "গোষ্ঠী প্রশাসক"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "সংরক্ষণাগার"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "পূর্বনির্ধারিত"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "মুছে ফেল"
diff --git a/l10n/ca/core.po b/l10n/ca/core.po
index bdfbedf5a509c983d660a6d6feebf8ae736ca65b..54541ac94e7ee2beaaeae27a0cd0d4b1f10746da 100644
--- a/l10n/ca/core.po
+++ b/l10n/ca/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 10:20+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
 "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n"
 "MIME-Version: 1.0\n"
@@ -163,55 +163,55 @@ msgstr "Desembre"
 msgid "Settings"
 msgstr "Arranjament"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segons enrere"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "fa 1 minut"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "fa {minutes} minuts"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "fa 1 hora"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "fa {hours} hores"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "avui"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ahir"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "fa {days} dies"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "el mes passat"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "fa {months} mesos"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "mesos enrere"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "l'any passat"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "anys enrere"
 
@@ -254,14 +254,14 @@ msgstr "No s'ha especificat el nom de l'aplicació."
 msgid "The required file {file} is not installed!"
 msgstr "El fitxer requerit {file} no està instal·lat!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Comparteix"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Compartit"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Comparteix"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Error en compartir"
diff --git a/l10n/ca/files.po b/l10n/ca/files.po
index 8cb4b510b4849b37ded90261d74b8ba6b9cf9abd..722be0b3c8fb351216063dd679e80686ae515d5c 100644
--- a/l10n/ca/files.po
+++ b/l10n/ca/files.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n"
 "MIME-Version: 1.0\n"
@@ -85,15 +85,15 @@ msgstr "Directori no vàlid."
 msgid "Files"
 msgstr "Fitxers"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Esborra permanentment"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Suprimeix"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Reanomena"
 
@@ -199,31 +199,31 @@ msgstr "La URL no pot ser buida"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nom de carpeta no vàlid. L'ús de 'Shared' està reservat per Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nom"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Mida"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificat"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 carpeta"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} carpetes"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fitxer"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} fitxers"
 
@@ -280,7 +280,7 @@ msgid "From link"
 msgstr "Des d'enllaç"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ca/files_trashbin.po b/l10n/ca/files_trashbin.po
index 4c5e094e6d50e3ecd65dfb77a99981ff0858aa71..7f76de9cd683f56a19948800dfa4956ce5aae566 100644
--- a/l10n/ca/files_trashbin.po
+++ b/l10n/ca/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 15:22+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
 "Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
 "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ca/lib.po b/l10n/ca/lib.po
index 72c78298336a1313f427d955bad091bbd3e5c326..1a8fcdda43d203fef7f3de2453726d93be450437 100644
--- a/l10n/ca/lib.po
+++ b/l10n/ca/lib.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <rcalvoi@yahoo.com>, 2013.
 #   <rcalvoi@yahoo.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
 "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -86,16 +87,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Imatges"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Establiu un nom d'usuari per l'administrador."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Establiu una contrasenya per l'administrador."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Especifiqueu una carpeta de dades."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s escriviu el nom d'usuari de la base de dades."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s escriviu el nom de la base de dades."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s no podeu usar punts en el nom de la base de dades"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s establiu l'ordinador central de la base de dades."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nom d'usuari i/o contrasenya PostgreSQL no vàlids"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Heu d'escriure un compte existent o el d'administrador."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Nom d'usuari i/o contrasenya Oracle no vàlids"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Nom d'usuari i/o contrasenya MySQL no vàlids"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Error DB: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "L'ordre en conflicte és: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "L'usuari MySQL '%s'@'localhost' ja existeix."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Elimina aquest usuari de MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "L'usuari MySQL '%s'@'%%' ja existeix"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Elimina aquest usuari de MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "L'ordre en conflicte és: \"%s\", nom: %s, contrasenya: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "El servidor web no està configurat correctament per permetre la sincronització de fitxers perquè la interfície WebDAV sembla no funcionar correctament."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Comproveu les <a href='%s'>guies d'instal·lació</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/ca/settings.po b/l10n/ca/settings.po
index 3234dabdadfac03f9482ab73a35d0d45a339fad4..2ea7c2f7f042b84303468ebfd3c345429f6700d3 100644
--- a/l10n/ca/settings.po
+++ b/l10n/ca/settings.po
@@ -13,9 +13,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 15:20+0000\n"
-"Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -27,12 +27,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "No s'ha pogut carregar la llista des de l'App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Error d'autenticació"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "No s'ha pogut canviar el nom a mostrar"
 
@@ -86,7 +86,7 @@ msgstr "No es pot afegir l'usuari al grup %s"
 msgid "Unable to remove user from group %s"
 msgstr "No es pot eliminar l'usuari del grup %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "No s'ha pogut actualitzar l'aplicació."
 
@@ -126,10 +126,216 @@ msgstr "Actualitzada"
 msgid "Saving..."
 msgstr "S'està desant..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "esborrat"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "desfés"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "No s'ha pogut eliminar l'usuari"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grups"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grup Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Suprimeix"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "afegeix grup"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Heu de facilitar un nom d'usuari vàlid"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Error en crear l'usuari"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Heu de facilitar una contrasenya vàlida"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Català"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Avís de seguretat"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "La carpeta de dades i els fitxers provablement són accessibles des d'internet. El fitxer .htaccess que proporciona ownCloud no funciona. Us recomanem que configureu el vostre servidor web de manera que la carpeta de dades no sigui accessible o que moveu la carpeta de dades fora de la carpeta arrel del servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Avís de configuració"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "El servidor web no està configurat correctament per permetre la sincronització de fitxers perquè la interfície WebDAV sembla no funcionar correctament."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Comproveu les <a href='%s'>guies d'instal·lació</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "No s'ha trobat el mòdul 'fileinfo'"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "El mòdul de PHP 'fileinfo' no s'ha trobat. Us recomanem que habiliteu aquest mòdul per obtenir millors resultats amb la detecció mime-type."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Locale no funciona"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Aquest servidor ownCloud no pot establir el locale del sistema a \"en_US.UTF-8\"/\"en_US.UTF8\". Això significa que hi poden haver problemes amb alguns caràcters en el nom dels fitxers. Us recomanem instal·lar els paquets necessaris añ sistema per donar suport en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "La connexió a internet no funciona"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Aquest servidor ownCloud no té cap connexió a internet que funcioni. Això significa que algunes de les característiques com el muntatge d'emmagatzemament externs, les notificacions quant a actualitzacions o la instal·lació d'aplicacions de tercers no funcionarà. L'accés remot a fitxers i l'enviament de correus electrònics podria tampoc no funcionar. Us suggerim que habiliteu la connexió a internet per aquest servidor si voleu gaudir de totes les possibilitats d'ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Executa una tasca per cada paquet carregat"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php està registrat en un servei webcron. Feu la crida a cron.php a l'arrel d'ownCloud cada minut a través de http."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Usa un servei cron del sistema. Feu la crida al fitxer cron.php a través d'un cronjob del sistema cada minut."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Compartir"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Habilita l'API de compartir"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Permet que les aplicacions utilitzin l'API de compartir"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Permet enllaços"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Permet als usuaris compartir elements amb el públic amb enllaços"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Permet compartir de nou"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Permet als usuaris compartir de nou elements ja compartits amb ells"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Permet compartir amb qualsevol"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Permet als usuaris compartir només amb els usuaris del seu grup"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Seguretat"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Força HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Força als clients la connexió amb ownCloud via una connexió encriptada."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Connecteu aquesta instància onwCloud via HTTPS per habilitar o deshabilitar el forçament SSL."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Registre"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Nivell de registre"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Més"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versió"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitat ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">codi font</a> té llicència <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Afegiu la vostra aplicació"
@@ -183,116 +389,86 @@ msgstr "Suport comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Heu utilitzat <strong>%s</strong> d'un total disponible de <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clients"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Baixa clients d'escriptori"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr " Baixa el client per Android"
+msgid "Get the apps to sync your files"
+msgstr "Obtén les aplicacions per sincronitzar fitxers"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Baixa el client per iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Torna a mostrar l'assistent de primera execució"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Contrasenya"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "La seva contrasenya s'ha canviat"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "No s'ha pogut canviar la contrasenya"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Contrasenya actual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Contrasenya nova"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostra"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Canvia la contrasenya"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nom a mostrar"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "El vostre nom a mostrar ha canviat"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "No s'ha pogut canviar el vostre nom a mostrar"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Canvia el nom a mostrar"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Correu electrònic"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Correu electrònic"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Ompliu el correu electrònic per activar la recuperació de contrasenya"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ajudeu-nos amb la traducció"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Useu aquesta adreça per connectar amb ownCloud des del gestor de fitxers"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versió"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitat ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">codi font</a> té llicència <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nom d'accés"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grups"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crea"
@@ -301,34 +477,26 @@ msgstr "Crea"
 msgid "Default Storage"
 msgstr "Emmagatzemament per defecte"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Il·limitat"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Un altre"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grup Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Emmagatzemament"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "canvia el nom a mostrar"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "estableix nova contrasenya"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Per defecte"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Suprimeix"
diff --git a/l10n/cs_CZ/core.po b/l10n/cs_CZ/core.po
index 87c6869293e5fdcc12fab78385c155775b4fcaa7..a4e90321e7603584f0f8a889ad34308fbc3f11f7 100644
--- a/l10n/cs_CZ/core.po
+++ b/l10n/cs_CZ/core.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 13:30+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n"
 "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n"
 "MIME-Version: 1.0\n"
@@ -164,55 +164,55 @@ msgstr "Prosinec"
 msgid "Settings"
 msgstr "Nastavení"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "před pár vteřinami"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "před minutou"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "před {minutes} minutami"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "před hodinou"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "před {hours} hodinami"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "dnes"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "včera"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "před {days} dny"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "minulý mesíc"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "před {months} měsíci"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "před měsíci"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "minulý rok"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "před lety"
 
@@ -255,14 +255,14 @@ msgstr "Není určen název aplikace."
 msgid "The required file {file} is not installed!"
 msgstr "Požadovaný soubor {file} není nainstalován."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Sdílet"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Sdílené"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Sdílet"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Chyba při sdílení"
diff --git a/l10n/cs_CZ/files.po b/l10n/cs_CZ/files.po
index 05a14c91215877735a32b9abc42eb1198c20f97c..3a948f28f9e2323aa6e7f5c33eb897a9eb1a9e34 100644
--- a/l10n/cs_CZ/files.po
+++ b/l10n/cs_CZ/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr "Neplatný adresář"
 msgid "Files"
 msgstr "Soubory"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Trvale odstranit"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Smazat"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Přejmenovat"
 
@@ -195,31 +195,31 @@ msgstr "URL nemůže být prázdná"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Neplatný název složky. Použití 'Shared' je rezervováno pro vnitřní potřeby Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Název"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Velikost"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Změněno"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 složka"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} složky"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 soubor"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} soubory"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "Z odkazu"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/cs_CZ/files_trashbin.po b/l10n/cs_CZ/files_trashbin.po
index 5055b3473391f614b04ce4415e81dcee51ad9ca3..2052a1399300a8e7b44663a746f68c49b1b1e4ae 100644
--- a/l10n/cs_CZ/files_trashbin.po
+++ b/l10n/cs_CZ/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 06:40+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n"
 "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/cs_CZ/lib.po b/l10n/cs_CZ/lib.po
index d64f30979fcc9ed217f8584200f7ea3bcc6de4b8..0fac894638000fdc6e272d70ccebd7f2fae6cd04 100644
--- a/l10n/cs_CZ/lib.po
+++ b/l10n/cs_CZ/lib.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n"
 "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -87,16 +87,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Obrázky"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Zadejte uživatelské jméno správce."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Zadejte heslo správce."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Určete složku dat."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "Zadejte uživatelské jméno %s databáze."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "Zadejte název databáze pro %s databáze."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "V názvu databáze %s nesmíte používat tečky."
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "Zadejte název počítače s databází %s."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Uživatelské jméno, či heslo PostgreSQL není platné"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Musíte zadat existující účet, či správce."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Uživatelské jméno, či heslo Oracle není platné"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Uživatelské jméno, či heslo MySQL není platné"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Chyba DB: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Podezřelý příkaz byl: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "Uživatel '%s'@'localhost' již v MySQL existuje."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Zahodit uživatele z MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "Uživatel '%s'@'%%' již v MySQL existuje"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Zahodit uživatele z MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Podezřelý příkaz byl: \"%s\", jméno: %s, heslo: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Váš webový server není správně nastaven pro umožnění synchronizace, protože rozhraní WebDAV je rozbité."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Zkonzultujte, prosím, <a href='%s'>průvodce instalací</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/cs_CZ/settings.po b/l10n/cs_CZ/settings.po
index edfcef8add0158ff69a6993554d2b79df3a9c7eb..53e522dab199d406b39b360be849c217104156e2 100644
--- a/l10n/cs_CZ/settings.po
+++ b/l10n/cs_CZ/settings.po
@@ -13,9 +13,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 12:41+0000\n"
-"Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -27,12 +27,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nelze načíst seznam z App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Chyba ověření"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Nelze změnit zobrazované jméno"
 
@@ -86,7 +86,7 @@ msgstr "Nelze přidat uživatele do skupiny %s"
 msgid "Unable to remove user from group %s"
 msgstr "Nelze odstranit uživatele ze skupiny %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Nelze aktualizovat aplikaci."
 
@@ -126,10 +126,216 @@ msgstr "Aktualizováno"
 msgid "Saving..."
 msgstr "Ukládám..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "smazáno"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "zpět"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Nelze odebrat uživatele"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Skupiny"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Správa skupiny"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Smazat"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "přidat skupinu"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Musíte zadat platné uživatelské jméno"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Chyba při vytváření užiatele"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Musíte zadat platné heslo"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Česky"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Bezpečnostní upozornění"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Váš adresář dat a všechny Vaše soubory jsou pravděpodobně přístupné z internetu. Soubor .htaccess, který je poskytován ownCloud, nefunguje. Důrazně Vám doporučujeme nastavit váš webový server tak, aby nebyl adresář dat přístupný, nebo přesunout adresář dat mimo kořenovou složku dokumentů webového serveru."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Upozornění nastavení"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Váš webový server není správně nastaven pro umožnění synchronizace, protože rozhraní WebDAV je rozbité."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Zkonzultujte, prosím, <a href='%s'>průvodce instalací</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Schází modul 'fileinfo'"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Schází modul PHP 'fileinfo'. Doporučujeme jej povolit pro nejlepší výsledky detekce typů MIME."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Locale nefunguje"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Server ownCloud nemůže nastavit systémové locale na \"en_US.UTF-8\"/\"en_US.UTF8\".  Můžete tedy mít problémy s některými znaky v názvech souborů. Důrazně doporučujeme nainstalovat potřebné balíčky pro podporu en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Spojení s internetem nefujguje"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Server ownCloud nemá funkční spojení s internetem. Některé moduly jako externí úložiště, oznámení o dostupných aktualizacích, nebo instalace aplikací třetích stran nefungují. Přístup k souborům z jiných míst a odesílání oznamovacích e-mailů také nemusí fungovat. Pokud si přejete využívat všech vlastností ownCloud, doporučujeme povolit internetové spojení pro tento server."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Spustit jednu úlohu s každou načtenou stránkou"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php je registrován u služby webcron. Zavolá stránku cron.php v kořenovém adresáři owncloud každou minutu skrze http."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Použít systémovou službu cron. Zavolat soubor cron.php ze složky owncloud pomocí systémové úlohy cron každou minutu."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Sdílení"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Povolit API sdílení"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Povolit aplikacím používat API sdílení"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Povolit odkazy"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Povolit uživatelům sdílet položky s veřejností pomocí odkazů"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Povolit znovu-sdílení"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Povolit uživatelům znovu sdílet položky, které jsou pro ně sdíleny"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Povolit uživatelům sdílet s kýmkoliv"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Povolit uživatelům sdílet pouze s uživateli v jejich skupinách"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Zabezpečení"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Vynutit HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Vynutí připojování klientů ownCloud skrze šifrované spojení."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Připojte se, prosím, k této instanci ownCloud skrze HTTPS pro povolení, nebo zakažte vynucení SSL."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Záznam"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Úroveň záznamu"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Více"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Verze"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencován pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Přidat Vaší aplikaci"
@@ -183,116 +389,86 @@ msgstr "Placená podpora"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Používáte <strong>%s</strong> z <strong>%s</strong> dostupných"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienti"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Stáhnout klienty pro počítač"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Stáhnout klienta pro android"
+msgid "Get the apps to sync your files"
+msgstr "Získat aplikace pro synchronizaci vašich souborů"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Stáhnout klienta pro iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Znovu zobrazit průvodce prvním spuštěním"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Heslo"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Vaše heslo bylo změněno"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Vaše heslo nelze změnit"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Současné heslo"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nové heslo"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "zobrazit"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Změnit heslo"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Zobrazované jméno"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Vaše zobrazované jméno bylo změněno"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Nelze změnit vaše zobrazované jméno"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Změnit zobrazované jméno"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Vaše e-mailová adresa"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Pro povolení změny hesla vyplňte adresu e-mailu"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Jazyk"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Pomoci s překladem"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Použijte tuto adresu pro připojení k vašemu ownCloud skrze správce souborů"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Verze"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencován pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Přihlašovací jméno"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Skupiny"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Vytvořit"
@@ -301,34 +477,26 @@ msgstr "Vytvořit"
 msgid "Default Storage"
 msgstr "Výchozí úložiště"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Neomezeně"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Jiná"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Správa skupiny"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Úložiště"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "změnit zobrazované jméno"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "nastavit nové heslo"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Výchozí"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Smazat"
diff --git a/l10n/da/core.po b/l10n/da/core.po
index 7ac480d339f9fc3059dec07f63dc1e300beec017..47ae7bf3dd1dd4829c6af2df95f4eee47da36a64 100644
--- a/l10n/da/core.po
+++ b/l10n/da/core.po
@@ -4,6 +4,7 @@
 # 
 # Translators:
 #   <cronner@gmail.com>, 2012.
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 #   <mikkelbjerglarsen@gmail.com>, 2011, 2012.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011-2013.
 # Ole Holm Frandsen <froksen@gmail.com>, 2012.
@@ -16,9 +17,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Frederik Lassen <frederiklassen@gmail.com>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -61,7 +62,7 @@ msgstr "Ingen kategori at tilføje?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Kategorien eksisterer allerede: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -165,59 +166,59 @@ msgstr "November"
 msgid "December"
 msgstr "December"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Indstillinger"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekunder siden"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minut siden"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minutter siden"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 time siden"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} timer siden"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "i dag"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "i går"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dage siden"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "sidste måned"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} måneder siden"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "måneder siden"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "sidste år"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "år siden"
 
@@ -247,8 +248,8 @@ msgid "The object type is not specified."
 msgstr "Objekttypen er ikke angivet."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fejl"
 
@@ -260,15 +261,15 @@ msgstr "Den app navn er ikke angivet."
 msgid "The required file {file} is not installed!"
 msgstr "Den krævede fil {file} er ikke installeret!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
+msgid "Shared"
+msgstr "Delt"
+
+#: js/share.js:93
 msgid "Share"
 msgstr "Del"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Shared"
-msgstr ""
-
-#: js/share.js:141 js/share.js:611
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Fejl under deling"
 
@@ -364,23 +365,23 @@ msgstr "slet"
 msgid "share"
 msgstr "del"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Beskyttet med adgangskode"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Fejl ved fjernelse af udløbsdato"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Fejl under sætning af udløbsdato"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sender ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-mail afsendt"
 
@@ -496,14 +497,14 @@ msgstr "Uden en sikker tilfældighedsgenerator til tal kan en angriber måske g
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Dine data mappe og filer er sandsynligvis tilgængelige fra internettet fordi .htaccess filen ikke virker."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "For at vide mere om hvordan du konfigurerer din server ordentligt, se venligst <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentationen</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -586,7 +587,7 @@ msgstr "Log ind"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Alternative logins"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/da/files.po b/l10n/da/files.po
index dfe1828390c7e02a6c671d4b0d058d3664608adb..963b1c455782c1303ad585eb38252759369e970a 100644
--- a/l10n/da/files.po
+++ b/l10n/da/files.po
@@ -4,6 +4,7 @@
 # 
 # Translators:
 #   <cronner@gmail.com>, 2012.
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011-2013.
 # Ole Holm Frandsen <froksen@gmail.com>, 2012.
 #   <osos@openeyes.dk>, 2012.
@@ -15,8 +16,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
@@ -86,15 +87,15 @@ msgstr "Ugyldig mappe."
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Slet permanent"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Slet"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Omdøb"
 
@@ -133,7 +134,7 @@ msgstr "erstattede {new_name} med {old_name}"
 
 #: js/filelist.js:322
 msgid "perform delete operation"
-msgstr ""
+msgstr "udfør slet operation"
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
@@ -200,31 +201,31 @@ msgstr "URLen kan ikke være tom."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Ugyldigt mappenavn. Brug af \"Shared\" er forbeholdt Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Navn"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Størrelse"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Ændret"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mappe"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mapper"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fil"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} filer"
 
@@ -281,7 +282,7 @@ msgid "From link"
 msgstr "Fra link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
@@ -320,4 +321,4 @@ msgstr "Indlæser"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
-msgstr ""
+msgstr "Opgraderer filsystems cachen..."
diff --git a/l10n/da/files_encryption.po b/l10n/da/files_encryption.po
index 10625b4397d190a3da3ab0a98814131850a7537f..416d8486d5ca123c5477df62a6004c40e50f085b 100644
--- a/l10n/da/files_encryption.po
+++ b/l10n/da/files_encryption.po
@@ -3,15 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2013.
 #   <osos@openeyes.dk>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: Frederik Lassen <frederiklassen@gmail.com>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +26,15 @@ msgstr "Kryptering"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Fil kryptering aktiveret."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "De følgende filtyper vil ikke blive krypteret:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Ekskluder de følgende fil typer fra kryptering:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/da/files_trashbin.po b/l10n/da/files_trashbin.po
index 107b90ea909d9cce3bfad0c362b05ccfa53aa4e6..4e37f67f5b40cd0bf6f9c468203545b156e858a3 100644
--- a/l10n/da/files_trashbin.po
+++ b/l10n/da/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: Frederik Lassen <frederiklassen@gmail.com>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Kunne ikke slette %s permanent"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Kunne ikke gendanne %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "udfør gendannelsesoperation"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "slet fil permanent"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Navn"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Slettet"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,7 +62,7 @@ msgstr "{count} filer"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Intet at se her. Din papirkurv er tom!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/da/files_versions.po b/l10n/da/files_versions.po
index 6ae8e6b45e657b50c7237252f99fa985f9a318e6..d0be28135be2ab8df458d3c976ab877525a6de8a 100644
--- a/l10n/da/files_versions.po
+++ b/l10n/da/files_versions.po
@@ -3,15 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2012.
 #   <osos@openeyes.dk>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: Frederik Lassen <frederiklassen@gmail.com>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,33 +23,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Kunne ikke genskabe: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "success"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Filen %s blev genskabt til version: %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "fejl"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Filen %s blev genskabt til version: %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Ingen gamle version tilgængelige"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Ingen sti specificeret"
 
 #: js/versions.js:16
 msgid "History"
@@ -56,7 +57,7 @@ msgstr "Historik"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Genskab en fil til en tidligere version ved at klikke på denne genskab knap."
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/da/lib.po b/l10n/da/lib.po
index 48865c2368e4a634d31ac532e3c2b9835e1c313d..c998c978f42c7506df89c17e5541bc2f63e7f750 100644
--- a/l10n/da/lib.po
+++ b/l10n/da/lib.po
@@ -4,15 +4,16 @@
 # 
 # Translators:
 #   <cronner@gmail.com>, 2012.
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2012-2013.
 #   <osos@openeyes.dk>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Frederik Lassen <frederiklassen@gmail.com>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -88,16 +89,102 @@ msgstr "SMS"
 msgid "Images"
 msgstr "Billeder"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Angiv et admin brugernavn."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Angiv et admin kodeord."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Specificer en data mappe."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s indtast database brugernavnet."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s indtast database navnet."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s du må ikke bruge punktummer i databasenavnet."
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s sæt database værten."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL brugernavn og/eller kodeord er ikke gyldigt."
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Du bliver nødt til at indtaste en eksisterende bruger eller en administrator."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Oracle brugernavn og/eller kodeord er ikke gyldigt."
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL brugernavn og/eller kodeord er ikke gyldigt."
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Databasefejl: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Fejlende kommando var: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL brugeren '%s'@'localhost' eksisterer allerede."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Slet denne bruger fra MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL brugeren '%s'@'%%' eksisterer allerede."
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Slet denne bruger fra MySQL"
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Fejlende kommando var: \"%s\", navn: %s, password: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Din webserver er endnu ikke sat op til at tillade fil synkronisering fordi WebDAV grænsefladen virker ødelagt."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Dobbelttjek venligst <a href='%s'>installations vejledningerne</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/da/settings.po b/l10n/da/settings.po
index b2be1f63796a8e7ff3724338fe1db6fa0d2a7e73..a5284005df88c105aecab5e448985ca69fc81bf4 100644
--- a/l10n/da/settings.po
+++ b/l10n/da/settings.po
@@ -4,6 +4,7 @@
 # 
 # Translators:
 #   <cronner@gmail.com>, 2012.
+# Frederik Lassen <frederiklassen@gmail.com>, 2013.
 #   <icewind1991@gmail.com>, 2012.
 #   <mikkelbjerglarsen@gmail.com>, 2011.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011-2012.
@@ -17,8 +18,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
@@ -31,14 +32,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Kunne ikke indlæse listen fra App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Adgangsfejl"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Kunne ikke skifte skærmnavn"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -90,13 +91,13 @@ msgstr "Brugeren kan ikke tilføjes til gruppen %s"
 msgid "Unable to remove user from group %s"
 msgstr "Brugeren kan ikke fjernes fra gruppen %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Kunne ikke opdatere app'en."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Opdatér til {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -108,15 +109,15 @@ msgstr "Aktiver"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Vent venligst..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Opdaterer...."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Der opstod en fejl under app opgraderingen"
 
 #: js/apps.js:87
 msgid "Error"
@@ -124,16 +125,222 @@ msgstr "Fejl"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Opdateret"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Gemmer..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "Slettet"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "fortryd"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupper"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppe Administrator"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Slet"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Dansk"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sikkerhedsadvarsel"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Din data mappe og dine filer er muligvis tilgængelige fra internettet. .htaccess filen som ownCloud leverer virker ikke. Vi anbefaler på det kraftigste at du konfigurerer din webserver på en måske så data mappen ikke  længere er tilgængelig eller at du flytter data mappen uden for webserverens dokument rod.  "
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Din webserver er endnu ikke sat op til at tillade fil synkronisering fordi WebDAV grænsefladen virker ødelagt."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Dobbelttjek venligst <a href='%s'>installations vejledningerne</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mere"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Udviklet af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownClouds community</a>, og <a href=\"https://github.com/owncloud\" target=\"_blank\">kildekoden</a> er underlagt licensen <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Tilføj din App"
@@ -187,115 +394,85 @@ msgstr "Kommerciel support"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Du har brugt <strong>%s</strong> af den tilgængelige <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienter"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Hent Desktop Klienter"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Hent Android Klient"
+msgid "Get the apps to sync your files"
+msgstr "Hent applikationerne for at synkronisere dine filer"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Hent iOS Klient"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Vis Første Kørsel Guiden igen"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Kodeord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Din adgangskode blev ændret"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Ude af stand til at ændre dit kodeord"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Nuværende adgangskode"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Ny adgangskode"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "vis"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Skift kodeord"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "Skærmnavn"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Dit skærmnavn blev ændret"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Kunne ikke skifte dit skærmnavn"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Skift skærmnavn"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Din emailadresse"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Indtast en emailadresse for at kunne få påmindelse om adgangskode"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Sprog"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hjælp med oversættelsen"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Brug denne adresse til at oprette forbindelse til din ownCloud i din filstyring"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Udviklet af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownClouds community</a>, og <a href=\"https://github.com/owncloud\" target=\"_blank\">kildekoden</a> er underlagt licensen <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupper"
+msgstr "Loginnavn"
 
 #: templates/users.php:32
 msgid "Create"
@@ -305,34 +482,26 @@ msgstr "Ny"
 msgid "Default Storage"
 msgstr "Standard opbevaring"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ubegrænset"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Andet"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppe Administrator"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Opbevaring"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "skift skærmnavn"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "skift kodeord"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Standard"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Slet"
diff --git a/l10n/de/core.po b/l10n/de/core.po
index eb62f53acad055d39a6ed2a3edf400715d9cf100..7c7862c863a9c1c276da4c06bf02ceeb8096b553 100644
--- a/l10n/de/core.po
+++ b/l10n/de/core.po
@@ -23,9 +23,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 21:40+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -68,7 +68,7 @@ msgstr "Keine Kategorie hinzuzufügen?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Die Kategorie '%s' existiert bereits."
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -172,59 +172,59 @@ msgstr "November"
 msgid "December"
 msgstr "Dezember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "Gerade eben"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "vor einer Minute"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "Vor {minutes} Minuten"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Vor einer Stunde"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Vor {hours} Stunden"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "Heute"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "Gestern"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "Vor {days} Tag(en)"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "Letzten Monat"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Vor {months} Monaten"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "Vor Monaten"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "Letztes Jahr"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "Vor Jahren"
 
@@ -254,8 +254,8 @@ msgid "The object type is not specified."
 msgstr "Der Objekttyp ist nicht angegeben."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fehler"
 
@@ -267,15 +267,15 @@ msgstr "Der App-Name ist nicht angegeben."
 msgid "The required file {file} is not installed!"
 msgstr "Die benötigte Datei {file} ist nicht installiert."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Freigeben"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Freigegeben"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Freigeben"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Fehler beim Freigeben"
 
@@ -371,23 +371,23 @@ msgstr "löschen"
 msgid "share"
 msgstr "freigeben"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Durch ein Passwort geschützt"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Fehler beim entfernen des Ablaufdatums"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Fehler beim Setzen des Ablaufdatums"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sende ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-Mail wurde verschickt"
 
@@ -503,14 +503,14 @@ msgstr "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage di
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Bitte lesen Sie die <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">Dokumentation</a> für Informationen, wie Sie Ihren Server konfigurieren."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -593,7 +593,7 @@ msgstr "Einloggen"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Alternative Logins"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/de/files.po b/l10n/de/files.po
index bf70be47a703372fe318e5dc3f905207e8d45080..0d7576ef626b96daea2cfa2af42da690eda60a94 100644
--- a/l10n/de/files.po
+++ b/l10n/de/files.po
@@ -28,8 +28,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
@@ -99,15 +99,15 @@ msgstr "Ungültiges Verzeichnis."
 msgid "Files"
 msgstr "Dateien"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Permanent löschen"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Löschen"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Umbenennen"
 
@@ -213,31 +213,31 @@ msgstr "Die URL darf nicht leer sein."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Name"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Größe"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Bearbeitet"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 Ordner"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} Ordner"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 Datei"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} Dateien"
 
@@ -294,7 +294,7 @@ msgid "From link"
 msgstr "Von einem Link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/de/files_encryption.po b/l10n/de/files_encryption.po
index 075f5b773496f218505ce21cea0222b348b51ddd..7c707e5f8987bad8f372be5854fe519048750c17 100644
--- a/l10n/de/files_encryption.po
+++ b/l10n/de/files_encryption.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:10+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +25,15 @@ msgstr "Verschlüsselung"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Dateiverschlüsselung ist aktiviert"
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Die folgenden Dateitypen werden nicht verschlüsselt:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Schließe die folgenden Dateitypen von der Verschlüsselung aus:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/de/files_trashbin.po b/l10n/de/files_trashbin.po
index b9692802ff3e76f7e23febf018090115c35d46f0..177c56d3b8fb6d3f392536d3bbc4fbd4ec95fe3c 100644
--- a/l10n/de/files_trashbin.po
+++ b/l10n/de/files_trashbin.po
@@ -4,14 +4,15 @@
 # 
 # Translators:
 # I Robot <owncloud-bot@tmit.eu>, 2013.
+# Marcel Kühlhorn <susefan93@gmx.de>, 2013.
 #  <wachhund@wachhund.to>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 21:50+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,12 +23,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Konnte %s nicht permanent löschen"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Konnte %s nicht wiederherstellen"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
@@ -35,7 +36,7 @@ msgstr "Wiederherstellung ausführen"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "Datei permanent löschen"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
diff --git a/l10n/de/files_versions.po b/l10n/de/files_versions.po
index e969e096065dcc47208235c4b4245d44861adb44..5926d03cb4e62deb0918660369b6e025aedd96a4 100644
--- a/l10n/de/files_versions.po
+++ b/l10n/de/files_versions.po
@@ -6,15 +6,16 @@
 #   <blobbyjj@ymail.com>, 2012.
 # I Robot <thomas.mueller@tmit.eu>, 2012.
 #   <mail@felixmoeller.de>, 2012.
+# Marcel Kühlhorn <susefan93@gmx.de>, 2013.
 #   <niko@nik-o-mat.de>, 2012.
 #   <thomas.mueller@tmit.eu>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:10+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,33 +26,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Konnte %s nicht zurücksetzen"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "Erfolgreich"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Datei %s wurde auf Version %s zurückgesetzt"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "Fehlgeschlagen"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Datei %s konnte nicht auf Version %s zurückgesetzt werden"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Keine älteren Versionen verfügbar"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Kein Pfad angegeben"
 
 #: js/versions.js:16
 msgid "History"
@@ -59,7 +60,7 @@ msgstr "Historie"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Setzen Sie eine Datei durch klicken auf den Zurücksetzen Button zurück"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/de/lib.po b/l10n/de/lib.po
index be6328b4e49d7767f06b18e05d35ec687c9a0012..c13aaaa349879c8b07d4b3714a3fc337a342b8c3 100644
--- a/l10n/de/lib.po
+++ b/l10n/de/lib.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 20:50+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -92,16 +92,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Bilder"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Setze Administrator Benutzername."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Setze Administrator Passwort"
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Datei-Verzeichnis angeben"
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s gib den Datenbank-Benutzernamen an."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s gib den Datenbank-Namen an."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s Der Datenbank-Name darf keine Punkte enthalten"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s setze den Datenbank-Host"
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL Benutzername und/oder Passwort ungültig"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Sie müssen entweder ein existierendes Benutzerkonto oder das Administratoren-Konto angeben."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Oracle Benutzername und/oder Passwort ungültig"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL Benutzername und/oder Passwort ungültig"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DB Fehler: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Fehlerhafter Befehl war: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL Benutzer '%s'@'localhost' existiert bereits."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Lösche diesen Benutzer von MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL Benutzer '%s'@'%%' existiert bereits"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Lösche diesen Benutzer von MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Fehlerhafter Befehl war: \"%s\", Name: %s, Passwort: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Dein Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/de/settings.po b/l10n/de/settings.po
index 701892688ca0390dc0550340ad002a32eaa99daa..927cfec9c7319d6f9a46fd14d107caf609dd02da 100644
--- a/l10n/de/settings.po
+++ b/l10n/de/settings.po
@@ -12,7 +12,7 @@
 # Jan T <jan-temesinko@web.de>, 2012.
 #   <lukas@statuscode.ch>, 2012.
 #   <mail@felixmoeller.de>, 2012.
-# Marcel Kühlhorn <susefan93@gmx.de>, 2012.
+# Marcel Kühlhorn <susefan93@gmx.de>, 2012-2013.
 #   <markus.thiel@desico.de>, 2012.
 #   <mibunrui@gmx.de>, 2012.
 #   <nelsonfritsch@gmail.com>, 2012.
@@ -26,8 +26,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
@@ -40,14 +40,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Die Liste der Anwendungen im Store konnte nicht geladen werden."
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Fehler bei der Anmeldung"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Das Ändern des Anzeigenamens ist nicht möglich"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -99,13 +99,13 @@ msgstr "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden"
 msgid "Unable to remove user from group %s"
 msgstr "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Die App konnte nicht geupdated werden."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Update zu {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -117,11 +117,11 @@ msgstr "Aktivieren"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Bitte warten..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Update..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
@@ -133,16 +133,222 @@ msgstr "Fehler"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Geupdated"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Speichern..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "gelöscht"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "rückgängig machen"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Benutzer konnte nicht entfernt werden."
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruppen"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppenadministrator"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Löschen"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "Gruppe hinzufügen"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Es muss ein gültiger Benutzername angegeben werden"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Beim anlegen des Benutzers ist ein Fehler aufgetreten"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Es muss ein gültiges Passwort angegeben werden"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Deutsch (Persönlich)"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sicherheitswarnung"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Dein Datenverzeichnis und deine Datein sind vielleicht vom Internet aus erreichbar. Die .htaccess Datei, die ownCloud verwendet, arbeitet nicht richtig. Wir schlagen Dir dringend vor, dass du deinen Webserver so konfigurierst, dass das Datenverzeichnis nicht länger erreichbar ist oder, dass du dein Datenverzeichnis aus dem Dokumenten-root des Webservers bewegst."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Einrichtungswarnung"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Dein Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Modul 'fileinfo' fehlt "
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Das PHP-Modul 'fileinfo' fehlt. Wir empfehlen dieses Modul zu aktivieren um die besten Resultate bei der Erkennung der Dateitypen zu erreichen."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Ländereinstellung funktioniert nicht"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Dieser ownCloud Server kann die Ländereinstellung nicht auf \"de_DE.UTF-8\"/\"de_DE.UTF8\" ändern. Dies bedeutet dass es Probleme mit bestimmten Zeichen in Dateinamen geben könnte. Wir empfehlen die für de_DE.UTF-8/de_DE.UTF8 benötigten Pakete auf ihrem System zu installieren."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Keine Netzwerkverbindung"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Dieser ownCloud Server hat keine funktionierende Netzwerkverbindung. Dies bedeutet das einige Funktionen wie das einbinden von externen Speichern, Update-Benachrichtigungen oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Fernzugriff auf Dateien und das Senden von Benachrichtigungsmails funktioniert eventuell ebenfalls nicht. Wir empfehlen die Netzwerkverbindung für diesen Server zu aktivieren wenn Sie alle Funktionen von ownCloud nutzen wollen."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Führe eine Aufgabe mit jeder geladenen Seite aus"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php ist an einem Webcron-Service registriert. Die cron.php Seite wird einmal pro Minute über http abgerufen."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Nutze den Cron Systemdienst. Rufe die Datei cron.php im owncloud Ordner einmal pro Minute über einen Cronjob auf."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Teilen"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Aktiviere Sharing-API"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Erlaube Apps die Nutzung der Sharing-API"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Erlaube Links"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Erlaube Benutzern Inhalte über öffentliche Links zu teilen"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Erlaube erneutes teilen"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Erlaube Benutzern mit ihnen geteilte Inhalte erneut zu teilen"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Erlaube Benutzern mit jedem zu teilen"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Erlaube Benutzern nur mit Benutzern ihrer Gruppe zu teilen"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Sicherheit"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Erzwinge HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Erzwingt die Verwendung einer verschlüsselten Verbindung"
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Bitte verbinden Sie sich über eine HTTPS Verbindung mit diesem ownCloud Server um diese Einstellung zu ändern"
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Log"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Logtiefe"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mehr"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>, der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Füge Deine Anwendung hinzu"
@@ -196,116 +402,86 @@ msgstr "Kommerzieller Support"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Du verwendest <strong>%s</strong> der verfügbaren <strong>%s<strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clients"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Desktop-Client herunterladen"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Android-Client herunterladen"
+msgid "Get the apps to sync your files"
+msgstr "Laden Sie die Apps zur Synchronisierung ihrer Daten herunter"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS-Client herunterladen"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Erstinstallation erneut durchführen"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Passwort"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Dein Passwort wurde geändert."
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Passwort konnte nicht geändert werden"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Aktuelles Passwort"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Neues Passwort"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "zeigen"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Passwort ändern"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Anzeigename"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Dein Anzeigename wurde geändert"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Das Ändern deines Anzeigenamens ist nicht möglich"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Anzeigenamen ändern"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-Mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Deine E-Mail-Adresse"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Trage eine E-Mail-Adresse ein, um die Passwort-Wiederherstellung zu aktivieren."
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Sprache"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hilf bei der Übersetzung"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Verwende diese Adresse, um Deinen Dateimanager mit Deiner ownCloud zu verbinden"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>, der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Loginname"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruppen"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Anlegen"
@@ -314,34 +490,26 @@ msgstr "Anlegen"
 msgid "Default Storage"
 msgstr "Standard-Speicher"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Unbegrenzt"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Andere"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppenadministrator"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Speicher"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "Anzeigenamen ändern"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "Neues Passwort setzen"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Standard"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Löschen"
diff --git a/l10n/de/user_ldap.po b/l10n/de/user_ldap.po
index e247c006708f41759921299f4a8ac96970c74066..b4bd8a2d9ba78db9847df6588b834006c965cf85 100644
--- a/l10n/de/user_ldap.po
+++ b/l10n/de/user_ldap.po
@@ -16,9 +16,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:01+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,23 +28,23 @@ msgstr ""
 
 #: ajax/deleteConfiguration.php:34
 msgid "Failed to delete the server configuration"
-msgstr ""
+msgstr "Löschen der Serverkonfiguration fehlgeschlagen"
 
 #: ajax/testConfiguration.php:35
 msgid "The configuration is valid and the connection could be established!"
-msgstr ""
+msgstr "Die Konfiguration war erfolgreich, die Verbindung konnte hergestellt werden!"
 
 #: ajax/testConfiguration.php:37
 msgid ""
 "The configuration is valid, but the Bind failed. Please check the server "
 "settings and credentials."
-msgstr ""
+msgstr "Die Konfiguration ist gültig aber die Verbindung ist fehlgeschlagen. Bitte überprüfen Sie die Servereinstellungen und die Anmeldeinformationen."
 
 #: ajax/testConfiguration.php:40
 msgid ""
 "The configuration is invalid. Please look in the ownCloud log for further "
 "details."
-msgstr ""
+msgstr "Die Konfiguration ist ungültig, bitte sehen Sie für weitere Details im ownCloud Log nach"
 
 #: js/settings.js:66
 msgid "Deletion failed"
@@ -52,7 +52,7 @@ msgstr "Löschen fehlgeschlagen"
 
 #: js/settings.js:82
 msgid "Take over settings from recent server configuration?"
-msgstr ""
+msgstr "Einstellungen von letzter Konfiguration übernehmen?"
 
 #: js/settings.js:83
 msgid "Keep settings?"
@@ -60,23 +60,23 @@ msgstr "Einstellungen beibehalten?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
-msgstr ""
+msgstr "Serverkonfiguration konnte nicht hinzugefügt werden."
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "Verbindungstest erfolgreich"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "Verbindungstest fehlgeschlagen"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
-msgstr ""
+msgstr "Wollen Sie die aktuelle Serverkonfiguration wirklich löschen?"
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "Löschung bestätigen"
 
 #: templates/settings.php:8
 msgid ""
@@ -93,11 +93,11 @@ msgstr "<b>Warnung:</b> Da das PHP-Modul für LDAP nicht installiert ist, wird d
 
 #: templates/settings.php:15
 msgid "Server configuration"
-msgstr ""
+msgstr "Serverkonfiguration"
 
 #: templates/settings.php:17
 msgid "Add Server Configuration"
-msgstr ""
+msgstr "Serverkonfiguration hinzufügen"
 
 #: templates/settings.php:21
 msgid "Host"
@@ -181,15 +181,15 @@ msgstr "ohne Platzhalter, z.B.: \"objectClass=posixGroup\""
 
 #: templates/settings.php:31
 msgid "Connection Settings"
-msgstr ""
+msgstr "Verbindungseinstellungen"
 
 #: templates/settings.php:33
 msgid "Configuration Active"
-msgstr ""
+msgstr "Konfiguration aktiv"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
-msgstr ""
+msgstr "Konfiguration wird übersprungen wenn deaktiviert"
 
 #: templates/settings.php:34
 msgid "Port"
@@ -197,25 +197,25 @@ msgstr "Port"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "Backup Host (Kopie)"
 
 #: templates/settings.php:35
 msgid ""
 "Give an optional backup host. It must be a replica of the main LDAP/AD "
 "server."
-msgstr ""
+msgstr "Gib einen optionalen Backup Host an. Es muss sich um eine kopie des Haupt LDAP/AD Servers handeln."
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "Backup Port"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
-msgstr ""
+msgstr "Hauptserver deaktivieren"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
-msgstr ""
+msgstr "Wenn aktiviert  wird ownCloud ausschließlich den Backupserver verwenden"
 
 #: templates/settings.php:38
 msgid "Use TLS"
@@ -223,7 +223,7 @@ msgstr "Nutze TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Benutze es nicht zusätzlich für LDAPS Verbindungen, es wird scheitern."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -249,7 +249,7 @@ msgstr "in Sekunden. Eine Änderung leert den Cache."
 
 #: templates/settings.php:43
 msgid "Directory Settings"
-msgstr ""
+msgstr "Ordnereinstellungen"
 
 #: templates/settings.php:45
 msgid "User Display Name Field"
@@ -269,11 +269,11 @@ msgstr "Ein Benutzer Base DN pro Zeile"
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
-msgstr ""
+msgstr "Benutzersucheigenschaften"
 
 #: templates/settings.php:47 templates/settings.php:50
 msgid "Optional; one attribute per line"
-msgstr ""
+msgstr "Optional, eine Eigenschaft pro Zeile"
 
 #: templates/settings.php:48
 msgid "Group Display Name Field"
@@ -293,7 +293,7 @@ msgstr "Ein Gruppen Base DN pro Zeile"
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "Gruppensucheigenschaften"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
@@ -301,7 +301,7 @@ msgstr "Assoziation zwischen Gruppe und Benutzer"
 
 #: templates/settings.php:53
 msgid "Special Attributes"
-msgstr ""
+msgstr "Spezielle Eigenschaften"
 
 #: templates/settings.php:56
 msgid "in bytes"
diff --git a/l10n/de_DE/core.po b/l10n/de_DE/core.po
index c67c4205fbf72d16ddbec45c1e2064911d1dd4fd..a8ffe8861e3e36d32ea9e19ba7b35285d5859346 100644
--- a/l10n/de_DE/core.po
+++ b/l10n/de_DE/core.po
@@ -17,6 +17,7 @@
 #   <m.fresel@sysangels.com>, 2012.
 #   <niko@nik-o-mat.de>, 2012.
 # Phi Lieb <>, 2012.
+#  <stefan.niedermann@googlemail.com>, 2013.
 #   <Steve_Reichert@gmx.de>, 2013.
 # Susi <>, 2013.
 #   <thomas.mueller@tmit.eu>, 2012.
@@ -25,9 +26,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
+"Last-Translator: stefanniedermann <stefan.niedermann@googlemail.com>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -174,59 +175,59 @@ msgstr "November"
 msgid "December"
 msgstr "Dezember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "Gerade eben"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "Vor 1 Minute"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "Vor {minutes} Minuten"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Vor einer Stunde"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Vor {hours} Stunden"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "Heute"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "Gestern"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "Vor {days} Tag(en)"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "Letzten Monat"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Vor {months} Monaten"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "Vor Monaten"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "Letztes Jahr"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "Vor Jahren"
 
@@ -256,8 +257,8 @@ msgid "The object type is not specified."
 msgstr "Der Objekttyp ist nicht angegeben."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fehler"
 
@@ -269,15 +270,15 @@ msgstr "Der App-Name ist nicht angegeben."
 msgid "The required file {file} is not installed!"
 msgstr "Die benötigte Datei {file} ist nicht installiert."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Freigeben"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Freigegeben"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Freigeben"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Fehler bei der Freigabe"
 
@@ -373,23 +374,23 @@ msgstr "löschen"
 msgid "share"
 msgstr "freigeben"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Durch ein Passwort geschützt"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Fehler beim Entfernen des Ablaufdatums"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Fehler beim Setzen des Ablaufdatums"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sende ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Email gesendet"
 
@@ -505,14 +506,14 @@ msgstr "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage, d
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Bitte lesen Sie die <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">Dokumentation</a> für Informationen, wie Sie Ihren Server wahrscheinlich konfigurieren."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/de_DE/files.po b/l10n/de_DE/files.po
index a92ea83e99f3f835df0eb646f2de883aa2d0edc3..c62ccc02470ec012ca980ddf90e6156c1ac2321a 100644
--- a/l10n/de_DE/files.po
+++ b/l10n/de_DE/files.po
@@ -21,6 +21,7 @@
 #   <niko@nik-o-mat.de>, 2012.
 # Phi Lieb <>, 2012.
 # Phillip Schichtel <quick_wango@code-infection.de>, 2013.
+#  <stefan.niedermann@googlemail.com>, 2013.
 #   <Steve_Reichert@gmx.de>, 2013.
 # Susi <>, 2013.
 #   <thomas.mueller@tmit.eu>, 2012.
@@ -30,8 +31,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
@@ -101,15 +102,15 @@ msgstr "Ungültiges Verzeichnis."
 msgid "Files"
 msgstr "Dateien"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Entgültig löschen"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Löschen"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Umbenennen"
 
@@ -215,31 +216,31 @@ msgstr "Die URL darf nicht leer sein."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Name"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Größe"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Bearbeitet"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 Ordner"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} Ordner"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 Datei"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} Dateien"
 
@@ -296,7 +297,7 @@ msgid "From link"
 msgstr "Von einem Link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/de_DE/files_trashbin.po b/l10n/de_DE/files_trashbin.po
index 755e0968dbdaa66bfecb62494c2dbea9b6741102..d9e42dce660f751ca28a921ad3d0e1d8a62cd49a 100644
--- a/l10n/de_DE/files_trashbin.po
+++ b/l10n/de_DE/files_trashbin.po
@@ -5,14 +5,15 @@
 # Translators:
 # I Robot <owncloud-bot@tmit.eu>, 2013.
 # Phillip Schichtel <quick_wango@code-infection.de>, 2013.
+#  <stefan.niedermann@googlemail.com>, 2013.
 # Susi <>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:43+0000\n"
+"Last-Translator: stefanniedermann <stefan.niedermann@googlemail.com>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -23,12 +24,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Konnte %s nicht permanent löschen"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Konnte %s nicht wiederherstellen"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
diff --git a/l10n/de_DE/files_versions.po b/l10n/de_DE/files_versions.po
index e6c6d61cb214d53d7971f045aaee064be0d5a35f..8ea9b51ed6ea06f29b5261f036ac4fa0b4861424 100644
--- a/l10n/de_DE/files_versions.po
+++ b/l10n/de_DE/files_versions.po
@@ -6,16 +6,19 @@
 #   <blobbyjj@ymail.com>, 2012.
 # I Robot <thomas.mueller@tmit.eu>, 2012.
 #   <mail@felixmoeller.de>, 2012.
+# Marcel Kühlhorn <susefan93@gmx.de>, 2013.
 #  <niko@nik-o-mat.de>, 2013.
 #   <niko@nik-o-mat.de>, 2012.
+#  <robert.neumann01@gmail.com>, 2013.
+#  <stefan.niedermann@googlemail.com>, 2013.
 #   <thomas.mueller@tmit.eu>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 12:20+0000\n"
-"Last-Translator: JamFX <niko@nik-o-mat.de>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 10:50+0000\n"
+"Last-Translator: robN <robert.neumann01@gmail.com>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -26,7 +29,7 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Konnte %s nicht zurücksetzen"
 
 #: history.php:40
 msgid "success"
@@ -35,7 +38,7 @@ msgstr "Erfolgreich"
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Die Datei %s wurde zur Version %s zurückgesetzt"
 
 #: history.php:49
 msgid "failure"
@@ -44,7 +47,7 @@ msgstr "Fehlgeschlagen"
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Die Datei %s konnte nicht zur Version %s zurückgesetzt werden"
 
 #: history.php:68
 msgid "No old versions available"
@@ -60,7 +63,7 @@ msgstr "Historie"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Setze eine Datei durch Klicken, auf den Zurücksetzen-Button, auf einer frühere Version zurück"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/de_DE/lib.po b/l10n/de_DE/lib.po
index 2211ceeaee99aa65a902c87950a0b6f37dbdb88e..630cd9fa410d8fe191c8c927e81cf7c0955fb5e1 100644
--- a/l10n/de_DE/lib.po
+++ b/l10n/de_DE/lib.po
@@ -6,18 +6,20 @@
 # Andreas Tangemann <a.tangemann@web.de>, 2013.
 #   <a.tangemann@web.de>, 2012.
 #   <blobbyjj@ymail.com>, 2012.
+# I Robot <owncloud-bot@tmit.eu>, 2013.
 # Jan-Christoph Borchardt <hey@jancborchardt.net>, 2012.
-# Marcel Kühlhorn <susefan93@gmx.de>, 2012.
+# Marcel Kühlhorn <susefan93@gmx.de>, 2012-2013.
 # Phi Lieb <>, 2012.
+#  <stefan.niedermann@googlemail.com>, 2013.
 #   <thomas.mueller@tmit.eu>, 2012.
 #   <transifex.3.mensaje@spamgourmet.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 13:00+0000\n"
+"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,27 +27,27 @@ msgstr ""
 "Language: de_DE\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Hilfe"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Persönlich"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Benutzer"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Apps"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Administrator"
 
@@ -57,15 +59,15 @@ msgstr "Der ZIP-Download ist deaktiviert."
 msgid "Files need to be downloaded one by one."
 msgstr "Die Dateien müssen einzeln heruntergeladen werden."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Zurück zu \"Dateien\""
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Die gewählten Dateien sind zu groß, um eine ZIP-Datei zu erstellen."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr "konnte nicht ermittelt werden"
 
@@ -93,16 +95,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Bilder"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Setze Administrator Benutzername."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Setze Administrator Passwort"
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Datei-Verzeichnis angeben"
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s geben Sie den Datenbank-Benutzernamen an."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s geben Sie den Datenbank-Namen an."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s Der Datenbank-Name darf keine Punkte enthalten"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s setze den Datenbank-Host"
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL Benutzername und/oder Passwort ungültig"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Sie müssen entweder ein existierendes Benutzerkonto oder das Administratoren-Konto angeben."
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr "Oracle Benutzername und/oder Passwort ungültig"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL Benutzername und/oder Passwort ungültig"
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DB Fehler: \"%s\""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Fehlerhafter Befehl war: \"%s\""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL Benutzer '%s'@'localhost' existiert bereits."
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr "Lösche diesen Benutzer von MySQL"
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL Benutzer '%s'@'%%' existiert bereits"
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr "Lösche diesen Benutzer von MySQL."
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Fehlerhafter Befehl war: \"%s\", Name: %s, Passwort: %s"
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Ihr Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist."
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -156,16 +244,16 @@ msgstr "Letztes Jahr"
 msgid "years ago"
 msgstr "Vor  Jahren"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s ist verfügbar. <a href=\"%s\">Weitere Informationen</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "aktuell"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "Die Update-Überprüfung ist ausgeschaltet"
 
diff --git a/l10n/de_DE/settings.po b/l10n/de_DE/settings.po
index e198138298e6b021812954f8f3af54b07f380d62..77ae2f776f246df8f273356b6c6dc3b6945f899a 100644
--- a/l10n/de_DE/settings.po
+++ b/l10n/de_DE/settings.po
@@ -18,6 +18,7 @@
 #   <niko@nik-o-mat.de>, 2012.
 # Phi Lieb <>, 2012.
 # Phillip Schichtel <quick_wango@code-infection.de>, 2013.
+#  <robert.neumann01@gmail.com>, 2013.
 #   <seeed@freenet.de>, 2012.
 #  <stefan.niedermann@googlemail.com>, 2013.
 # Susi <>, 2013.
@@ -29,9 +30,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 08:10+0000\n"
-"Last-Translator: Susi <>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 13:00+0000\n"
+"Last-Translator: robN <robert.neumann01@gmail.com>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -43,12 +44,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Die Liste der Anwendungen im Store konnte nicht geladen werden."
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Fehler bei der Anmeldung"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Das Ändern des Anzeigenamens ist nicht möglich"
 
@@ -102,7 +103,7 @@ msgstr "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden"
 msgid "Unable to remove user from group %s"
 msgstr "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Die App konnte nicht geupdated werden."
 
@@ -142,10 +143,216 @@ msgstr "Geupdated"
 msgid "Saving..."
 msgstr "Speichern..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "gelöscht"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "rückgängig machen"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Benutzer konnte nicht entfernt werden."
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruppen"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppenadministrator"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Löschen"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "Gruppe konnte nicht hinzugefügt werden"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Beim Erstellen des Benutzers ist ein Fehler aufgetreten"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Deutsch (Förmlich: Sie)"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sicherheitshinweis"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich über das Internet erreichbar. Die von ownCloud bereitgestellte .htaccess Datei funktioniert nicht. Wir empfehlen Ihnen dringend, Ihren Webserver so zu konfigurieren, dass das Datenverzeichnis nicht mehr über das Internet erreichbar ist. Alternativ können Sie auch das Datenverzeichnis aus dem Dokumentenverzeichnis des Webservers verschieben."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Ihr Web-Server ist wahrscheinlich noch nicht konfiguriert, Datei-Synchronisation zu erlauben, weil die WebDAV-Schnittstelle vermutlich defekt ist."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Führe eine Aufgabe bei jedem Laden der Seite aus"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Teilen"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Teilen-API aktivieren"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Erlaube es Anwendungen, die Teilen-API zu benutzen"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Links erlauben"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Erlaube es Benutzern, Items per öffentlichem Link zu teilen"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Erlaube weiterteilen"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Sicherheit"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "HTTPS erzwingen"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Zwingt die Clients, sich über eine verschlüsselte Verbindung mit ownCloud zu verbinden."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Bitte verbinden Sie sich mit dieser ownCloud-Instanz per HTTPS um SSL-Erzwingung zu aktivieren oder deaktivieren."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Log"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Log-Level"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mehr"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>. Der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Fügen Sie Ihre Anwendung hinzu"
@@ -199,116 +406,86 @@ msgstr "Kommerzieller Support"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Sie verwenden <strong>%s</strong> der verfügbaren <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clients"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Desktop-Client herunterladen"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Android-Client herunterladen"
+msgid "Get the apps to sync your files"
+msgstr "Installieren Sie die Anwendungen um Ihre Dateien zu synchronisieren"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS-Client herunterladen"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Zeige den Einrichtungsassistenten erneut"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Passwort"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ihr Passwort wurde geändert."
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Das Passwort konnte nicht geändert werden"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Aktuelles Passwort"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Neues Passwort"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "zeigen"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Passwort ändern"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Anzeigename"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr "Dein Anzeigename wurde geändert"
+msgstr "Ihr Anzeigename wurde geändert"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr "Das Ändern deines Anzeigenamens ist nicht möglich"
+msgstr "Das Ändern Ihres Anzeigenamens ist nicht möglich"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Anzeigenamen ändern"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-Mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Ihre E-Mail-Adresse"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Bitte tragen Sie eine E-Mail-Adresse ein, um die Passwort-Wiederherstellung zu aktivieren."
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Sprache"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Helfen Sie bei der Übersetzung"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Verwenden Sie diese Adresse, um Ihren Dateimanager mit Ihrer ownCloud zu verbinden"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>. Der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Loginname"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruppen"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Anlegen"
@@ -317,34 +494,26 @@ msgstr "Anlegen"
 msgid "Default Storage"
 msgstr "Standard-Speicher"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Unbegrenzt"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Andere"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppenadministrator"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Speicher"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "Anzeigenamen ändern"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "Neues Passwort setzen"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Standard"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Löschen"
diff --git a/l10n/de_DE/user_ldap.po b/l10n/de_DE/user_ldap.po
index 0633de147c97334ec567abdab10676120826eeb6..18580dda23a717df93a1c3daa7bfd832f6388bff 100644
--- a/l10n/de_DE/user_ldap.po
+++ b/l10n/de_DE/user_ldap.po
@@ -18,9 +18,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:43+0000\n"
+"Last-Translator: stefanniedermann <stefan.niedermann@googlemail.com>\n"
 "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -225,7 +225,7 @@ msgstr "Nutze TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Benutze es nicht zusätzlich für LDAPS Verbindungen, es wird scheitern."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
diff --git a/l10n/el/core.po b/l10n/el/core.po
index 0c8ae8d8ae9a2310753984aca47270c159eb1fcc..7752a3076e03ce82669ba8a9770c577a9d8dc123 100644
--- a/l10n/el/core.po
+++ b/l10n/el/core.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 14:40+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: Dimitris M. <monopatis@gmail.com>\n"
 "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n"
 "MIME-Version: 1.0\n"
@@ -168,55 +168,55 @@ msgstr "Δεκέμβριος"
 msgid "Settings"
 msgstr "Ρυθμίσεις"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "δευτερόλεπτα πριν"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 λεπτό πριν"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} λεπτά πριν"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 ώρα πριν"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} ώρες πριν"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "σήμερα"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "χτες"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} ημέρες πριν"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "τελευταίο μήνα"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} μήνες πριν"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "μήνες πριν"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "τελευταίο χρόνο"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "χρόνια πριν"
 
@@ -259,14 +259,14 @@ msgstr "Δεν καθορίστηκε το όνομα της εφαρμογής.
 msgid "The required file {file} is not installed!"
 msgstr "Το απαιτούμενο αρχείο {file} δεν εγκαταστάθηκε!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Διαμοιρασμός"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Διαμοιρασμός"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Σφάλμα κατά τον διαμοιρασμό"
diff --git a/l10n/el/files.po b/l10n/el/files.po
index d0ce4ea85e864b76d3a1141de95589c779d5c937..3f60220fd589e7b1e1b5d74c3efd79760a15d783 100644
--- a/l10n/el/files.po
+++ b/l10n/el/files.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n"
 "MIME-Version: 1.0\n"
@@ -86,15 +86,15 @@ msgstr "Μη έγκυρος φάκελος."
 msgid "Files"
 msgstr "Αρχεία"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Μόνιμη διαγραφή"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Διαγραφή"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Μετονομασία"
 
@@ -200,31 +200,31 @@ msgstr "Η URL δεν πρέπει να είναι κενή."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Μη έγκυρο όνομα φακέλου. Η χρήση του 'Κοινόχρηστος' χρησιμοποιείται από ο Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Όνομα"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Μέγεθος"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Τροποποιήθηκε"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 φάκελος"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} φάκελοι"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 αρχείο"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} αρχεία"
 
@@ -281,7 +281,7 @@ msgid "From link"
 msgstr "Από σύνδεσμο"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/el/files_trashbin.po b/l10n/el/files_trashbin.po
index 91d2ccfde2cccdcb87458d3f048e77070ed8a363..e8ac463bd2b23a3dc88f3da448767a64855dcf02 100644
--- a/l10n/el/files_trashbin.po
+++ b/l10n/el/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 14:20+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: Dimitris M. <monopatis@gmail.com>\n"
 "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/el/lib.po b/l10n/el/lib.po
index 214303c9d108af5c1903c256c33bc4cc66e60dad..9d54c6a083be65a4d7227fe24d3b32a44aa4f374 100644
--- a/l10n/el/lib.po
+++ b/l10n/el/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "Κείμενο"
 msgid "Images"
 msgstr "Εικόνες"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/el/settings.po b/l10n/el/settings.po
index c6c5dfb10f04503431fa9c8f81d9237ddd87e98d..525b3614e7a2edfaa94df42f64d9109056ed1085 100644
--- a/l10n/el/settings.po
+++ b/l10n/el/settings.po
@@ -19,8 +19,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n"
 "MIME-Version: 1.0\n"
@@ -33,12 +33,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Σφάλμα στην φόρτωση της λίστας από το App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Σφάλμα πιστοποίησης"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -92,7 +92,7 @@ msgstr "Αδυναμία προσθήκη χρήστη στην ομάδα %s"
 msgid "Unable to remove user from group %s"
 msgstr "Αδυναμία αφαίρεσης χρήστη από την ομάδα %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -132,10 +132,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Αποθήκευση..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "διαγράφηκε"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "αναίρεση"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Ομάδες"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Ομάδα Διαχειριστών"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Διαγραφή"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__όνομα_γλώσσας__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Προειδοποίηση Ασφαλείας"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Ο κατάλογος data και τα αρχεία σας πιθανόν να είναι διαθέσιμα στο διαδίκτυο. Το αρχείο .htaccess που παρέχει το ownCloud δεν δουλεύει. Σας προτείνουμε ανεπιφύλακτα να ρυθμίσετε το διακομιστή σας με τέτοιο τρόπο ώστε ο κατάλογος data να μην είναι πλέον προσβάσιμος ή να μετακινήσετε τον κατάλογο data έξω από τον κατάλογο του διακομιστή."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Περισσότερα"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Έκδοση"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Αναπτύχθηκε από την <a href=\"http://ownCloud.org/contact\" target=\"_blank\">κοινότητα ownCloud</a>, ο <a href=\"https://github.com/owncloud\" target=\"_blank\">πηγαίος κώδικας</a> είναι υπό άδεια χρήσης <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Πρόσθεστε τη Δικιά σας Εφαρμογή"
@@ -189,116 +395,86 @@ msgstr "Εμπορική Υποστήριξη"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Χρησιμοποιήσατε <strong>%s</strong> από διαθέσιμα <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Πελάτες"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Λήψη Προγραμμάτων για Σταθερούς Υπολογιστές"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Λήψη Προγράμματος Android"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Λήψη Προγράμματος iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Προβολή Πρώτης Εκτέλεσης Οδηγού πάλι"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Συνθηματικό"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Το συνθηματικό σας έχει αλλάξει"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Δεν ήταν δυνατή η αλλαγή του κωδικού πρόσβασης"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Τρέχων συνθηματικό"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Νέο συνθηματικό"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "εμφάνιση"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Αλλαγή συνθηματικού"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Η διεύθυνση ηλεκτρονικού ταχυδρομείου σας"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Συμπληρώστε μια διεύθυνση ηλεκτρονικού ταχυδρομείου για να ενεργοποιηθεί η ανάκτηση συνθηματικού"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Γλώσσα"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Βοηθήστε στη μετάφραση"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Χρήση αυτής της διεύθυνσης για σύνδεση στο ownCloud με τον διαχειριστή αρχείων σας"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Έκδοση"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Αναπτύχθηκε από την <a href=\"http://ownCloud.org/contact\" target=\"_blank\">κοινότητα ownCloud</a>, ο <a href=\"https://github.com/owncloud\" target=\"_blank\">πηγαίος κώδικας</a> είναι υπό άδεια χρήσης <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Ομάδες"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Δημιουργία"
@@ -307,34 +483,26 @@ msgstr "Δημιουργία"
 msgid "Default Storage"
 msgstr "Προκαθορισμένη Αποθήκευση "
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Απεριόριστο"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Άλλα"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Ομάδα Διαχειριστών"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Αποθήκευση"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Προκαθορισμένο"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Διαγραφή"
diff --git a/l10n/eo/core.po b/l10n/eo/core.po
index 15f0635aa271c55255ecfcb411d7f1000b1b897e..d1572f084cb4aef06f8843256256ff94d38580b5 100644
--- a/l10n/eo/core.po
+++ b/l10n/eo/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "Novembro"
 msgid "December"
 msgstr "Decembro"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Agordo"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekundoj antaŭe"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "antaŭ 1 minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "antaŭ {minutes} minutoj"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "antaŭ 1 horo"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "antaŭ {hours} horoj"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hodiaŭ"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "hieraŭ"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "antaŭ {days} tagoj"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "lastamonate"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "antaŭ {months} monatoj"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "monatoj antaŭe"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "lastajare"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "jaroj antaŭe"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "Ne indikiĝis tipo de la objekto."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Eraro"
 
@@ -254,15 +254,15 @@ msgstr "Ne indikiĝis nomo de la aplikaĵo."
 msgid "The required file {file} is not installed!"
 msgstr "La necesa dosiero {file} ne instaliĝis!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Kunhavigi"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Kunhavigi"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Eraro dum kunhavigo"
 
@@ -358,23 +358,23 @@ msgstr "forigi"
 msgid "share"
 msgstr "kunhavigi"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protektita per pasvorto"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Eraro dum malagordado de limdato"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Eraro dum agordado de limdato"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sendante..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "La retpoŝtaĵo sendiĝis"
 
diff --git a/l10n/eo/files.po b/l10n/eo/files.po
index f2006ab6bd89c1858644dd3a825ee0ab296b0753..928c408fa287ead96869bff8bab36f9d56a5539f 100644
--- a/l10n/eo/files.po
+++ b/l10n/eo/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr "Nevalida dosierujo."
 msgid "Files"
 msgstr "Dosieroj"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Forigi"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Alinomigi"
 
@@ -195,31 +195,31 @@ msgstr "URL ne povas esti malplena."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nevalida dosierujnomo. Uzo de “Shared” rezervatas de Owncloud."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nomo"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Grando"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modifita"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 dosierujo"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} dosierujoj"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 dosiero"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} dosierujoj"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "El ligilo"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/eo/files_trashbin.po b/l10n/eo/files_trashbin.po
index 407ed42d6da7928411417e820725918acb6473ff..ba5bf42fbc6a66f572f0df2e566e7aa45a6ed2bb 100644
--- a/l10n/eo/files_trashbin.po
+++ b/l10n/eo/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/eo/lib.po b/l10n/eo/lib.po
index 72ab91a9de38457aa3a2c3dca491588441a429e7..4bdcdeb24642be14eab4bf867cc8384e2ac5599a 100644
--- a/l10n/eo/lib.po
+++ b/l10n/eo/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "Teksto"
 msgid "Images"
 msgstr "Bildoj"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/eo/settings.po b/l10n/eo/settings.po
index d48c43e7b6f745c1da46385e250e041d64dbe961..ef4116c62d66fd03ed59a1cc439fd96dce41c785 100644
--- a/l10n/eo/settings.po
+++ b/l10n/eo/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Ne eblis ŝargi liston el aplikaĵovendejo"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Aŭtentiga eraro"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr "Ne eblis aldoni la uzanton al la grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Ne eblis forigi la uzantan el la grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -123,10 +123,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Konservante..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "forigita"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "malfari"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupoj"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupadministranto"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Forigi"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Esperanto"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sekureca averto"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Pli"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Eldono"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Ellaborita de la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunumo de ownCloud</a>, la <a href=\"https://github.com/owncloud\" target=\"_blank\">fontokodo</a> publikas laŭ la permesilo <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Aldonu vian aplikaĵon"
@@ -180,116 +386,86 @@ msgstr "Komerca subteno"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Vi uzas <strong>%s</strong> el la haveblaj <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klientoj"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Elŝuti labortablajn klientojn"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Elŝuti Android-klienton"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Elŝuti iOS-klienton"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Pasvorto"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Via pasvorto ŝanĝiĝis"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Ne eblis ŝanĝi vian pasvorton"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Nuna pasvorto"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nova pasvorto"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "montri"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Ŝanĝi la pasvorton"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Retpoŝto"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Via retpoŝta adreso"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Enigu retpoŝtadreson por kapabligi pasvortan restaŭron"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Lingvo"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Helpu traduki"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Uzu ĉi tiun adreson por konekti al via ownCloud vian dosieradministrilon"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Eldono"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Ellaborita de la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunumo de ownCloud</a>, la <a href=\"https://github.com/owncloud\" target=\"_blank\">fontokodo</a> publikas laŭ la permesilo <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupoj"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Krei"
@@ -298,34 +474,26 @@ msgstr "Krei"
 msgid "Default Storage"
 msgstr "Defaŭlta konservejo"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Senlima"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Alia"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupadministranto"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Konservejo"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Defaŭlta"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Forigi"
diff --git a/l10n/es/core.po b/l10n/es/core.po
index ff3f6b2cd572efb460904f4c69d6ace2ed7beb17..3796ea9a99ce9f6e90f3df43fe2ccba0c1842539 100644
--- a/l10n/es/core.po
+++ b/l10n/es/core.po
@@ -6,6 +6,7 @@
 # Felix Liberio <felix.liberio@gmail.com>, 2013.
 #   <javierkaiser@gmail.com>, 2012.
 # Javier Llorente <javier@opensuse.org>, 2012.
+#  <juanma@kde.org.ar>, 2013.
 #   <juanma@kde.org.ar>, 2011-2013.
 #   <malmirk@gmail.com>, 2012.
 # oSiNaReF  <>, 2012.
@@ -20,9 +21,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: juanman <juanma@kde.org.ar>\n"
 "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -169,59 +170,59 @@ msgstr "Noviembre"
 msgid "December"
 msgstr "Diciembre"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Ajustes"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "hace segundos"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "hace 1 minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "hace {minutes} minutos"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Hace 1 hora"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Hace {hours} horas"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hoy"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ayer"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "hace {days} días"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "mes pasado"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Hace {months} meses"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "hace meses"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "año pasado"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "hace años"
 
@@ -251,8 +252,8 @@ msgid "The object type is not specified."
 msgstr "El tipo de objeto no se ha especificado."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fallo"
 
@@ -264,15 +265,15 @@ msgstr "El nombre de la app no se ha especificado."
 msgid "The required file {file} is not installed!"
 msgstr "El fichero  {file} requerido, no está instalado."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Compartir"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Compartido"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Compartir"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Error compartiendo"
 
@@ -368,23 +369,23 @@ msgstr "eliminar"
 msgid "share"
 msgstr "compartir"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protegido por contraseña"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Error al eliminar la fecha de caducidad"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Error estableciendo fecha de caducidad"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Enviando..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Correo electrónico enviado"
 
@@ -500,14 +501,14 @@ msgstr "Sin un generador de números aleatorios seguro un atacante podría prede
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Su directorio de datos y sus archivos están probablemente accesibles a través de internet ya que el archivo .htaccess no está funcionando."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Para información sobre cómo configurar adecuadamente su servidor, por favor vea la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentación</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/es/files.po b/l10n/es/files.po
index cbad49ad5ca9ac1b8e503cab468c218b289fafb3..b6eac42de367fb33078a2fae260686a23f015a6a 100644
--- a/l10n/es/files.po
+++ b/l10n/es/files.po
@@ -7,6 +7,7 @@
 # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2013.
 #   <devianpctek@gmail.com>, 2012.
 # Javier Llorente <javier@opensuse.org>, 2012.
+#  <juanma@kde.org.ar>, 2013.
 #   <juanma@kde.org.ar>, 2012-2013.
 #   <karvayoEdgar@gmail.com>, 2013.
 # Rubén Trujillo <rubentrf@gmail.com>, 2012.
@@ -17,8 +18,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n"
 "MIME-Version: 1.0\n"
@@ -78,7 +79,7 @@ msgstr "La escritura en disco ha fallado"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "No hay suficiente espacio disponible"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -88,15 +89,15 @@ msgstr "Directorio invalido."
 msgid "Files"
 msgstr "Archivos"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Eliminar permanentemente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Eliminar"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Renombrar"
 
@@ -202,31 +203,31 @@ msgstr "La URL no puede estar vacía."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nombre"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamaño"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 carpeta"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} carpetas"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 archivo"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} archivos"
 
@@ -283,7 +284,7 @@ msgid "From link"
 msgstr "Desde el enlace"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/es/files_trashbin.po b/l10n/es/files_trashbin.po
index 7e95d500a1ba90628a7844c10014db0f95c3b4a1..a2db3d575eec7fdef2c8723630e4f45d871706fa 100644
--- a/l10n/es/files_trashbin.po
+++ b/l10n/es/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 00:30+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: msvladimir <vladimirmartinezsierra@gmail.com>\n"
 "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/es/lib.po b/l10n/es/lib.po
index bbee949d217a7b9f339f40b6ad0ce1a2b93dd843..5229db674386d08f581493e433bdf25c3b8a4cbe 100644
--- a/l10n/es/lib.po
+++ b/l10n/es/lib.po
@@ -4,6 +4,7 @@
 # 
 # Translators:
 # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2013.
+#  <juanma@kde.org.ar>, 2013.
 #   <juanma@kde.org.ar>, 2012.
 # Raul Fernandez Garcia <raulfg3@gmail.com>, 2012.
 # Rubén Trujillo <rubentrf@gmail.com>, 2012.
@@ -12,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n"
 "MIME-Version: 1.0\n"
@@ -90,16 +91,102 @@ msgstr "Texto"
 msgid "Images"
 msgstr "Imágenes"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Por favor, vuelva a comprobar las <a href='%s'>guías de instalación</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/es/settings.po b/l10n/es/settings.po
index ef23546dea677a6c0a030dc80ab49b5f01e34a0a..468cd0acfc3b070cd66ea729c12b603ae4f6979f 100644
--- a/l10n/es/settings.po
+++ b/l10n/es/settings.po
@@ -20,9 +20,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 00:30+0000\n"
-"Last-Translator: msvladimir <vladimirmartinezsierra@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -34,12 +34,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Imposible cargar la lista desde el App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Error de autenticación"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Incapaz de cambiar el nombre"
 
@@ -93,7 +93,7 @@ msgstr "Imposible añadir el usuario al grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Imposible eliminar al usuario del grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "No se puedo actualizar la aplicacion."
 
@@ -133,10 +133,216 @@ msgstr "Actualizado"
 msgid "Saving..."
 msgstr "Guardando..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "borrado"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "deshacer"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupo admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Eliminar"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Castellano"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Advertencia de seguridad"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Su directorio de datos y sus archivos están probablemente accesibles desde internet. El archivo .htaccess que ownCloud provee no está funcionando. Sugerimos fuertemente que configure su servidor web de manera que el directorio de datos ya no esté accesible o mueva el directorio de datos fuera del documento raíz de su servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Por favor, vuelva a comprobar las <a href='%s'>guías de instalación</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Más"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Añade tu aplicación"
@@ -190,116 +396,86 @@ msgstr "Soporte Comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Ha usado <strong>%s</strong> de <strong>%s</strong> disponibles"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Descargar clientes de escritorio"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Descargar cliente para android"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Descargar cliente para iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Mostrar asistente para iniciar otra vez"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Contraseña"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Su contraseña ha sido cambiada"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "No se ha podido cambiar tu contraseña"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Contraseña actual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nueva contraseña:"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostrar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Cambiar contraseña"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nombre a mostrar"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Su nombre fue cambiado"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Incapaz de cambiar su nombre"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Cambiar nombre"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Correo electrónico"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Tu dirección de correo"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Escribe una dirección de correo electrónico para restablecer la contraseña"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ayúdanos a traducir"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Use esta dirección para conectarse a su cuenta de ownCloud en el administrador de archivos"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nombre de usuario"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupos"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crear"
@@ -308,34 +484,26 @@ msgstr "Crear"
 msgid "Default Storage"
 msgstr "Almacenamiento Predeterminado"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ilimitado"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Otro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupo admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Alamacenamiento"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "Cambiar nombre a mostrar"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "Configurar nueva contraseña"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Predeterminado"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Eliminar"
diff --git a/l10n/es_AR/core.po b/l10n/es_AR/core.po
index b13721f69df7e5337593d4c7401d3bf0dbd478f0..0e2ac46282a7962eb2225223e057d9199a604d67 100644
--- a/l10n/es_AR/core.po
+++ b/l10n/es_AR/core.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: cjtess <claudio.tessone@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -55,7 +55,7 @@ msgstr "¿Ninguna categoría para añadir?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Esta categoría ya existe: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -159,59 +159,59 @@ msgstr "Noviembre"
 msgid "December"
 msgstr "Diciembre"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Ajustes"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segundos atrás"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "hace 1 minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "hace {minutes} minutos"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Hace 1 hora"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} horas atrás"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hoy"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ayer"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "hace {days} días"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "el mes pasado"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} meses atrás"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "meses atrás"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "el año pasado"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "años atrás"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "El tipo de objeto no esta especificado. "
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Error"
 
@@ -254,15 +254,15 @@ msgstr "El nombre de la aplicación no esta especificado."
 msgid "The required file {file} is not installed!"
 msgstr "¡El archivo requerido {file} no está instalado!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Compartir"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Compartido"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Compartir"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Error al compartir"
 
@@ -358,23 +358,23 @@ msgstr "borrar"
 msgid "share"
 msgstr "compartir"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protegido por contraseña"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Error al remover la fecha de caducidad"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Error al asignar fecha de vencimiento"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Enviando..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Email enviado"
 
@@ -490,14 +490,14 @@ msgstr "Sin un generador de números aleatorios seguro un atacante podría prede
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Tu directorio de datos y tus archivos probablemente son accesibles a través de internet, ya que el archivo .htaccess no está funcionando."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Para información sobre cómo configurar adecuadamente tu servidor, por favor mirá la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentación</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -580,7 +580,7 @@ msgstr "Entrar"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Nombre alternativos de usuarios"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/es_AR/files.po b/l10n/es_AR/files.po
index 74cb51e8c7a009bcf415918621011b77bcdedd57..116e75e86cbe6ec78bf02d9ac3b4a73778588c41 100644
--- a/l10n/es_AR/files.po
+++ b/l10n/es_AR/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr "Directorio invalido."
 msgid "Files"
 msgstr "Archivos"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Borrar de manera permanente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Borrar"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Cambiar nombre"
 
@@ -195,31 +195,31 @@ msgstr "La URL no puede estar vacía"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nombre de carpeta inválido. El uso de 'Shared' está reservado por ownCloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nombre"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamaño"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 directorio"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} directorios"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 archivo"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} archivos"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "Desde enlace"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/es_AR/files_encryption.po b/l10n/es_AR/files_encryption.po
index 1afbf7e9f8963eac33e753b0913dbb38302b830a..be26d5b095f5445f8de2e27d9d62bd4567540af0 100644
--- a/l10n/es_AR/files_encryption.po
+++ b/l10n/es_AR/files_encryption.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 00:20+0100\n"
+"PO-Revision-Date: 2013-02-11 16:00+0000\n"
+"Last-Translator: cjtess <claudio.tessone@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +25,15 @@ msgstr "Encriptación"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "La encriptación de archivos no está habilitada"
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Los siguientes tipos de archivos no serán encriptados"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Excluir los siguientes tipos de archivos de encriptación:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/es_AR/files_trashbin.po b/l10n/es_AR/files_trashbin.po
index c50739188ccaabe7b80114a10293351644325703..138bd484b72eae4014b8b2bf63b6e854f790fecc 100644
--- a/l10n/es_AR/files_trashbin.po
+++ b/l10n/es_AR/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# CJTess <claudio.tessone@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: cjtess <claudio.tessone@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "No fue posible borrar %s de manera permanente"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "No se pudo restaurar %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "Restaurar"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "Borrar archivo de manera permanente"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Nombre"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Borrado"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,7 +62,7 @@ msgstr "{count} archivos"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "No hay nada acá. ¡La papelera está vacía!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/es_AR/files_versions.po b/l10n/es_AR/files_versions.po
index e19644ccc5b9eb732013ae90d9440e8d49f080ca..849cd6a3ecad569c50580c66ffb88957f196fb2d 100644
--- a/l10n/es_AR/files_versions.po
+++ b/l10n/es_AR/files_versions.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# CJTess <claudio.tessone@gmail.com>, 2013.
 #   <claudio.tessone@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 00:20+0100\n"
+"PO-Revision-Date: 2013-02-11 15:50+0000\n"
+"Last-Translator: cjtess <claudio.tessone@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +22,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "No se pudo revertir: %s "
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "Éxito"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "El archivo %s fue revertido a la versión %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "error"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "El archivo %s no pudo ser revertido a la versión %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "No hay versiones antiguas disponibles"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Ruta de acceso no especificada"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +56,7 @@ msgstr "Historia"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Revertí un archivo a una versión anterior haciendo click en su botón de \"revertir\""
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/es_AR/lib.po b/l10n/es_AR/lib.po
index 5dd15f23d723530df137279c5dcab4b88da32e91..a997d69e93d98d63dcce7123fc9e50a8ad9263ef 100644
--- a/l10n/es_AR/lib.po
+++ b/l10n/es_AR/lib.po
@@ -4,14 +4,16 @@
 # 
 # Translators:
 # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2013.
+# CJTess <claudio.tessone@gmail.com>, 2013.
 #   <claudio.tessone@gmail.com>, 2012.
+# Javier Victor Mariano Bruno <koryyyy@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 20:50+0000\n"
+"Last-Translator: deftoner <koryyyy@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -19,27 +21,27 @@ msgstr ""
 "Language: es_AR\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Ayuda"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Personal"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Ajustes"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Usuarios"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Aplicaciones"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Administración"
 
@@ -51,15 +53,15 @@ msgstr "La descarga en ZIP está desactivada."
 msgid "Files need to be downloaded one by one."
 msgstr "Los archivos deben ser descargados de a uno."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Volver a archivos"
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Los archivos seleccionados son demasiado grandes para generar el archivo zip."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr "no pudo ser determinado"
 
@@ -87,16 +89,102 @@ msgstr "Texto"
 msgid "Images"
 msgstr "Imágenes"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Configurar un nombre de administrador"
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Configurar una palabra clave de administrador"
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Especificar un directorio de datos"
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s Entre el Usuario de la Base de Datos"
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s Entre el Nombre de la Base de Datos"
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s no puede usar puntos en el nombre de la Base de Datos"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s Especifique la dirección de la Base de Datos"
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nombre de usuario o contraseña de PostgradeSQL no válido."
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Debe ingresar una cuenta existente o el administrador"
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Usuario y/o contraseña MySQL no válido"
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Error DB: \"%s\""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "Usuario MySQL '%s'@'localhost' ya existente"
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr "Borrar este usuario de MySQL"
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "Usuario MySQL '%s'@'%%' ya existente"
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr "Borrar este usuario de MySQL"
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Tu servidor web no está configurado todavía para permitir sincronización de archivos porque la interfaz WebDAV parece no funcionar."
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Por favor, comprobá nuevamente la <a href='%s'>guía de instalación</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -150,16 +238,16 @@ msgstr "este año"
 msgid "years ago"
 msgstr "hace años"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s está disponible. Conseguí <a href=\"%s\">más información</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "actualizado"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "comprobar actualizaciones está desactivado"
 
diff --git a/l10n/es_AR/settings.po b/l10n/es_AR/settings.po
index a9d2e183b6e3fdf3f31220e869d5823918a0f91a..63f5ab1289e5ac818e2d500213cb4d8dd667f58d 100644
--- a/l10n/es_AR/settings.po
+++ b/l10n/es_AR/settings.po
@@ -6,13 +6,14 @@
 # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2012.
 # CJTess <claudio.tessone@gmail.com>, 2013.
 #   <claudio.tessone@gmail.com>, 2012.
+# Javier Victor Mariano Bruno <koryyyy@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
+"Last-Translator: deftoner <koryyyy@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,14 +25,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Imposible cargar la lista desde el App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Error al autenticar"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "No fue posible cambiar el nombre mostrado"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -83,13 +84,13 @@ msgstr "No fue posible añadir el usuario al grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "No es posible eliminar al usuario del grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "No se pudo actualizar la aplicación."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Actualizado a {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -101,15 +102,15 @@ msgstr "Activar"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Por favor, esperá...."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Actualizando...."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Error al actualizar"
 
 #: js/apps.js:87
 msgid "Error"
@@ -117,16 +118,222 @@ msgstr "Error"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Actualizado"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Guardando..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "borrado"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "deshacer"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Imposible remover usuario"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupo Administrador"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Borrar"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "Agregar grupo"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Debe ingresar un nombre de usuario válido"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Error creando usuario"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Debe ingresar una contraseña válida"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Castellano (Argentina)"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Advertencia de seguridad"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Tu directorio de datos y tus archivos son probablemente accesibles desde internet. El archivo .htaccess provisto por ownCloud no está funcionando. Te sugerimos que configures tu servidor web de manera que el directorio de datos ya no esté accesible, o que muevas el directorio de datos afuera del directorio raíz de tu servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Alerta de Configuración"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Tu servidor web no está configurado todavía para permitir sincronización de archivos porque la interfaz WebDAV parece no funcionar."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Por favor, comprobá nuevamente la <a href='%s'>guía de instalación</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Modulo 'fileinfo' no existe"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "El modulo PHP 'fileinfo' no existe. Es muy recomendable que active este modulo para obtener mejores resultados con la detección mime-type"
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "\"Locale\" no está funcionando"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "El servidor ownCloud no puede establecer el sistema locale a \"en_US.UTF-8\"/\"en_US.UTF8\". Esto significa que debe haber u problema con ciertos caracteres en los nombres de archivo. Le recomendamos instalar en su sitema los paquetes requeridos para soportar en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "La conexión a Internet no esta funcionando. "
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Ejecute una tarea con cada pagina cargada."
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Compartiendo"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Habilitar Share API"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Permitir a las aplicaciones usar la Share API"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Permitir enlaces"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Permitir a los usuarios compartir enlaces públicos"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Permitir Re-Compartir"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Permite a los usuarios volver a compartir items que le han compartido"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Permitir a los usuarios compartir con todos."
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Permitir a los usuarios compartir solo con los de su propio grupo"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Seguridad"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Forzar HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Forzar a los clientes conectar a ownCloud vía conexión encriptada"
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Log"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Nivel de Log"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Más"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versión"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Añadí tu aplicación"
@@ -180,116 +387,86 @@ msgstr "Soporte comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Usaste  <strong>%s</strong>  de los  <strong>%s</strong>  disponibles"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Descargar clientes de escritorio"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Descargar cliente de Android"
+msgid "Get the apps to sync your files"
+msgstr "Obtené aplicaciones para sincronizar tus archivos"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Descargar cliente de iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Mostrar de nuevo el asistente de primera ejecución"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Contraseña"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Tu contraseña fue cambiada"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "No fue posible cambiar tu contraseña"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Contraseña actual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nueva contraseña:"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostrar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Cambiar contraseña"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nombre a mostrar"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "El nombre mostrado fue cambiado"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "No fue posible cambiar tu nombre"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Cambiar nombre"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Correo electrónico"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Tu dirección de e-mail"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Escribí una dirección de correo electrónico para restablecer la contraseña"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ayudanos a traducir"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Utiliza esta dirección para conectarte con ownCloud en tu Administrador de Archivos"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versión"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nombre de "
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupos"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crear"
@@ -298,34 +475,26 @@ msgstr "Crear"
 msgid "Default Storage"
 msgstr "Almacenamiento Predeterminado"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ilimitado"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Otro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupo Administrador"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Almacenamiento"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "Cambiar el nombre que se muestra"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "Configurar nueva contraseña"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Predeterminado"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Borrar"
diff --git a/l10n/es_AR/user_ldap.po b/l10n/es_AR/user_ldap.po
index b0aad05a15d808e85de4dcd89466834fb8c46e07..83007895a3fb4388cfca657640e4d6548d50b902 100644
--- a/l10n/es_AR/user_ldap.po
+++ b/l10n/es_AR/user_ldap.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 00:20+0100\n"
+"PO-Revision-Date: 2013-02-11 16:10+0000\n"
+"Last-Translator: cjtess <claudio.tessone@gmail.com>\n"
 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -32,13 +32,13 @@ msgstr "La configuración es valida y la conexión pudo ser establecida."
 msgid ""
 "The configuration is valid, but the Bind failed. Please check the server "
 "settings and credentials."
-msgstr ""
+msgstr "La configuración es válida, pero el enlace falló. Por favor, comprobá la configuración del servidor y las credenciales."
 
 #: ajax/testConfiguration.php:40
 msgid ""
 "The configuration is invalid. Please look in the ownCloud log for further "
 "details."
-msgstr ""
+msgstr "La configuración no es válida. Por favor, buscá en el log de ownCloud más detalles."
 
 #: js/settings.js:66
 msgid "Deletion failed"
@@ -46,7 +46,7 @@ msgstr "Error al borrar"
 
 #: js/settings.js:82
 msgid "Take over settings from recent server configuration?"
-msgstr ""
+msgstr "Tomar los valores de la anterior configuración de servidor?"
 
 #: js/settings.js:83
 msgid "Keep settings?"
@@ -183,7 +183,7 @@ msgstr "Configuración activa"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
-msgstr ""
+msgstr "Si no está seleccionada, esta configuración será omitida."
 
 #: templates/settings.php:34
 msgid "Port"
@@ -191,17 +191,17 @@ msgstr "Puerto"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "Host para copia de seguridad (réplica)"
 
 #: templates/settings.php:35
 msgid ""
 "Give an optional backup host. It must be a replica of the main LDAP/AD "
 "server."
-msgstr ""
+msgstr "Dar un servidor de copia de seguridad opcional. Debe ser una réplica del servidor principal LDAP/AD."
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "Puerto para copia de seguridad (réplica)"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
@@ -209,7 +209,7 @@ msgstr "Deshabilitar el Servidor Principal"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
-msgstr ""
+msgstr "Al comenzar, ownCloud se conectará únicamente al servidor réplica"
 
 #: templates/settings.php:38
 msgid "Use TLS"
@@ -217,7 +217,7 @@ msgstr "Usar TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "No usar adicionalmente para conexiones LDAPS, las mismas fallarán"
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -263,11 +263,11 @@ msgstr "Una DN base de usuario por línea"
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
-msgstr ""
+msgstr "Atributos de la búsqueda de usuario"
 
 #: templates/settings.php:47 templates/settings.php:50
 msgid "Optional; one attribute per line"
-msgstr ""
+msgstr "Opcional; un atributo por linea"
 
 #: templates/settings.php:48
 msgid "Group Display Name Field"
@@ -287,7 +287,7 @@ msgstr "Una DN base de grupo por línea"
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "Atributos de búsqueda de grupo"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
diff --git a/l10n/et_EE/core.po b/l10n/et_EE/core.po
index 54c76b77460cf02a317b496c2d374c75af3febe2..8f4f783545a75c46b4dcbb9b527b7da957fa997e 100644
--- a/l10n/et_EE/core.po
+++ b/l10n/et_EE/core.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 18:20+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
@@ -157,59 +157,59 @@ msgstr "November"
 msgid "December"
 msgstr "Detsember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Seaded"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekundit tagasi"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minut tagasi"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minutit tagasi"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
-msgstr ""
+msgstr "1 tund tagasi"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "täna"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "eile"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} päeva tagasi"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "viimasel kuul"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "kuu tagasi"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "viimasel aastal"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "aastat tagasi"
 
@@ -239,8 +239,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Viga"
 
@@ -252,15 +252,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Jaga"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Jaga"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Viga jagamisel"
 
@@ -356,23 +356,23 @@ msgstr "kustuta"
 msgid "share"
 msgstr "jaga"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Parooliga kaitstud"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Viga aegumise kuupäeva eemaldamisel"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Viga aegumise kuupäeva määramisel"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/et_EE/files.po b/l10n/et_EE/files.po
index 3e795d756e086e08345597ad752cea4316c57114..c87495726974619ae9068541df2144aa562f9af4 100644
--- a/l10n/et_EE/files.po
+++ b/l10n/et_EE/files.po
@@ -4,13 +4,13 @@
 # 
 # Translators:
 #   <dagor.vint@hotmail.com>, 2012.
-# Rivo Zängov <eraser@eraser.ee>, 2011-2012.
+# Rivo Zängov <eraser@eraser.ee>, 2011-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
@@ -27,11 +27,11 @@ msgstr ""
 #: ajax/move.php:27 ajax/move.php:30
 #, php-format
 msgid "Could not move %s"
-msgstr ""
+msgstr "%s liigutamine ebaõnnestus"
 
 #: ajax/rename.php:22 ajax/rename.php:25
 msgid "Unable to rename file"
-msgstr ""
+msgstr "Faili ümbernimetamine ebaõnnestus"
 
 #: ajax/upload.php:19
 msgid "No file was uploaded. Unknown error"
@@ -70,25 +70,25 @@ msgstr "Kettale kirjutamine ebaõnnestus"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "Saadaval pole piisavalt ruumi"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
-msgstr ""
+msgstr "Vigane kaust."
 
 #: appinfo/app.php:10
 msgid "Files"
 msgstr "Failid"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Kustuta jäädavalt"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Kustuta"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "ümber"
 
@@ -131,11 +131,11 @@ msgstr ""
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
-msgstr ""
+msgstr "'.' on vigane failinimi."
 
 #: js/files.js:56
 msgid "File name cannot be empty."
-msgstr ""
+msgstr "Faili nimi ei saa olla tühi."
 
 #: js/files.js:64
 msgid ""
@@ -194,31 +194,31 @@ msgstr "URL ei saa olla tühi."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nimi"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Suurus"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Muudetud"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 kaust"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} kausta"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fail"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} faili"
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr "Allikast"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/et_EE/files_encryption.po b/l10n/et_EE/files_encryption.po
index 3f06b12afb2279d670b7ea39ba89791462861059..c2fe900d3ac6bf9eb3b9d8b078be582246065a9a 100644
--- a/l10n/et_EE/files_encryption.po
+++ b/l10n/et_EE/files_encryption.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Rivo Zängov <eraser@eraser.ee>, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 18:01+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,15 +24,15 @@ msgstr "Krüpteerimine"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Faili krüpteerimine on sisse lülitatud."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Järgnevaid failitüüpe ei krüpteerita:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Järgnevaid failitüüpe ei krüpteerita:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/et_EE/files_trashbin.po b/l10n/et_EE/files_trashbin.po
index e4e1d3e4372ff411c6c0aeb106295ce3408d7fc5..72073ead874522a32ecc51c431fd0b29e389d157 100644
--- a/l10n/et_EE/files_trashbin.po
+++ b/l10n/et_EE/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Rivo Zängov <eraser@eraser.ee>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 18:01+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "%s jäädavalt kustutamine ebaõnnestus"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "%s ei saa taastada"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "soorita taastamine"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "kustuta fail jäädavalt"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Nimi"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Kustutatud"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,8 +62,8 @@ msgstr "{count} faili"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Siin pole midagi. Sinu prügikast on tühi!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
-msgstr ""
+msgstr "Taasta"
diff --git a/l10n/et_EE/files_versions.po b/l10n/et_EE/files_versions.po
index b35f2b2c7e7359147a201116a6f24346e7197a0d..7ea31ed36145e8636087ec2ab83f76d8ef2fde78 100644
--- a/l10n/et_EE/files_versions.po
+++ b/l10n/et_EE/files_versions.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Rivo Zängov <eraser@eraser.ee>, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 18:01+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,7 +25,7 @@ msgstr ""
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "korras"
 
 #: history.php:42
 #, php-format
@@ -34,7 +34,7 @@ msgstr ""
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "ebaõnnestus"
 
 #: history.php:51
 #, php-format
@@ -43,11 +43,11 @@ msgstr ""
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Vanu versioone pole saadaval"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Asukohta pole määratud"
 
 #: js/versions.js:16
 msgid "History"
diff --git a/l10n/et_EE/lib.po b/l10n/et_EE/lib.po
index 0a5e2f9590d3c4b60bb5bd3a02974a6274910845..ff886e9b2d7b583d9445fe9073d2629c461fd2ce 100644
--- a/l10n/et_EE/lib.po
+++ b/l10n/et_EE/lib.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Rivo Zängov <eraser@eraser.ee>, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 18:20+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -86,13 +86,99 @@ msgstr "Tekst"
 msgid "Images"
 msgstr "Pildid"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Määra admin kasutajanimi."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Määra admini parool."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Määra andmete kaust."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Andmebaasi viga: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Kustuta see kasutaja MySQL-ist"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Kustuta see kasutaja MySQL-ist."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
@@ -112,12 +198,12 @@ msgstr "%d minutit tagasi"
 
 #: template.php:116
 msgid "1 hour ago"
-msgstr ""
+msgstr "1 tund tagasi"
 
 #: template.php:117
 #, php-format
 msgid "%d hours ago"
-msgstr ""
+msgstr "%d tundi tagasi"
 
 #: template.php:118
 msgid "today"
@@ -139,7 +225,7 @@ msgstr "eelmisel kuul"
 #: template.php:122
 #, php-format
 msgid "%d months ago"
-msgstr ""
+msgstr "%d kuud tagasi"
 
 #: template.php:123
 msgid "last year"
diff --git a/l10n/et_EE/settings.po b/l10n/et_EE/settings.po
index bd9993e5ebcc824ffeeb62ad7a1f32cdbdb97d9f..03ab0d4ca7c9fb5c8133490fbd378e821387c434 100644
--- a/l10n/et_EE/settings.po
+++ b/l10n/et_EE/settings.po
@@ -4,13 +4,13 @@
 # 
 # Translators:
 #   <icewind1991@gmail.com>, 2012.
-# Rivo Zängov <eraser@eraser.ee>, 2011-2012.
+# Rivo Zängov <eraser@eraser.ee>, 2011-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "App Sotre'i nimekirja laadimine ebaõnnestus"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentimise viga"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,13 +82,13 @@ msgstr "Kasutajat ei saa lisada gruppi %s"
 msgid "Unable to remove user from group %s"
 msgstr "Kasutajat ei saa eemaldada grupist %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Rakenduse uuendamine ebaõnnestus."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Uuenda versioonile {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -100,15 +100,15 @@ msgstr "Lülita sisse"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Palun oota..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Uuendamine..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Viga rakenduse uuendamisel"
 
 #: js/apps.js:87
 msgid "Error"
@@ -116,16 +116,222 @@ msgstr "Viga"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Uuendatud"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Salvestamine..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "kustutatud"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "tagasi"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupid"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupi admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Kustuta"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "lisa grupp"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Viga kasutaja loomisel"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Eesti"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Turvahoiatus"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Jagamine"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Turvalisus"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Sunni peale HTTPS-i kasutamine"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Logi"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Logi tase"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Rohkem"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versioon"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Lisa oma rakendus"
@@ -152,142 +358,112 @@ msgstr "Uuenda"
 
 #: templates/help.php:3
 msgid "User Documentation"
-msgstr ""
+msgstr "Kasutaja dokumentatsioon"
 
 #: templates/help.php:4
 msgid "Administrator Documentation"
-msgstr ""
+msgstr "Administraatori dokumentatsioon"
 
 #: templates/help.php:6
 msgid "Online Documentation"
-msgstr ""
+msgstr "Online dokumentatsioon"
 
 #: templates/help.php:7
 msgid "Forum"
-msgstr ""
+msgstr "Foorum"
 
 #: templates/help.php:9
 msgid "Bugtracker"
-msgstr ""
+msgstr "Vigade nimekiri"
 
 #: templates/help.php:11
 msgid "Commercial Support"
-msgstr ""
+msgstr "Tasuine kasutajatugi"
 
 #: templates/personal.php:8
 #, php-format
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Kliendid"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Parool"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Sinu parooli on muudetud"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Sa ei saa oma parooli muuta"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Praegune parool"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Uus parool"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "näita"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Muuda parooli"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "Näidatav nimi"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Muuda näidatavat nime"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-post"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Sinu e-posti aadress"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Parooli taastamise sisse lülitamiseks sisesta e-posti aadress"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Keel"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Aita tõlkida"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
-msgstr ""
+msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupid"
+msgstr "Kasutajanimi"
 
 #: templates/users.php:32
 msgid "Create"
@@ -297,34 +473,26 @@ msgstr "Lisa"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
-msgstr ""
+msgstr "Piiramatult"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Muu"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupi admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "muuda näidatavat nime"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "määra uus parool"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
-msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Kustuta"
+msgstr "Vaikeväärtus"
diff --git a/l10n/et_EE/user_webdavauth.po b/l10n/et_EE/user_webdavauth.po
index a2ccf77cee8cc6145abeaa53f22c8f8f4c6a200b..f4cdd7354ca8f3416891c8753a5a2653f93b95b0 100644
--- a/l10n/et_EE/user_webdavauth.po
+++ b/l10n/et_EE/user_webdavauth.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Rivo Zängov <eraser@eraser.ee>, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-15 00:03+0100\n"
-"PO-Revision-Date: 2013-01-14 23:04+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 17:40+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
 "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,13 +20,13 @@ msgstr ""
 
 #: templates/settings.php:3
 msgid "WebDAV Authentication"
-msgstr ""
+msgstr "WebDAV autentimine"
 
 #: templates/settings.php:4
 msgid "URL: http://"
-msgstr ""
+msgstr "URL: http://"
 
-#: templates/settings.php:6
+#: templates/settings.php:7
 msgid ""
 "ownCloud will send the user credentials to this URL. This plugin checks the "
 "response and will interpret the HTTP statuscodes 401 and 403 as invalid "
diff --git a/l10n/eu/core.po b/l10n/eu/core.po
index faa3a2a3a3bafcbbfe6e022c6ba52aec3a37e622..eede87d9e5a243129bf7598846503fbdcb3dccb4 100644
--- a/l10n/eu/core.po
+++ b/l10n/eu/core.po
@@ -11,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 21:40+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -56,7 +56,7 @@ msgstr "Ez dago gehitzeko kategoriarik?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Kategoria hau dagoeneko existitzen da: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -160,59 +160,59 @@ msgstr "Azaroa"
 msgid "December"
 msgstr "Abendua"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Ezarpenak"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segundu"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "orain dela minutu 1"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "orain dela {minutes} minutu"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "orain dela ordu bat"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "orain dela {hours} ordu"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "gaur"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "atzo"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "orain dela {days} egun"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "joan den hilabetean"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "orain dela {months} hilabete"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "hilabete"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "joan den urtean"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "urte"
 
@@ -242,8 +242,8 @@ msgid "The object type is not specified."
 msgstr "Objetu mota ez dago zehaztuta."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Errorea"
 
@@ -255,15 +255,15 @@ msgstr "App izena ez dago zehaztuta."
 msgid "The required file {file} is not installed!"
 msgstr "Beharrezkoa den {file} fitxategia ez dago instalatuta!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Elkarbanatu"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Elkarbanatuta"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Elkarbanatu"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Errore bat egon da elkarbanatzean"
 
@@ -359,23 +359,23 @@ msgstr "ezabatu"
 msgid "share"
 msgstr "elkarbanatu"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Pasahitzarekin babestuta"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Errorea izan da muga data kentzean"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Errore bat egon da muga data ezartzean"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Bidaltzen ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Eposta bidalia"
 
@@ -491,14 +491,14 @@ msgstr "Hausazko zenbaki sortzaile segururik gabe erasotzaile batek pasahitza be
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Zure data karpeta eta fitxategiak interneten bidez eskuragarri egon daitezke .htaccess fitxategia ez delako funtzionatzen ari."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Zure zerbitzaria ongi konfiguratzeko informazioa eskuratzeko, begiratu  <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentazioa</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -581,7 +581,7 @@ msgstr "Hasi saioa"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Beste erabiltzaile izenak"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/eu/files.po b/l10n/eu/files.po
index c7a7fc3d327a7b4b7ddfb9478525866f95a313b1..27a31c2ac492ac0155e3b42cac5fad0ffbf703a3 100644
--- a/l10n/eu/files.po
+++ b/l10n/eu/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr "Baliogabeko karpeta."
 msgid "Files"
 msgstr "Fitxategiak"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Ezabatu betirako"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Ezabatu"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Berrizendatu"
 
@@ -129,7 +129,7 @@ msgstr " {new_name}-k {old_name} ordezkatu du"
 
 #: js/filelist.js:322
 msgid "perform delete operation"
-msgstr ""
+msgstr "Ezabatu"
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
@@ -196,31 +196,31 @@ msgstr "URLa ezin da hutsik egon."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Baliogabeako karpeta izena. 'Shared' izena Owncloudek erreserbatzen du"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Izena"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamaina"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Aldatuta"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "karpeta bat"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} karpeta"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "fitxategi bat"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} fitxategi"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "Estekatik"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
@@ -316,4 +316,4 @@ msgstr "Orain eskaneatzen ari da"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
-msgstr ""
+msgstr "Fitxategi sistemaren katxea eguneratzen..."
diff --git a/l10n/eu/files_encryption.po b/l10n/eu/files_encryption.po
index 767e018b1fbca1858e178f0148fff4e941f3704c..d62efe1ac98cc7be7d0ec919e80bdee0191fb145 100644
--- a/l10n/eu/files_encryption.po
+++ b/l10n/eu/files_encryption.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 22:00+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +25,15 @@ msgstr "Enkriptazioa"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Fitxategien enkriptazioa gaituta dago."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Hurrengo fitxategi motak ez dira enkriptatuko:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Baztertu hurrengo fitxategi motak enkriptatzetik:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/eu/files_trashbin.po b/l10n/eu/files_trashbin.po
index 70120e4257a4e4708822996e1663dae35e950d71..405582e4205c73bb7dedfe6b0fc943bc2a9b0bf3 100644
--- a/l10n/eu/files_trashbin.po
+++ b/l10n/eu/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <asieriko@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 22:00+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Ezin izan da %s betirako ezabatu"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Ezin izan da %s berreskuratu"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "berreskuratu"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "ezabatu fitxategia betirako"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Izena"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Ezabatuta"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,7 +62,7 @@ msgstr "{count} fitxategi"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Ez dago ezer ez. Zure zakarrontzia hutsik dago!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/eu/files_versions.po b/l10n/eu/files_versions.po
index fdece04b8c39572bae2a163622ca32c17bb65c88..ddd2d92e947d3abbda54030738c07c5107db8dcb 100644
--- a/l10n/eu/files_versions.po
+++ b/l10n/eu/files_versions.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <asieriko@gmail.com>, 2013.
 #   <asieriko@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 22:10+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +22,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Ezin izan da leheneratu: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "arrakasta"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "%s fitxategia %s bertsiora leheneratu da"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "errorea"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "%s fitxategia ezin da %s bertsiora leheneratu"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Ez dago bertsio zaharrik eskuragarri"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Ez da bidea zehaztu"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +56,7 @@ msgstr "Historia"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Itzuli fitxategi bat aurreko bertsio batera leheneratu bere leheneratu botoia sakatuz"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/eu/lib.po b/l10n/eu/lib.po
index 45a8d4d0bc72b15af1795752f0cb1d70ea11fe7e..10ce4a215257ce9801d5204df0e4eb9b18a7dbda 100644
--- a/l10n/eu/lib.po
+++ b/l10n/eu/lib.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 22:00+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -87,16 +87,102 @@ msgstr "Testua"
 msgid "Images"
 msgstr "Irudiak"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Ezarri administraziorako erabiltzaile izena."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Ezarri administraziorako pasahitza."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Zehaztu data karpeta."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s sartu datu basearen erabiltzaile izena."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s sartu datu basearen izena."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s ezin duzu punturik erabili datu basearen izenean."
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s sartu datu basearen hostalaria."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL erabiltzaile edota pasahitza ez dira egokiak."
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Existitzen den kontu bat edo administradorearena jarri behar duzu."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Oracle erabiltzaile edota pasahitza ez dira egokiak."
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL erabiltzaile edota pasahitza ez dira egokiak."
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DB errorea: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Errorea komando honek sortu du: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL '%s'@'localhost' erabiltzailea dagoeneko existitzen da."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Ezabatu erabiltzaile hau MySQLtik"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL '%s'@'%%' erabiltzailea dagoeneko existitzen da"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Ezabatu erabiltzaile hau MySQLtik."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Errorea komando honek sortu du: \"%s\", izena: %s, pasahitza: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Zure web zerbitzaria ez dago oraindik ongi konfiguratuta fitxategien sinkronizazioa egiteko, WebDAV interfazea ongi ez dagoela dirudi."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Mesedez begiratu <a href='%s'>instalazio gidak</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/eu/settings.po b/l10n/eu/settings.po
index b605292a8ae9977db1dfd8654f01a2afd4c0082a..7e26109a3fd7eba1cb3a18d9068bc68b336f4ac9 100644
--- a/l10n/eu/settings.po
+++ b/l10n/eu/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
@@ -25,14 +25,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Ezin izan da App Dendatik zerrenda kargatu"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentifikazio errorea"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Ezin izan da bistaratze izena aldatu"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -84,13 +84,13 @@ msgstr "Ezin izan da erabiltzailea %s taldera gehitu"
 msgid "Unable to remove user from group %s"
 msgstr "Ezin izan da erabiltzailea %s taldetik ezabatu"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Ezin izan da aplikazioa eguneratu."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Eguneratu {appversion}-ra"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -102,15 +102,15 @@ msgstr "Gaitu"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Itxoin mesedez..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Eguneratzen..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Errorea aplikazioa eguneratzen zen bitartean"
 
 #: js/apps.js:87
 msgid "Error"
@@ -118,16 +118,222 @@ msgstr "Errorea"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Eguneratuta"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Gordetzen..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "ezabatuta"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "desegin"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Ezin izan da erabiltzailea aldatu"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Taldeak"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Talde administradorea"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Ezabatu"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "gehitu taldea"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Baliozko erabiltzaile izena eman behar da"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Errore bat egon da erabiltzailea sortzean"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Baliozko pasahitza eman behar da"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Euskera"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Segurtasun abisua"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Zure data karpeta eta zure fitxategiak internetetik zuzenean eskuragarri egon daitezke. ownCloudek emandako .htaccess fitxategia ez du bere lana egiten. Aholkatzen dizugu zure web zerbitzaria ongi konfiguratzea data karpeta eskuragarri ez izateko edo data karpeta web zerbitzariaren dokumentu errotik mugitzea."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Konfiguratu Abisuak"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Zure web zerbitzaria ez dago oraindik ongi konfiguratuta fitxategien sinkronizazioa egiteko, WebDAV interfazea ongi ez dagoela dirudi."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Mesedez begiratu <a href='%s'>instalazio gidak</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "'fileinfo' Modulua falta da"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "PHP 'fileinfo' modulua falta da. Modulu hau gaitzea aholkatzen dizugu mime-type ezberdinak hobe detektatzeko."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Lokala ez dabil"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Interneteko konexioak ez du funtzionatzen"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "ownCloud zerbitzari honen interneteko konexioa ez dabil. Honek esan nahi du kanpoko biltegiratze zerbitzuak, eguneraketen informazioa edo bestelako aplikazioen instalazioa bezalako programek ez dutela funtzionatuko. Urrunetik fitxategiak eskuratzea eta e-postak bidaltzea ere ezinezkoa izan daiteke. onwCloud-en aukera guztiak erabili ahal izateko zerbitzari honetan interneteko konexioa gaitzea aholkatzen dizugu."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Exekutatu zeregin bat orri karga bakoitzean"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php webcron zerbitzu batean erregistratua dago. Deitu cron.php orria ownclouden erroan minuturo http bidez."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Erabili sistemaren cron zerbitzua. Deitu cron.php fitxategia owncloud karpetan minuturo sistemaren cron lan baten bidez."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Partekatzea"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Gaitu Partekatze APIa"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Baimendu aplikazioak Partekatze APIa erabiltzeko"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Baimendu loturak"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Baimendu erabiltzaileak loturen bidez fitxategiak publikoki partekatzen"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Baimendu birpartekatzea"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Baimendu erabiltzaileak haiekin partekatutako fitxategiak berriz ere partekatzen"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Baimendu erabiltzaileak edonorekin partekatzen"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Baimendu erabiltzaileak bakarrik bere taldeko erabiltzaileekin partekatzen"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Segurtasuna"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Behartu HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Bezeroak konexio enkriptatu baten bidez ownCloud-era konektatzera behartzen du."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Mesedez konektatu ownCloud honetara HTTPS bidez SSL-ren beharra gaitu edo ezgaitzeko"
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Egunkaria"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Erregistro maila"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Gehiago"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Bertsioa"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komunitateak</a> garatuta, <a href=\"https://github.com/owncloud\" target=\"_blank\">itubruru kodea</a><a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr> lizentziarekin banatzen da</a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Gehitu zure aplikazioa"
@@ -181,116 +387,86 @@ msgstr "Babes komertziala"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Dagoeneko <strong>%s</strong> erabili duzu eskuragarri duzun <strong>%s</strong>etatik"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Bezeroak"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Deskargatu mahaigainerako bezeroak"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Deskargatu Android bezeroa"
+msgid "Get the apps to sync your files"
+msgstr "Lortu aplikazioak zure fitxategiak sinkronizatzeko"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Deskargatu iOS bezeroa"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Erakutsi berriz Lehenengo Aldiko Morroia"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Pasahitza"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Zere pasahitza aldatu da"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Ezin izan da zure pasahitza aldatu"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Uneko pasahitza"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Pasahitz berria"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "erakutsi"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Aldatu pasahitza"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Bistaratze Izena"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Zure bistaratze izena aldatu da"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Ezin izan da zure bistaratze izena aldatu"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Aldatu bistaratze izena"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-Posta"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Zure e-posta"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Idatz ezazu e-posta bat pasahitza berreskuratu ahal izateko"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Hizkuntza"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Lagundu itzultzen"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Erabili helbide hau zure fitxategi kudeatzailean zure ownCloudera konektatzeko"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Bertsioa"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komunitateak</a> garatuta, <a href=\"https://github.com/owncloud\" target=\"_blank\">itubruru kodea</a><a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr> lizentziarekin banatzen da</a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Sarrera Izena"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Taldeak"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Sortu"
@@ -299,34 +475,26 @@ msgstr "Sortu"
 msgid "Default Storage"
 msgstr "Lehenetsitako Biltegiratzea"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Mugarik gabe"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Besteak"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Talde administradorea"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Biltegiratzea"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "aldatu bistaratze izena"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "ezarri pasahitz berria"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Lehenetsia"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Ezabatu"
diff --git a/l10n/eu/user_ldap.po b/l10n/eu/user_ldap.po
index 5e0f44fe88b63db98e0c8bf0ce8dc1ba618027c5..23c282efa1a8a4b2889f1460346b618fe3637061 100644
--- a/l10n/eu/user_ldap.po
+++ b/l10n/eu/user_ldap.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 22:33+0000\n"
+"Last-Translator: asieriko <asieriko@gmail.com>\n"
 "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,23 +21,23 @@ msgstr ""
 
 #: ajax/deleteConfiguration.php:34
 msgid "Failed to delete the server configuration"
-msgstr ""
+msgstr "Zerbitzariaren konfigurazioa ezabatzeak huts egin du"
 
 #: ajax/testConfiguration.php:35
 msgid "The configuration is valid and the connection could be established!"
-msgstr ""
+msgstr "Konfigurazioa egokia da eta konexioa ezarri daiteke!"
 
 #: ajax/testConfiguration.php:37
 msgid ""
 "The configuration is valid, but the Bind failed. Please check the server "
 "settings and credentials."
-msgstr ""
+msgstr "Konfigurazioa ongi dago, baina Bind-ek huts egin du. Mesedez egiaztatu zerbitzariaren ezarpenak eta kredentzialak."
 
 #: ajax/testConfiguration.php:40
 msgid ""
 "The configuration is invalid. Please look in the ownCloud log for further "
 "details."
-msgstr ""
+msgstr "Konfigurazioa ez dago ongi. Mesedez ikusi ownCloud-en egunerokoa informazio gehiago eskuratzeko."
 
 #: js/settings.js:66
 msgid "Deletion failed"
@@ -49,27 +49,27 @@ msgstr ""
 
 #: js/settings.js:83
 msgid "Keep settings?"
-msgstr ""
+msgstr "Mantendu ezarpenak?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
-msgstr ""
+msgstr "Ezin da zerbitzariaren konfigurazioa gehitu"
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "Konexio froga ongi burutu da"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "Konexio frogak huts egin du"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
-msgstr ""
+msgstr "Ziur zaude Zerbitzariaren Konfigurazioa ezabatu nahi duzula?"
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "Baieztatu Ezabatzea"
 
 #: templates/settings.php:8
 msgid ""
@@ -86,11 +86,11 @@ msgstr "<b>Abisua:</b> PHPk behar duen LDAP modulua ez dago instalaturik, motorr
 
 #: templates/settings.php:15
 msgid "Server configuration"
-msgstr ""
+msgstr "Zerbitzariaren konfigurazioa"
 
 #: templates/settings.php:17
 msgid "Add Server Configuration"
-msgstr ""
+msgstr "Gehitu Zerbitzariaren Konfigurazioa"
 
 #: templates/settings.php:21
 msgid "Host"
@@ -174,15 +174,15 @@ msgstr "txantiloirik gabe, adb. \"objectClass=posixGroup\"."
 
 #: templates/settings.php:31
 msgid "Connection Settings"
-msgstr ""
+msgstr "Konexio Ezarpenak"
 
 #: templates/settings.php:33
 msgid "Configuration Active"
-msgstr ""
+msgstr "Konfigurazio Aktiboa"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
-msgstr ""
+msgstr "Markatuta ez dagoenean, konfigurazio hau ez da kontutan hartuko."
 
 #: templates/settings.php:34
 msgid "Port"
@@ -190,25 +190,25 @@ msgstr "Portua"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "Babeskopia (Replica) Ostalaria"
 
 #: templates/settings.php:35
 msgid ""
 "Give an optional backup host. It must be a replica of the main LDAP/AD "
 "server."
-msgstr ""
+msgstr "Eman babeskopia ostalari gehigarri bat. LDAP/AD zerbitzari nagusiaren replica bat izan behar da."
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "Babeskopia (Replica) Ataka"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
-msgstr ""
+msgstr "Desgaitu Zerbitzari Nagusia"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
-msgstr ""
+msgstr "Markatuta dagoenean, ownCloud bakarrik replica zerbitzarira konektatuko da."
 
 #: templates/settings.php:38
 msgid "Use TLS"
@@ -216,7 +216,7 @@ msgstr "Erabili TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Ez erabili LDAPS konexioetarako, huts egingo du."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -242,7 +242,7 @@ msgstr "segundutan. Aldaketak katxea husten du."
 
 #: templates/settings.php:43
 msgid "Directory Settings"
-msgstr ""
+msgstr "Karpetaren Ezarpenak"
 
 #: templates/settings.php:45
 msgid "User Display Name Field"
@@ -262,11 +262,11 @@ msgstr "Erabiltzaile DN Oinarri bat lerroko"
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
-msgstr ""
+msgstr "Erabili Bilaketa Atributuak "
 
 #: templates/settings.php:47 templates/settings.php:50
 msgid "Optional; one attribute per line"
-msgstr ""
+msgstr "Aukerakoa; atributu bat lerro bakoitzeko"
 
 #: templates/settings.php:48
 msgid "Group Display Name Field"
@@ -286,7 +286,7 @@ msgstr "Talde DN Oinarri bat lerroko"
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "Taldekatu Bilaketa Atributuak "
 
 #: templates/settings.php:51
 msgid "Group-Member association"
@@ -294,7 +294,7 @@ msgstr "Talde-Kide elkarketak"
 
 #: templates/settings.php:53
 msgid "Special Attributes"
-msgstr ""
+msgstr "Atributu Bereziak"
 
 #: templates/settings.php:56
 msgid "in bytes"
diff --git a/l10n/fa/core.po b/l10n/fa/core.po
index de2bbcd700525a635e06d726cb651fa780f2b9e8..068bba91488583839ee39ff4dff4e3df526064c4 100644
--- a/l10n/fa/core.po
+++ b/l10n/fa/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 11:00+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "نوامبر"
 msgid "December"
 msgstr "دسامبر"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "تنظیمات"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "ثانیه‌ها پیش"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 دقیقه پیش"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{دقیقه ها} دقیقه های پیش"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 ساعت پیش"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{ساعت ها} ساعت ها پیش"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "امروز"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "دیروز"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{روزها} روزهای پیش"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "ماه قبل"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{ماه ها} ماه ها پیش"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "ماه‌های قبل"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "سال قبل"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "سال‌های قبل"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr "نوع شی تعیین نشده است."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "خطا"
 
@@ -253,15 +253,15 @@ msgstr "نام برنامه تعیین نشده است."
 msgid "The required file {file} is not installed!"
 msgstr "پرونده { پرونده} درخواست شده نصب نشده است !"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "اشتراک‌گزاری"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "اشتراک‌گزاری"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "خطا درحال به اشتراک گذاشتن"
 
@@ -357,23 +357,23 @@ msgstr "پاک کردن"
 msgid "share"
 msgstr "به اشتراک گذاشتن"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "نگهداری از رمز عبور"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "خطا در تنظیم نکردن تاریخ انقضا "
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "خطا در تنظیم تاریخ انقضا"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/fa/files.po b/l10n/fa/files.po
index ace120766b4b62973a577dd3e668ccf7d93caac1..478ca3405cb401a3f5847a8a58e838533a22c43c 100644
--- a/l10n/fa/files.po
+++ b/l10n/fa/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr "فهرست راهنما نامعتبر می باشد."
 msgid "Files"
 msgstr "فایل ها"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "پاک کردن"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "تغییرنام"
 
@@ -196,31 +196,31 @@ msgstr "URL  نمی تواند خالی باشد."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "نام پوشه نامعتبر است. استفاده از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "نام"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "اندازه"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "تغییر یافته"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 پوشه"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{ شمار} پوشه ها"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 پرونده"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{ شمار } فایل ها"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "از پیوند"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/fa/files_trashbin.po b/l10n/fa/files_trashbin.po
index a9bffbf81b1133e14e61511e23c2589da16d8752..435d45e463f2d669965c377fd6c83619045cd2d9 100644
--- a/l10n/fa/files_trashbin.po
+++ b/l10n/fa/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/fa/lib.po b/l10n/fa/lib.po
index e5a7af775256b82406007d6c84aee8a93a62f24e..5454ea40b1e048f64475f6352b32d5b19c602ec3 100644
--- a/l10n/fa/lib.po
+++ b/l10n/fa/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "متن"
 msgid "Images"
 msgstr "تصاویر"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/fa/settings.po b/l10n/fa/settings.po
index f38f77bf14e89a0e0b68d3db106a9415c54900f0..9f1935684b78de8deddaf1d503792515b192bf7c 100644
--- a/l10n/fa/settings.po
+++ b/l10n/fa/settings.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
@@ -26,14 +26,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "قادر به بارگذاری لیست از فروشگاه اپ نیستم"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "خطا در اعتبار سنجی"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "امکان تغییر نام نمایشی شما وجود ندارد"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -73,7 +73,7 @@ msgstr "درخواست غیر قابل قبول"
 
 #: ajax/togglegroups.php:12
 msgid "Admins can't remove themself from the admin group"
-msgstr ""
+msgstr "مدیران نمی توانند خود را از گروه مدیریت حذف کنند"
 
 #: ajax/togglegroups.php:28
 #, php-format
@@ -85,7 +85,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -125,10 +125,216 @@ msgstr "بروز رسانی انجام شد"
 msgid "Saving..."
 msgstr "درحال ذخیره ..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "حذف شده"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "بازگشت"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "گروه ها"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "پاک کردن"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "اخطار امنیتی"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "بیش‌تر"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "نسخه"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "برنامه خود را بیافزایید"
@@ -155,11 +361,11 @@ msgstr "به روز رسانی"
 
 #: templates/help.php:3
 msgid "User Documentation"
-msgstr ""
+msgstr "مستندات کاربر"
 
 #: templates/help.php:4
 msgid "Administrator Documentation"
-msgstr ""
+msgstr "مستندات مدیر"
 
 #: templates/help.php:6
 msgid "Online Documentation"
@@ -175,122 +381,92 @@ msgstr ""
 
 #: templates/help.php:11
 msgid "Commercial Support"
-msgstr ""
+msgstr "پشتیبانی تجاری"
 
 #: templates/personal.php:8
 #, php-format
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "مشتریان"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr ""
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "راهبری کمکی اجرای اول را دوباره نمایش بده"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "گذرواژه"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "رمز عبور شما تغییر یافت"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "ناتوان در تغییر گذرواژه"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "گذرواژه کنونی"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "گذرواژه جدید"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "نمایش"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "تغییر گذر واژه"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "نام نمایشی"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "نام نمایشی شما تغییر یافت"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "امکان تغییر نام نمایشی شما وجود ندارد"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "تغییر نام نمایشی"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "پست الکترونیکی"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "پست الکترونیکی شما"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "پست الکترونیکی را پرکنید  تا بازیابی گذرواژه فعال شود"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "زبان"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "به ترجمه آن کمک کنید"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "نسخه"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "گروه ها"
+msgstr "نام کاربری"
 
 #: templates/users.php:32
 msgid "Create"
@@ -300,34 +476,26 @@ msgstr "ایجاد کردن"
 msgid "Default Storage"
 msgstr "ذخیره سازی پیش فرض"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "نامحدود"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "سایر"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "حافظه"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "تغییر نام نمایشی"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "تنظیم کلمه عبور جدید"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "پیش فرض"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "پاک کردن"
diff --git a/l10n/fa/user_ldap.po b/l10n/fa/user_ldap.po
index 4297459853fe89c0536b12d5095eca7447e413b9..029b1993ac9c49f4243dc450983f98af75a2b2ed 100644
--- a/l10n/fa/user_ldap.po
+++ b/l10n/fa/user_ldap.po
@@ -3,15 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Amir Reza Asadi <amirreza.asadi@live.com>, 2013.
 # mahdi Kereshteh <miki_mika1362@yahoo.com>, 2013.
 # Mohammad Dashtizadeh <mohammad@dashtizadeh.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 10:50+0000\n"
+"Last-Translator: Amir Reza Asadi <amirreza.asadi@live.com>\n"
 "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,11 +22,11 @@ msgstr ""
 
 #: ajax/deleteConfiguration.php:34
 msgid "Failed to delete the server configuration"
-msgstr ""
+msgstr "عملیات حذف پیکربندی سرور ناموفق ماند"
 
 #: ajax/testConfiguration.php:35
 msgid "The configuration is valid and the connection could be established!"
-msgstr ""
+msgstr "پیکربندی معتبر است و ارتباط می تواند برقرار شود"
 
 #: ajax/testConfiguration.php:37
 msgid ""
@@ -57,19 +58,19 @@ msgstr ""
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "تست اتصال با موفقیت انجام گردید"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "تست اتصال ناموفق بود"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
-msgstr ""
+msgstr "آیا واقعا می خواهید پیکربندی کنونی سرور را حذف کنید؟"
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "تایید حذف"
 
 #: templates/settings.php:8
 msgid ""
@@ -86,11 +87,11 @@ msgstr ""
 
 #: templates/settings.php:15
 msgid "Server configuration"
-msgstr ""
+msgstr "پیکربندی سرور"
 
 #: templates/settings.php:17
 msgid "Add Server Configuration"
-msgstr ""
+msgstr "افزودن پیکربندی سرور"
 
 #: templates/settings.php:21
 msgid "Host"
@@ -298,7 +299,7 @@ msgstr ""
 
 #: templates/settings.php:56
 msgid "in bytes"
-msgstr ""
+msgstr "در بایت"
 
 #: templates/settings.php:58
 msgid ""
diff --git a/l10n/fi_FI/core.po b/l10n/fi_FI/core.po
index fef4938627f317592d2feccbbf8c9f77f90781e8..80e0cb1870dfe500607ad989c315cb47259f3089 100644
--- a/l10n/fi_FI/core.po
+++ b/l10n/fi_FI/core.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 14:00+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -163,59 +163,59 @@ msgstr "Marraskuu"
 msgid "December"
 msgstr "Joulukuu"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Asetukset"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekuntia sitten"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minuutti sitten"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minuuttia sitten"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 tunti sitten"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} tuntia sitten"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "tänään"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "eilen"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} päivää sitten"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "viime kuussa"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} kuukautta sitten"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "kuukautta sitten"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "viime vuonna"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "vuotta sitten"
 
@@ -245,8 +245,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Virhe"
 
@@ -258,15 +258,15 @@ msgstr "Sovelluksen nimeä ei ole määritelty."
 msgid "The required file {file} is not installed!"
 msgstr "Vaadittua tiedostoa {file} ei ole asennettu!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Jaa"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Jaa"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Virhe jaettaessa"
 
@@ -362,23 +362,23 @@ msgstr "poista"
 msgid "share"
 msgstr "jaa"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Salasanasuojattu"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Virhe purettaessa eräpäivää"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Virhe päättymispäivää asettaessa"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Lähetetään..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Sähköposti lähetetty"
 
@@ -494,14 +494,14 @@ msgstr ""
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Datakansiosi ja tiedostosi ovat mitä luultavimmin muiden saavutettavissa internetistä, koska .htaccess-tiedosto ei toimi."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Katso palvelimen asetuksien määrittämiseen liittyvät ohjeet <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentaatiosta</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/fi_FI/files.po b/l10n/fi_FI/files.po
index 6a00c9da8d3d883d2c20969983ff1964896cf2aa..e42625a78a7c8d0efef54af9fcb4a000727deb55 100644
--- a/l10n/fi_FI/files.po
+++ b/l10n/fi_FI/files.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
@@ -83,15 +83,15 @@ msgstr "Virheellinen kansio."
 msgid "Files"
 msgstr "Tiedostot"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Poista pysyvästi"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Poista"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Nimeä uudelleen"
 
@@ -197,31 +197,31 @@ msgstr "Verkko-osoite ei voi olla tyhjä"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nimi"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Koko"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Muutettu"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 kansio"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} kansiota"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 tiedosto"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} tiedostoa"
 
@@ -278,7 +278,7 @@ msgid "From link"
 msgstr "Linkistä"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/fi_FI/files_encryption.po b/l10n/fi_FI/files_encryption.po
index 00e3d63dbb34ba095740dd0080be0dabe09360df..3833503da06b99fafc70a4631898978e68e5490c 100644
--- a/l10n/fi_FI/files_encryption.po
+++ b/l10n/fi_FI/files_encryption.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 07:40+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,15 +24,15 @@ msgstr "Salaus"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Tiedostojen salaus on käytössä."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Seuraavia tiedostotyyppejä ei salata:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Älä salaa seuravia tiedostotyyppejä:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/fi_FI/files_external.po b/l10n/fi_FI/files_external.po
index 7b2a88bd1b2c3b6ac94dffea5aa359f9942f80fc..1ccd529b50fbd75c59811e3427f630bd4101ead4 100644
--- a/l10n/fi_FI/files_external.po
+++ b/l10n/fi_FI/files_external.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-03 00:04+0100\n"
-"PO-Revision-Date: 2013-02-02 14:01+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 13:50+0000\n"
 "Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
@@ -28,29 +28,29 @@ msgstr "Pääsy sallittu"
 msgid "Error configuring Dropbox storage"
 msgstr "Virhe Dropbox levyn asetuksia tehtäessä"
 
-#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41
+#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40
 msgid "Grant access"
 msgstr "Salli pääsy"
 
-#: js/dropbox.js:73 js/google.js:73
+#: js/dropbox.js:73 js/google.js:72
 msgid "Fill out all required fields"
 msgstr "Täytä kaikki vaaditut kentät"
 
 #: js/dropbox.js:85
 msgid "Please provide a valid Dropbox app key and secret."
-msgstr ""
+msgstr "Anna kelvollinen Dropbox-sovellusavain ja salainen vastaus."
 
-#: js/google.js:26 js/google.js:74 js/google.js:79
+#: js/google.js:26 js/google.js:73 js/google.js:78
 msgid "Error configuring Google Drive storage"
 msgstr "Virhe Google Drive levyn asetuksia tehtäessä"
 
-#: lib/config.php:405
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr "<b>Varoitus:</b> \"smbclient\" ei ole asennettuna. CIFS-/SMB-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan smbclient."
 
-#: lib/config.php:406
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
 " of FTP shares is not possible. Please ask your system administrator to "
diff --git a/l10n/fi_FI/files_trashbin.po b/l10n/fi_FI/files_trashbin.po
index 27afca0a85b02334bd890396fa788e96edc45c47..e64f9fdafb62a3f45760f74063b841a6a80ac90a 100644
--- a/l10n/fi_FI/files_trashbin.po
+++ b/l10n/fi_FI/files_trashbin.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 07:40+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Kohdetta %s ei voitu poistaa pysyvästi"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Kohteen %s palautus epäonnistui"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
@@ -34,7 +34,7 @@ msgstr "suorita palautustoiminto"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "poista tiedosto pysyvästi"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
diff --git a/l10n/fi_FI/files_versions.po b/l10n/fi_FI/files_versions.po
index f8ce72e1e07b0be80304203170e7f1f141573ddc..5cd06f949b2f27ee9a28a27fb0845b5be8245f3e 100644
--- a/l10n/fi_FI/files_versions.po
+++ b/l10n/fi_FI/files_versions.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 07:30+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +21,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Palautus epäonnistui: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "onnistui"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Tiedosto %s palautettiin versioon %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "epäonnistui"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Tiedoston %s palautus versioon %s epäonnistui"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Vanhoja ei ole saatavilla"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Polkua ei ole määritetty"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +55,7 @@ msgstr "Historia"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Palauta tiedoston edellinen versio napsauttamalla palautuspainiketta"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/fi_FI/lib.po b/l10n/fi_FI/lib.po
index 733af913899ab8173cdae809f6555d792ce4f983..dd0f5e0fad598f5fe957d775a1d8f957668a9486 100644
--- a/l10n/fi_FI/lib.po
+++ b/l10n/fi_FI/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 07:30+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,27 +18,27 @@ msgstr ""
 "Language: fi_FI\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Ohje"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Henkilökohtainen"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Asetukset"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Käyttäjät"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Sovellukset"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Ylläpitäjä"
 
@@ -50,15 +50,15 @@ msgstr "ZIP-lataus on poistettu käytöstä."
 msgid "Files need to be downloaded one by one."
 msgstr "Tiedostot on ladattava yksittäin."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Takaisin tiedostoihin"
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Valitut tiedostot ovat liian suurikokoisia mahtuakseen zip-tiedostoon."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr "ei voitu määrittää"
 
@@ -86,16 +86,102 @@ msgstr "Teksti"
 msgid "Images"
 msgstr "Kuvat"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Aseta ylläpitäjän käyttäjätunnus."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Aseta ylläpitäjän salasana."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Määritä datakansio."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL:n käyttäjätunnus ja/tai salasana on väärin"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr "Oraclen käyttäjätunnus ja/tai salasana on väärin"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL:n käyttäjätunnus ja/tai salasana on väärin"
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Tietokantavirhe: \"%s\""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL-käyttäjä '%s'@'localhost' on jo olemassa."
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL-käyttäjä '%s'@'%%' on jo olemassa"
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Lue tarkasti <a href='%s'>asennusohjeet</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -149,16 +235,16 @@ msgstr "viime vuonna"
 msgid "years ago"
 msgstr "vuotta sitten"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s on saatavilla. Lue <a href=\"%s\">lisätietoja</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "ajan tasalla"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "päivitysten tarkistus on pois käytöstä"
 
diff --git a/l10n/fi_FI/settings.po b/l10n/fi_FI/settings.po
index f31845d910bc7467746dedbd9d011a71b0bddba5..e1db381273401b57ee61986e07bd8a0f56f6a75f 100644
--- a/l10n/fi_FI/settings.po
+++ b/l10n/fi_FI/settings.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 07:30+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,14 +24,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Ei pystytä lataamaan listaa sovellusvarastosta (App Store)"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Todennusvirhe"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Näyttönimen muuttaminen epäonnistui"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -83,7 +83,7 @@ msgstr "Käyttäjän tai ryhmän %s lisääminen ei onnistu"
 msgid "Unable to remove user from group %s"
 msgstr "Käyttäjän poistaminen ryhmästä %s ei onnistu"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Sovelluksen päivitys epäonnistui."
 
@@ -123,10 +123,216 @@ msgstr "Päivitetty"
 msgid "Saving..."
 msgstr "Tallennetaan..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "poistettu"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "kumoa"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Käyttäjän poistaminen ei onnistunut"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Ryhmät"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Ryhmän ylläpitäjä"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Poista"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "lisää ryhmä"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Virhe käyttäjää luotaessa"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "_kielen_nimi_"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Turvallisuusvaroitus"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Data-kansio ja tiedostot ovat ehkä saavutettavissa Internetistä. .htaccess-tiedosto, jolla kontrolloidaan pääsyä, ei toimi. Suosittelemme, että muutat web-palvelimesi asetukset niin ettei data-kansio ole enää pääsyä tai siirrät data-kansion pois web-palvelimen tiedostojen juuresta."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Lue tarkasti <a href='%s'>asennusohjeet</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Moduuli 'fileinfo' puuttuu"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Internet-yhteys ei toimi"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Jakaminen"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Käytä jakamisen ohjelmointirajapintaa"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Salli sovellusten käyttää jakamisen ohjelmointirajapintaa"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Salli linkit"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Salli käyttäjien jakaa kohteita käyttäen linkkejä"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Salli uudelleenjakaminen"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Mahdollistaa käyttäjien jakavan uudelleen heidän kanssaan jaettuja kohteita"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Salli käyttäjien jakaa kenen tahansa kanssa"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Salli jakaminen vain samoissa ryhmissä olevien käyttäjien kesken"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Tietoturva"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Pakota HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Pakottaa salaamaan ownCloudiin kohdistuvat yhteydet."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Loki"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Lokitaso"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Enemmän"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versio"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-yhteisö</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">lähdekoodi</a> on julkaistu lisenssin <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> alaisena."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Lisää sovelluksesi"
@@ -180,116 +386,86 @@ msgstr "Kaupallinen tuki"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Käytössäsi on <strong>%s</strong>/<strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Asiakkaat"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Lataa työpöytäsovelluksia"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Lataa Android-sovellus"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Lataa iOS-sovellus"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Näytä ensimmäisen käyttökerran avustaja uudelleen"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Salasana"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Salasanasi vaihdettiin"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Salasanaasi ei voitu vaihtaa"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Nykyinen salasana"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Uusi salasana"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "näytä"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Vaihda salasana"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Näyttönimi"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Näyttönimesi muutettiin"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Näyttönimen muuttaminen epäonnistui"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Muuta näyttönimeä"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Sähköposti"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Sähköpostiosoitteesi"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Anna sähköpostiosoitteesi, jotta unohdettu salasana on mahdollista palauttaa"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Kieli"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Auta kääntämisessä"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Käytä tätä osoitetta yhdistäessäsi ownCloudiisi tiedostonhallintaa käyttäen"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versio"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-yhteisö</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">lähdekoodi</a> on julkaistu lisenssin <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> alaisena."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Kirjautumisnimi"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Ryhmät"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Luo"
@@ -298,34 +474,26 @@ msgstr "Luo"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Rajoittamaton"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Muu"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Ryhmän ylläpitäjä"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "vaihda näyttönimi"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "aseta uusi salasana"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Oletus"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Poista"
diff --git a/l10n/fi_FI/user_ldap.po b/l10n/fi_FI/user_ldap.po
index 14247957dd3d5cdd98d493e6b549ea32135d0282..3a56d21654cccf225b1502e136be6e04be9a137f 100644
--- a/l10n/fi_FI/user_ldap.po
+++ b/l10n/fi_FI/user_ldap.po
@@ -4,15 +4,15 @@
 # 
 # Translators:
 #   <jarkko.moilanen@want3d.fi>, 2012.
-# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012-2013.
 #   <tehoratopato@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 07:40+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -50,19 +50,19 @@ msgstr ""
 
 #: js/settings.js:83
 msgid "Keep settings?"
-msgstr ""
+msgstr "Säilytetäänkö asetukset?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
-msgstr ""
+msgstr "Palvelinasetusten lisäys epäonnistui"
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "Yhteystesti onnistui"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "Yhteystesti epäonnistui"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
@@ -70,7 +70,7 @@ msgstr ""
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "Vahvista poisto"
 
 #: templates/settings.php:8
 msgid ""
@@ -175,7 +175,7 @@ msgstr "ilman paikanvaraustermiä, ts. \"objectClass=posixGroup\"."
 
 #: templates/settings.php:31
 msgid "Connection Settings"
-msgstr ""
+msgstr "Yhteysasetukset"
 
 #: templates/settings.php:33
 msgid "Configuration Active"
@@ -205,7 +205,7 @@ msgstr ""
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
-msgstr ""
+msgstr "Poista pääpalvelin käytöstä"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
@@ -243,7 +243,7 @@ msgstr "sekunneissa. Muutos tyhjentää välimuistin."
 
 #: templates/settings.php:43
 msgid "Directory Settings"
-msgstr ""
+msgstr "Hakemistoasetukset"
 
 #: templates/settings.php:45
 msgid "User Display Name Field"
diff --git a/l10n/fi_FI/user_webdavauth.po b/l10n/fi_FI/user_webdavauth.po
index c42c6d288e6cca996ddb82eba6a0f920ed878cdc..e1fa0ca8d17ce9550bb8f057265e1ed6998fb8bb 100644
--- a/l10n/fi_FI/user_webdavauth.po
+++ b/l10n/fi_FI/user_webdavauth.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-15 00:03+0100\n"
-"PO-Revision-Date: 2013-01-14 23:04+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 14:00+0000\n"
+"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
 "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,13 +20,13 @@ msgstr ""
 
 #: templates/settings.php:3
 msgid "WebDAV Authentication"
-msgstr ""
+msgstr "WebDAV-todennus"
 
 #: templates/settings.php:4
 msgid "URL: http://"
-msgstr ""
+msgstr "Osoite: http://"
 
-#: templates/settings.php:6
+#: templates/settings.php:7
 msgid ""
 "ownCloud will send the user credentials to this URL. This plugin checks the "
 "response and will interpret the HTTP statuscodes 401 and 403 as invalid "
diff --git a/l10n/fr/core.po b/l10n/fr/core.po
index 1454975ea7f50b274116c1197f9ccea331119101..ab6b14e83961d945d01ab500ed68dc5c3250ea34 100644
--- a/l10n/fr/core.po
+++ b/l10n/fr/core.po
@@ -14,15 +14,16 @@
 # Nahir Mohamed <nahirmoha@gmail.com>, 2012.
 #   <nathaplop@gmail.com>, 2012.
 #   <nicolas@shivaserv.fr>, 2012.
+# Robert Di Rosa <>, 2013.
 #   <rom1dep@gmail.com>, 2011.
 # Romain DEP. <rom1dep@gmail.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Robert Di Rosa <>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -169,59 +170,59 @@ msgstr "novembre"
 msgid "December"
 msgstr "décembre"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Paramètres"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "il y a quelques secondes"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "il y a une minute"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "il y a {minutes} minutes"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Il y a une heure"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Il y a {hours} heures"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "aujourd'hui"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "hier"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "il y a {days} jours"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "le mois dernier"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Il y a {months} mois"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "il y a plusieurs mois"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "l'année dernière"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "il y a plusieurs années"
 
@@ -251,8 +252,8 @@ msgid "The object type is not specified."
 msgstr "Le type d'objet n'est pas spécifié."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Erreur"
 
@@ -264,15 +265,15 @@ msgstr "Le nom de l'application n'est pas spécifié."
 msgid "The required file {file} is not installed!"
 msgstr "Le fichier requis {file} n'est pas installé !"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Partager"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Partagé"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Partager"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Erreur lors de la mise en partage"
 
@@ -368,23 +369,23 @@ msgstr "supprimer"
 msgid "share"
 msgstr "partager"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protégé par un mot de passe"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Une erreur est survenue pendant la suppression de la date d'expiration"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Erreur lors de la spécification de la date d'expiration"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "En cours d'envoi ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Email envoyé"
 
@@ -500,14 +501,14 @@ msgstr "Sans générateur de nombre aléatoire sécurisé, un attaquant peut êt
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Votre répertoire data est certainement accessible depuis l'internet car le fichier .htaccess ne semble pas fonctionner"
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Pour les informations de configuration de votre serveur, veuillez lire la <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/fr/files.po b/l10n/fr/files.po
index 2ed23104805e878693c27423f3f84910773b67ff..9e0b0e3a7ae53cc36fd1b8588879bc3a156ed67a 100644
--- a/l10n/fr/files.po
+++ b/l10n/fr/files.po
@@ -14,15 +14,15 @@
 # Guillaume Paumier <guillom.pom@gmail.com>, 2012.
 #   <life_0n_mars@live.fr>, 2012.
 # Nahir Mohamed <nahirmoha@gmail.com>, 2012.
-# Robert Di Rosa <>, 2012.
+# Robert Di Rosa <>, 2012-2013.
 #   <rom1dep@gmail.com>, 2011.
 # Romain DEP. <rom1dep@gmail.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
@@ -92,15 +92,15 @@ msgstr "Dossier invalide."
 msgid "Files"
 msgstr "Fichiers"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Supprimer de façon définitive"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Supprimer"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Renommer"
 
@@ -206,31 +206,31 @@ msgstr "L'URL ne peut-être vide"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nom"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Taille"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modifié"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 dossier"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} dossiers"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fichier"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} fichiers"
 
@@ -287,7 +287,7 @@ msgid "From link"
 msgstr "Depuis le lien"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/fr/files_trashbin.po b/l10n/fr/files_trashbin.po
index 23b922f8f1c92be693ef629c908ee018a5a3cdfc..7f4f4cbbf7da9e29ab6808ae7e6f1860c820a783 100644
--- a/l10n/fr/files_trashbin.po
+++ b/l10n/fr/files_trashbin.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 14:03+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
 "Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/fr/lib.po b/l10n/fr/lib.po
index ab80f084dff6707a96ad1b13284f3ba0dbb2efdf..25508c784b07922b266ebff43a96ab83e625f522 100644
--- a/l10n/fr/lib.po
+++ b/l10n/fr/lib.po
@@ -4,14 +4,15 @@
 # 
 # Translators:
 # Geoffrey Guerrier <geoffrey.guerrier@gmail.com>, 2012.
+# Robert Di Rosa <>, 2013.
 # Romain DEP. <rom1dep@gmail.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -87,16 +88,102 @@ msgstr "Texte"
 msgid "Images"
 msgstr "Images"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Spécifiez un nom d'utilisateur pour l'administrateur."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Spécifiez un mot de passe administrateur."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Spécifiez un répertoire pour les données."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s entrez le nom d'utilisateur de la base de données."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s entrez le nom de la base de données."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s vous nez pouvez pas utiliser de points dans le nom de la base de données"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s spécifiez l'hôte de la base de données."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nom d'utilisateur et/ou mot de passe de la base PostgreSQL invalide"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Vous devez spécifier soit le nom d'un compte existant, soit celui de l'administrateur."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Nom d'utilisateur et/ou mot de passe de la base Oracle invalide"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Nom d'utilisateur et/ou mot de passe de la base MySQL invalide"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Erreur de la base de données : \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "La requête en cause est : \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "L'utilisateur MySQL '%s'@'localhost' existe déjà."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Retirer cet utilisateur de la base MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "L'utilisateur MySQL '%s'@'%%' existe déjà"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Retirer cet utilisateur de la base MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "La requête en cause est : \"%s\", nom : %s, mot de passe : %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Votre serveur web, n'est pas correctement configuré pour permettre la synchronisation des fichiers, car l'interface WebDav ne fonctionne pas comme il faut."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Veuillez vous référer au <a href='%s'>guide d'installation</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/fr/settings.po b/l10n/fr/settings.po
index edf75b638a000ea722e1bfd578514696db21515e..b165922be018ae5c1e4a384c43e99be1fcb7b913 100644
--- a/l10n/fr/settings.po
+++ b/l10n/fr/settings.po
@@ -24,9 +24,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 14:01+0000\n"
-"Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -38,12 +38,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Impossible de charger la liste depuis l'App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Erreur d'authentification"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Impossible de modifier le nom d'affichage"
 
@@ -97,7 +97,7 @@ msgstr "Impossible d'ajouter l'utilisateur au groupe %s"
 msgid "Unable to remove user from group %s"
 msgstr "Impossible de supprimer l'utilisateur du groupe %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Impossible de mettre à jour l'application"
 
@@ -137,10 +137,216 @@ msgstr "Mise à jour effectuée avec succès"
 msgid "Saving..."
 msgstr "Sauvegarde..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "supprimé"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "annuler"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Impossible de retirer l'utilisateur"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Groupes"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Groupe Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Supprimer"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "ajouter un groupe"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Un nom d'utilisateur valide doit être saisi"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Erreur lors de la création de l'utilisateur"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Un mot de passe valide doit être saisi"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Français"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Avertissement de sécurité"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Votre dossier data et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess fourni par ownCloud ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de manière à ce que le dossier data ne soit plus accessible ou bien de déplacer le dossier data en dehors du dossier racine des documents du serveur web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Votre serveur web, n'est pas correctement configuré pour permettre la synchronisation des fichiers, car l'interface WebDav ne fonctionne pas comme il faut."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Veuillez vous référer au <a href='%s'>guide d'installation</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Module 'fileinfo' manquant"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Le module PHP 'fileinfo' est manquant. Il est vivement recommandé de l'activer afin d'obtenir de meilleurs résultats pour la détection des types de fichiers."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Localisation non fonctionnelle"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Ce serveur ownCloud ne peut pas ajuster la localisation du système en tant que \"en_US.UTF-8\"/\"en_US.UTF8\". Cela signifie qu'il pourra y avoir des problèmes avec certains caractères dans les noms de fichiers. Il est vivement recommandé d'installer les paquets requis pour le support de en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "La connexion internet ne fonctionne pas"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Ce serveur ownCloud ne peut pas se connecter à internet. Cela signifie que certaines fonctionnalités, telles que l'utilisation de supports de stockage distants, les notifications de mises à jour, ou l'installation d'applications tierces ne fonctionneront pas. L'accès aux fichiers à distance, ainsi que les notifications par mails ne marcheront pas non plus. Il est recommandé d'activer la connexion internet pour ce serveur si vous souhaitez utiliser toutes les fonctionnalités offertes par ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Exécute une tâche à chaque chargement de page"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php est enregistré en tant que service webcron. Veuillez appeler la page cron.php située à la racine du serveur ownCoud via http toute les minutes."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Utilise le service cron du système. Appelle le fichier cron.php du répertoire owncloud toutes les minutes grâce à une tâche cron du système."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Partage"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Activer l'API de partage"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Plus"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">communauté ownCloud</a>, le <a href=\"https://github.com/owncloud\" target=\"_blank\">code source</a> est publié sous license <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Ajoutez votre application"
@@ -194,116 +400,86 @@ msgstr "Support commercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Vous avez utilisé <strong>%s</strong> des <strong>%s<strong> disponibles"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clients"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Télécharger le client de synchronisation pour votre ordinateur"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Télécharger le client Android"
+msgid "Get the apps to sync your files"
+msgstr "Obtenez les applications de synchronisation de vos fichiers"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Télécharger le client iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Revoir le premier lancement de l'installeur"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Mot de passe"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Votre mot de passe a été changé"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Impossible de changer votre mot de passe"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Mot de passe actuel"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nouveau mot de passe"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "Afficher"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Changer de mot de passe"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nom affiché"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Votre nom d'affichage a bien été modifié"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Impossible de modifier votre nom d'affichage"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Changer le nom affiché"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Votre adresse e-mail"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Entrez votre adresse e-mail pour permettre la réinitialisation du mot de passe"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Langue"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Aidez à traduire"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Utiliser cette adresse pour vous connecter à ownCloud dans votre gestionnaire de fichiers"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">communauté ownCloud</a>, le <a href=\"https://github.com/owncloud\" target=\"_blank\">code source</a> est publié sous license <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nom de la connexion"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Groupes"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Créer"
@@ -312,34 +488,26 @@ msgstr "Créer"
 msgid "Default Storage"
 msgstr "Support de stockage par défaut"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Illimité"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Autre"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Groupe Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Support de stockage"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "Changer le nom affiché"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "Changer le mot de passe"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Défaut"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Supprimer"
diff --git a/l10n/gl/core.po b/l10n/gl/core.po
index 6c9cc0dfe4e71d1027c5b087247bbed16850e0b7..15c7556ce015281390f4cc48403b7771abeb68cb 100644
--- a/l10n/gl/core.po
+++ b/l10n/gl/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "novembro"
 msgid "December"
 msgstr "decembro"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Configuracións"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segundos atrás"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "hai 1 minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "hai {minutes} minutos"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "hai 1 hora"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "hai {hours} horas"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hoxe"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "onte"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "hai {days} días"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "último mes"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "hai {months} meses"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "meses atrás"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "último ano"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "anos atrás"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "Non se especificou o tipo de obxecto."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Erro"
 
@@ -254,15 +254,15 @@ msgstr "Non se especificou o nome do aplicativo."
 msgid "The required file {file} is not installed!"
 msgstr "Non está instalado o ficheiro {file} que se precisa"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Compartir"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Compartir"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Produciuse un erro ao compartir"
 
@@ -358,23 +358,23 @@ msgstr "eliminar"
 msgid "share"
 msgstr "compartir"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protexido con contrasinal"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Produciuse un erro ao retirar a data de caducidade"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Produciuse un erro ao definir a data de caducidade"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Enviando..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Correo enviado"
 
diff --git a/l10n/gl/files.po b/l10n/gl/files.po
index 4440639947c16736d610d4cfbdb769b72dd1dd96..e00e1c1134e2df8b19354d6487980d56d1e41b43 100644
--- a/l10n/gl/files.po
+++ b/l10n/gl/files.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 # antiparvos  <marcoslansgarza@gmail.com>, 2012-2013.
+#  <mbouzada@gmail.com>, 2013.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -27,30 +28,30 @@ msgstr "Non se moveu %s - Xa existe un ficheiro con ese nome."
 #: ajax/move.php:27 ajax/move.php:30
 #, php-format
 msgid "Could not move %s"
-msgstr "Non se puido mover %s"
+msgstr "Non foi posíbel mover %s"
 
 #: ajax/rename.php:22 ajax/rename.php:25
 msgid "Unable to rename file"
-msgstr "Non se pode renomear o ficheiro"
+msgstr "Non é posíbel renomear o ficheiro"
 
 #: ajax/upload.php:19
 msgid "No file was uploaded. Unknown error"
-msgstr "Non se subiu ningún ficheiro. Erro descoñecido."
+msgstr "Non foi enviado ningún ficheiro. Produciuse un erro descoñecido."
 
 #: ajax/upload.php:26
 msgid "There is no error, the file uploaded with success"
-msgstr "Non hai erros. O ficheiro enviouse correctamente"
+msgstr "Non se produciu ningún erro. O ficheiro enviouse correctamente"
 
 #: ajax/upload.php:27
 msgid ""
 "The uploaded file exceeds the upload_max_filesize directive in php.ini: "
-msgstr "O ficheiro subido excede a directiva indicada polo tamaño_máximo_de_subida de php.ini"
+msgstr "O ficheiro enviado excede a directiva indicada por upload_max_filesize de php.ini:"
 
 #: ajax/upload.php:29
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form"
-msgstr "O ficheiro enviado supera a directiva MAX_FILE_SIZE que foi indicada no formulario HTML"
+msgstr "O ficheiro enviado excede a directiva MAX_FILE_SIZE que foi indicada no formulario HTML"
 
 #: ajax/upload.php:31
 msgid "The uploaded file was only partially uploaded"
@@ -66,11 +67,11 @@ msgstr "Falta un cartafol temporal"
 
 #: ajax/upload.php:34
 msgid "Failed to write to disk"
-msgstr "Erro ao escribir no disco"
+msgstr "Produciuse un erro ao escribir no disco"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "Non hai espazo de almacenamento abondo"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -80,17 +81,17 @@ msgstr "O directorio é incorrecto."
 msgid "Files"
 msgstr "Ficheiros"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Eliminar permanentemente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Eliminar"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
-msgstr "Mudar o nome"
+msgstr "Renomear"
 
 #: js/filelist.js:49 js/filelist.js:52 js/files.js:291 js/files.js:407
 #: js/files.js:438
@@ -123,47 +124,47 @@ msgstr "desfacer"
 
 #: js/filelist.js:297
 msgid "replaced {new_name} with {old_name}"
-msgstr "substituír {new_name} polo {old_name}"
+msgstr "substituír {new_name} por {old_name}"
 
 #: js/filelist.js:322
 msgid "perform delete operation"
-msgstr ""
+msgstr "realizar a operación de eliminación"
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
-msgstr "'.' é un nonme de ficheiro non válido"
+msgstr "«.» é un nome de ficheiro incorrecto"
 
 #: js/files.js:56
 msgid "File name cannot be empty."
-msgstr "O nome de ficheiro non pode estar baldeiro"
+msgstr "O nome de ficheiro non pode estar baleiro"
 
 #: js/files.js:64
 msgid ""
 "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not "
 "allowed."
-msgstr "Nome non válido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non se permiten."
+msgstr "Nome incorrecto, non se permite «\\», «/», «<», «>», «:», «\"», «|», «?» e «*»."
 
 #: js/files.js:78
 msgid "Your storage is full, files can not be updated or synced anymore!"
-msgstr ""
+msgstr "O seu espazo de almacenamento está cheo, non é posíbel actualizar ou sincronizar máis os ficheiros!"
 
 #: js/files.js:82
 msgid "Your storage is almost full ({usedSpacePercent}%)"
-msgstr ""
+msgstr "O seu espazo de almacenamento está case cheo ({usedSpacePercent}%)"
 
 #: js/files.js:224
 msgid ""
 "Your download is being prepared. This might take some time if the files are "
 "big."
-msgstr ""
+msgstr "Está a prepararse a súa descarga. Isto pode levar bastante tempo se os ficheiros son grandes."
 
 #: js/files.js:261
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr "Non se puido subir o ficheiro pois ou é un directorio ou ten 0 bytes"
+msgstr "Non foi posíbel enviar o ficheiro pois ou é un directorio ou ten 0 bytes"
 
 #: js/files.js:261
 msgid "Upload Error"
-msgstr "Erro na subida"
+msgstr "Produciuse un erro no envío"
 
 #: js/files.js:272
 msgid "Close"
@@ -171,54 +172,54 @@ msgstr "Pechar"
 
 #: js/files.js:311
 msgid "1 file uploading"
-msgstr "1 ficheiro subíndose"
+msgstr "Enviándose 1 ficheiro"
 
 #: js/files.js:314 js/files.js:369 js/files.js:384
 msgid "{count} files uploading"
-msgstr "{count} ficheiros subíndose"
+msgstr "Enviandose {count} ficheiros"
 
 #: js/files.js:387 js/files.js:422
 msgid "Upload cancelled."
-msgstr "Subida cancelada."
+msgstr "Envío cancelado."
 
 #: js/files.js:496
 msgid ""
 "File upload is in progress. Leaving the page now will cancel the upload."
-msgstr "A subida do ficheiro está en curso. Saír agora da páxina cancelará a subida."
+msgstr "O envío do ficheiro está en proceso. Saír agora da páxina cancelará o envío."
 
 #: js/files.js:569
 msgid "URL cannot be empty."
-msgstr "URL non pode quedar baleiro."
+msgstr "O URL non pode quedar baleiro."
 
 #: js/files.js:574
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
-msgstr "Nome de cartafol non válido. O uso de 'Shared' está reservado por Owncloud"
+msgstr "Nome de cartafol incorrecto. O uso de «Shared» está reservado por Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nome"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamaño"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 cartafol"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} cartafoles"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ficheiro"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} ficheiros"
 
@@ -232,11 +233,11 @@ msgstr "Manexo de ficheiro"
 
 #: templates/admin.php:7
 msgid "Maximum upload size"
-msgstr "Tamaño máximo de envío"
+msgstr "Tamaño máximo do envío"
 
 #: templates/admin.php:10
 msgid "max. possible: "
-msgstr "máx. posible: "
+msgstr "máx. posíbel: "
 
 #: templates/admin.php:15
 msgid "Needed for multi-file and folder downloads."
@@ -252,7 +253,7 @@ msgstr "0 significa ilimitado"
 
 #: templates/admin.php:22
 msgid "Maximum input size for ZIP files"
-msgstr "Tamaño máximo de descarga para os ZIP"
+msgstr "Tamaño máximo de descarga para os ficheiros ZIP"
 
 #: templates/admin.php:26
 msgid "Save"
@@ -272,19 +273,19 @@ msgstr "Cartafol"
 
 #: templates/index.php:14
 msgid "From link"
-msgstr "Dende a ligazón"
+msgstr "Desde a ligazón"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
 msgid "Cancel upload"
-msgstr "Cancelar a subida"
+msgstr "Cancelar o envío"
 
 #: templates/index.php:59
 msgid "Nothing in here. Upload something!"
-msgstr "Nada por aquí. Envía algo."
+msgstr "Aquí non hai nada por aquí. Envíe algo."
 
 #: templates/index.php:73
 msgid "Download"
@@ -302,11 +303,11 @@ msgstr "Envío demasiado grande"
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
-msgstr "Os ficheiros que trata de subir superan o tamaño máximo permitido neste servidor"
+msgstr "Os ficheiros que tenta enviar exceden do tamaño máximo permitido neste servidor"
 
 #: templates/index.php:112
 msgid "Files are being scanned, please wait."
-msgstr "Estanse analizando os ficheiros. Agarda."
+msgstr "Estanse analizando os ficheiros. Agarde."
 
 #: templates/index.php:115
 msgid "Current scanning"
@@ -314,4 +315,4 @@ msgstr "Análise actual"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
-msgstr ""
+msgstr "Anovando a caché do sistema de ficheiros..."
diff --git a/l10n/gl/files_encryption.po b/l10n/gl/files_encryption.po
index ae8181660a9dcd84b8ca42b681e77b7560c1d90a..0f66e72f332dd11079286af03a730b473b43955b 100644
--- a/l10n/gl/files_encryption.po
+++ b/l10n/gl/files_encryption.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <mbouzada@gmail.com>, 2013.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 10:01+0000\n"
+"Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,16 +25,16 @@ msgstr "Cifrado"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "O cifrado de ficheiros está activado"
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Os seguintes tipos de ficheiros non van seren cifrados:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Excluír os seguintes tipos de ficheiros do cifrado:"
 
 #: templates/settings.php:12
 msgid "None"
-msgstr "Nada"
+msgstr "Ningún"
diff --git a/l10n/gl/files_external.po b/l10n/gl/files_external.po
index 9bc476ece0bb23fddd124fc5ebab3fd42f4b46b3..c16b5b97935bfa496fb75141a6d5e4d467c955f7 100644
--- a/l10n/gl/files_external.po
+++ b/l10n/gl/files_external.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-01 00:04+0100\n"
-"PO-Revision-Date: 2012-12-31 08:40+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 12:31+0000\n"
 "Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -43,13 +43,13 @@ msgstr "Forneza unha chave correcta e segreda do Dropbox."
 msgid "Error configuring Google Drive storage"
 msgstr "Produciuse un erro ao configurar o almacenamento en Google Drive"
 
-#: lib/config.php:434
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr "<b>Aviso:</b> «smbclient» non está instalado. Non é posibel a montaxe de comparticións CIFS/SMB. Consulte co administrador do sistema para instalalo."
 
-#: lib/config.php:435
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
 " of FTP shares is not possible. Please ask your system administrator to "
diff --git a/l10n/gl/files_sharing.po b/l10n/gl/files_sharing.po
index f6b83fbd6548c6a18eaad847114f7cef4446f6f0..d665b511c6dd0986db38ebc2d6dcc3679d427c9b 100644
--- a/l10n/gl/files_sharing.po
+++ b/l10n/gl/files_sharing.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-11-30 00:03+0100\n"
-"PO-Revision-Date: 2012-11-29 16:08+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 13:00+0000\n"
 "Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -27,24 +27,24 @@ msgstr "Contrasinal"
 msgid "Submit"
 msgstr "Enviar"
 
-#: templates/public.php:17
+#: templates/public.php:9
 #, php-format
 msgid "%s shared the folder %s with you"
 msgstr "%s compartiu o cartafol %s con vostede"
 
-#: templates/public.php:19
+#: templates/public.php:11
 #, php-format
 msgid "%s shared the file %s with you"
 msgstr "%s compartiu o ficheiro %s con vostede"
 
-#: templates/public.php:22 templates/public.php:38
+#: templates/public.php:14 templates/public.php:30
 msgid "Download"
 msgstr "Descargar"
 
-#: templates/public.php:37
+#: templates/public.php:29
 msgid "No preview available for"
 msgstr "Sen vista previa dispoñíbel para"
 
-#: templates/public.php:43
+#: templates/public.php:35
 msgid "web services under your control"
 msgstr "servizos web baixo o seu control"
diff --git a/l10n/gl/files_trashbin.po b/l10n/gl/files_trashbin.po
index 9e9dd72adb0fc8b9e302426414c4cc0f6ba4b8fa..2f1e3e6d86c0eafe5e90f685f4f2a5b40509cc73 100644
--- a/l10n/gl/files_trashbin.po
+++ b/l10n/gl/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <mbouzada@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Non foi posíbel eliminar %s permanente"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Non foi posíbel restaurar %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "realizar a operación de restauración"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "eliminar o ficheiro permanentemente"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Nome"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Eliminado"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,7 +62,7 @@ msgstr "{count} ficheiros"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Aquí non hai nada. O cesto do lixo está baleiro!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/gl/files_versions.po b/l10n/gl/files_versions.po
index 7bfd504e63332b95cb7179b1b60c77b051834348..a468b7082b8bbdd7767de2e2a246deeb4f23a133 100644
--- a/l10n/gl/files_versions.po
+++ b/l10n/gl/files_versions.po
@@ -3,6 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <mbouzada@gmail.com>, 2013.
 #   <mbouzada@gmail.com>, 2012.
 # Miguel Branco <mgl.branco@gmail.com>, 2012.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2012.
@@ -10,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 09:30+0000\n"
+"Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -23,33 +24,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Non foi posíbel reverter: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "feito"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "O ficheiro %s foi revertido á versión %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "produciuse un fallo"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Non foi posíbel reverter o ficheiro %s á versión %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Non hai versións antigas dispoñíbeis"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Non foi indicada a ruta"
 
 #: js/versions.js:16
 msgid "History"
@@ -57,7 +58,7 @@ msgstr "Historial"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Reverta un ficheiro a unha versión anterior premendo no botón reversión"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/gl/lib.po b/l10n/gl/lib.po
index dfe0a1f31023c8029bcb1f4ce40ff0dde7d658bc..e41f414f4e89ff5214e17b56a0595ab795ef4e24 100644
--- a/l10n/gl/lib.po
+++ b/l10n/gl/lib.po
@@ -3,6 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <mbouzada@gmail.com>, 2013.
 #   <mbouzada@gmail.com>, 2012.
 # Miguel Branco <mgl.branco@gmail.com>, 2012.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2012-2013.
@@ -10,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -46,7 +47,7 @@ msgstr "Administración"
 
 #: files.php:202
 msgid "ZIP download is turned off."
-msgstr "As descargas ZIP están desactivadas"
+msgstr "As descargas ZIP están desactivadas."
 
 #: files.php:203
 msgid "Files need to be downloaded one by one."
@@ -62,7 +63,7 @@ msgstr "Os ficheiros seleccionados son demasiado grandes como para xerar un fich
 
 #: helper.php:226
 msgid "couldn't be determined"
-msgstr "non puido ser determinado"
+msgstr "non foi posíbel determinalo"
 
 #: json.php:28
 msgid "Application is not enabled"
@@ -88,20 +89,106 @@ msgstr "Texto"
 msgid "Images"
 msgstr "Imaxes"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "O seu servidor web non está aínda configurado adecuadamente para permitir a sincronización de ficheiros xa que semella que a interface WebDAV non está a funcionar."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Volva comprobar as <a href='%s'>guías de instalación</a>"
 
 #: template.php:113
 msgid "seconds ago"
-msgstr "hai segundos"
+msgstr "segundos atrás"
 
 #: template.php:114
 msgid "1 minute ago"
diff --git a/l10n/gl/settings.po b/l10n/gl/settings.po
index ca408e9994364260d8aafe79ce9603913c9bcb47..0cfda9825141f01e07247e214c8575589f041402 100644
--- a/l10n/gl/settings.po
+++ b/l10n/gl/settings.po
@@ -4,15 +4,16 @@
 # 
 # Translators:
 # antiparvos  <marcoslansgarza@gmail.com>, 2012.
+#  <mbouzada@gmail.com>, 2013.
 #   <mbouzada@gmail.com>, 2012.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 09:10+0000\n"
+"Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Non foi posíbel cargar a lista desde a App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Produciuse un erro de autenticación"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -51,7 +52,7 @@ msgstr "Correo gardado"
 
 #: ajax/lostpassword.php:14
 msgid "Invalid email"
-msgstr "correo incorrecto"
+msgstr "Correo incorrecto"
 
 #: ajax/removegroup.php:13
 msgid "Unable to delete group"
@@ -71,7 +72,7 @@ msgstr "Petición incorrecta"
 
 #: ajax/togglegroups.php:12
 msgid "Admins can't remove themself from the admin group"
-msgstr "Os administradores non se pode eliminar a si mesmos do grupo admin"
+msgstr "Os administradores non poden eliminarse a si mesmos do grupo admin"
 
 #: ajax/togglegroups.php:28
 #, php-format
@@ -83,13 +84,13 @@ msgstr "Non é posíbel engadir o usuario ao grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Non é posíbel eliminar o usuario do grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Non foi posíbel actualizar o aplicativo."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Actualizar á {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -101,15 +102,15 @@ msgstr "Activar"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Agarde..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Actualizando..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Produciuse un erro mentres actualizaba o aplicativo"
 
 #: js/apps.js:87
 msgid "Error"
@@ -117,16 +118,222 @@ msgstr "Erro"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Actualizado"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Gardando..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "eliminado"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "desfacer"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Non é posíbel retirar o usuario"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupo Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Eliminar"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "engadir un grupo"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Debe fornecer un nome de usuario"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Produciuse un erro ao crear o usuario"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Debe fornecer un contrasinal"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Galego"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Aviso de seguranza"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "O seu cartafol de datos e os seus ficheiros probabelmente sexan accesíbeis a través da Internet. O ficheiro .htaccess que fornece ownCloud non está a empregarse. Suxerímoslle que configure o seu servidor web de tal xeito que o cartafol de datos non estea accesíbel ou mova o cartafol de datos fora do directorio raíz de datos do servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Configurar os avisos"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "O seu servidor web non está aínda configurado adecuadamente para permitir a sincronización de ficheiros xa que semella que a interface WebDAV non está a funcionar."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Volva comprobar as <a href='%s'>guías de instalación</a>"
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Non se atopou o módulo «fileinfo»"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Non se atopou o módulo de PHP «fileinfo». É recomendábel activar este módulo para obter os mellores resultados coa detección do tipo MIME."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Executar unha tarefa con cada páxina cargada"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Compartindo"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Activar o API para compartir"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Permitir que os aplicativos empreguen o API para compartir"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Permitir ligazóns"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Permitir que os usuarios compartan elementos ao público con ligazóns"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Permitir compartir"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Permitir que os usuarios compartan de novo os elementos compartidos con eles"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Permitir que os usuarios compartan con calquera"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Permitir que os usuarios compartan só cos usuarios dos seus grupos"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Seguranza"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Forzar HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Forzar que os clientes se conecten a ownCloud empregando unha conexión cifrada"
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Conectese a esta instancia ownCloud empregando HTTPS para activar ou desactivar o forzado de SSL."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Rexistro"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Nivel de rexistro"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Máis"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versión"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desenvolvido pola <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está baixo a licenza <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Engada o seu aplicativo"
@@ -178,117 +385,87 @@ msgstr "Asistencia comercial"
 #: templates/personal.php:8
 #, php-format
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
-msgstr "Te en uso <strong>%s</strong> do total dispoñíbel de <strong>%s</strong>"
-
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Descargar clientes para escritorio"
+msgstr "Ten en uso <strong>%s</strong> do total dispoñíbel de <strong>%s</strong>"
 
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Descargar clientes para Android"
+msgid "Get the apps to sync your files"
+msgstr "Obteña os aplicativos para sincronizar os seus ficheiros"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Descargar clientes ra iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Amosar o axudante da primeira execución outra vez"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Contrasinal"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "O seu contrasinal foi cambiado"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Non é posíbel cambiar o seu contrasinal"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Contrasinal actual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Novo contrasinal"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "amosar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Cambiar o contrasinal"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "Amosar o nome"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Correo"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "O seu enderezo de correo"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Escriba un enderezo de correo para activar a recuperación do contrasinal"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Axude na tradución"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Utilice este enderezo para conectarse ao seu ownCloud co administrador de ficheiros"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versión"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desenvolvido pola <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está baixo a licenza <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupos"
+msgstr "Nome de acceso"
 
 #: templates/users.php:32
 msgid "Create"
@@ -298,34 +475,26 @@ msgstr "Crear"
 msgid "Default Storage"
 msgstr "Almacenamento predeterminado"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Sen límites"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Outro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupo Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Almacenamento"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "estabelecer un novo contrasinal"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Predeterminado"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Eliminar"
diff --git a/l10n/gl/user_ldap.po b/l10n/gl/user_ldap.po
index 72ec0caf49afb110ba14fae4b91cf76887f526b6..62e23bcad3c185c5429bf6cb218a274b8a40c472 100644
--- a/l10n/gl/user_ldap.po
+++ b/l10n/gl/user_ldap.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 12:47+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/gl/user_webdavauth.po b/l10n/gl/user_webdavauth.po
index 2004bb9b3c378d6e1430650310019f5e4a4d7e9f..e16010dc69f596348a9ddcbe32b4f701bdd98a61 100644
--- a/l10n/gl/user_webdavauth.po
+++ b/l10n/gl/user_webdavauth.po
@@ -3,6 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#  <mbouzada@gmail.com>, 2013.
 #   <mbouzada@gmail.com>, 2012.
 # Miguel Branco, 2012.
 # Xosé M. Lamas <correo.xmgz@gmail.com>, 2013.
@@ -10,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-19 00:04+0100\n"
-"PO-Revision-Date: 2013-01-18 06:15+0000\n"
-"Last-Translator: Xosé M. Lamas <correo.xmgz@gmail.com>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 11:20+0000\n"
+"Last-Translator: mbouzada <mbouzada@gmail.com>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,9 +29,9 @@ msgstr "Autenticación WebDAV"
 msgid "URL: http://"
 msgstr "URL: http://"
 
-#: templates/settings.php:6
+#: templates/settings.php:7
 msgid ""
 "ownCloud will send the user credentials to this URL. This plugin checks the "
 "response and will interpret the HTTP statuscodes 401 and 403 as invalid "
 "credentials, and all other responses as valid credentials."
-msgstr "ownCloud enviará as credenciais do usuario a esta URL. Este conector comproba a resposta e interpretará os códigos de estado 401 e 403 como credenciais non válidas, e todas as outras respostas como credenciais válidas."
+msgstr "ownCloud enviará as credenciais do usuario a este URL. Este engadido comproba a resposta e interpretará os códigos de estado HTTP 401 e 403 como credenciais incorrectas, e todas as outras respostas como credenciais correctas."
diff --git a/l10n/he/core.po b/l10n/he/core.po
index 63923beacfc56f2932e8e44db560034f55a2a70b..a1478aafdaf9096db6b7b6478611bc2bf452701b 100644
--- a/l10n/he/core.po
+++ b/l10n/he/core.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n"
 "MIME-Version: 1.0\n"
@@ -161,59 +161,59 @@ msgstr "נובמבר"
 msgid "December"
 msgstr "דצמבר"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "הגדרות"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "שניות"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "לפני דקה אחת"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "לפני {minutes} דקות"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "לפני שעה"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "לפני {hours} שעות"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "היום"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "אתמול"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "לפני {days} ימים"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "חודש שעבר"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "לפני {months} חודשים"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "חודשים"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "שנה שעברה"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "שנים"
 
@@ -243,8 +243,8 @@ msgid "The object type is not specified."
 msgstr "סוג הפריט לא צוין."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "שגיאה"
 
@@ -256,15 +256,15 @@ msgstr "שם היישום לא צוין."
 msgid "The required file {file} is not installed!"
 msgstr "הקובץ הנדרש {file} אינו מותקן!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "שתף"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "שתף"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "שגיאה במהלך השיתוף"
 
@@ -360,23 +360,23 @@ msgstr "מחיקה"
 msgid "share"
 msgstr "שיתוף"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "מוגן בססמה"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "אירעה שגיאה בביטול תאריך התפוגה"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "אירעה שגיאה בעת הגדרת תאריך התפוגה"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "מתבצעת שליחה ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "הודעת הדוא״ל נשלחה"
 
diff --git a/l10n/he/files.po b/l10n/he/files.po
index 8a109378c45f67bac6f44e5f149cdb6d616b5ba5..9b9bb1c34f5d19d61f09ba9073b3e4b99f6e39df 100644
--- a/l10n/he/files.po
+++ b/l10n/he/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr ""
 msgid "Files"
 msgstr "קבצים"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "מחיקה"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "שינוי שם"
 
@@ -196,31 +196,31 @@ msgstr "קישור אינו יכול להיות ריק."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "שם"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "גודל"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "זמן שינוי"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "תיקייה אחת"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} תיקיות"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "קובץ אחד"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} קבצים"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "מקישור"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/he/files_trashbin.po b/l10n/he/files_trashbin.po
index 4291039ce16c9d9ecf393a28ed743b051d38f771..3ce0051e74e56d3c81e7ade222b68bbee47993dd 100644
--- a/l10n/he/files_trashbin.po
+++ b/l10n/he/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/he/lib.po b/l10n/he/lib.po
index fbafbd81e455ec8fa6a24e9669221b071e8fbc0a..499a5bf35a6fea9c89c0ef807c7a2392a1aca2ba 100644
--- a/l10n/he/lib.po
+++ b/l10n/he/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "טקסט"
 msgid "Images"
 msgstr "תמונות"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/he/settings.po b/l10n/he/settings.po
index 018aebd9f602c48d5111a9f9983882d6df35e5cc..a208a7134468959d5f1f4c412f0b0cfe4c493248 100644
--- a/l10n/he/settings.po
+++ b/l10n/he/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n"
 "MIME-Version: 1.0\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "לא ניתן לטעון רשימה מה־App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "שגיאת הזדהות"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -84,7 +84,7 @@ msgstr "לא ניתן להוסיף משתמש לקבוצה %s"
 msgid "Unable to remove user from group %s"
 msgstr "לא ניתן להסיר משתמש מהקבוצה %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -124,10 +124,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "שומר.."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "ביטול"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "קבוצות"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "מנהל הקבוצה"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "מחיקה"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "עברית"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "אזהרת אבטחה"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "יתכן שתיקיית הנתונים והקבצים שלך נגישים דרך האינטרנט. קובץ ה־‎.htaccess שמסופק על ידי ownCloud כנראה אינו עובד. אנו ממליצים בחום להגדיר את שרת האינטרנט שלך בדרך שבה תיקיית הנתונים לא תהיה זמינה עוד או להעביר את תיקיית הנתונים מחוץ לספריית העל של שרת האינטרנט."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "יותר"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "גרסא"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "פותח על די <a href=\"http://ownCloud.org/contact\" target=\"_blank\">קהילתownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">קוד המקור</a> מוגן ברישיון <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "הוספת היישום שלך"
@@ -181,116 +387,86 @@ msgstr "תמיכה בתשלום"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "השתמשת ב־<strong>%s</strong> מתוך <strong>%s</strong> הזמינים לך"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "לקוחות"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "הורד לתוכנה למחשב"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "הורד תוכנה לאנדרואיד"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "הורד תוכנה לiOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "ססמה"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "הססמה שלך הוחלפה"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "לא ניתן לשנות את הססמה שלך"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "ססמה נוכחית"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "ססמה חדשה"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "הצגה"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "שינוי ססמה"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "דוא״ל"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "כתובת הדוא״ל שלך"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "נא למלא את כתובת הדוא״ל שלך כדי לאפשר שחזור ססמה"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "פה"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "עזרה בתרגום"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "השתמש בכתובת זאת על מנת להתחבר אל ownCloud דרך סייר קבצים."
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "גרסא"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "פותח על די <a href=\"http://ownCloud.org/contact\" target=\"_blank\">קהילתownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">קוד המקור</a> מוגן ברישיון <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "קבוצות"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "יצירה"
@@ -299,34 +475,26 @@ msgstr "יצירה"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "אחר"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "מנהל הקבוצה"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "מחיקה"
diff --git a/l10n/hi/core.po b/l10n/hi/core.po
index 4706ee1f2cd80d2fafa461e9e83b862b8b666b79..1cdf7d56f60a62ad0d2285312ddb1e4ab7e6372d 100644
--- a/l10n/hi/core.po
+++ b/l10n/hi/core.po
@@ -4,14 +4,14 @@
 # 
 # Translators:
 # Omkar Tapale <omkar_tapale@live.com>, 2012.
-# Sanjay Rabidas <rabidassanjay@gmail.com>, 2012.
+# Sanjay Rabidas <rabidassanjay@gmail.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:52+0000\n"
+"Last-Translator: Sanjay Rabidas <rabidassanjay@gmail.com>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -158,59 +158,59 @@ msgstr ""
 msgid "December"
 msgstr ""
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
-msgstr ""
+msgstr "सेटिंग्स"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr ""
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr ""
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr ""
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr ""
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr ""
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr ""
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr ""
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr ""
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr ""
 
@@ -253,15 +253,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
+#: js/share.js:29 js/share.js:43 js/share.js:90
+msgid "Shared"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Shared"
+#: js/share.js:93
+msgid "Share"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr ""
 
@@ -357,23 +357,23 @@ msgstr ""
 msgid "share"
 msgstr ""
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr ""
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr ""
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr ""
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
@@ -435,15 +435,15 @@ msgstr ""
 
 #: strings.php:5
 msgid "Personal"
-msgstr ""
+msgstr "यक्तिगत"
 
 #: strings.php:6
 msgid "Users"
-msgstr ""
+msgstr "उपयोगकर्ता"
 
 #: strings.php:7
 msgid "Apps"
-msgstr ""
+msgstr "Apps"
 
 #: strings.php:8
 msgid "Admin"
@@ -451,7 +451,7 @@ msgstr ""
 
 #: strings.php:9
 msgid "Help"
-msgstr ""
+msgstr "सहयोग"
 
 #: templates/403.php:12
 msgid "Access forbidden"
@@ -508,7 +508,7 @@ msgstr "उन्नत"
 
 #: templates/installation.php:54
 msgid "Data folder"
-msgstr ""
+msgstr "डाटा फोल्डर"
 
 #: templates/installation.php:61
 msgid "Configure the database"
@@ -517,7 +517,7 @@ msgstr "डेटाबेस कॉन्फ़िगर करें "
 #: templates/installation.php:66 templates/installation.php:77
 #: templates/installation.php:87 templates/installation.php:97
 msgid "will be used"
-msgstr ""
+msgstr "उपयोग होगा"
 
 #: templates/installation.php:109
 msgid "Database user"
@@ -529,7 +529,7 @@ msgstr "डेटाबेस पासवर्ड"
 
 #: templates/installation.php:117
 msgid "Database name"
-msgstr ""
+msgstr "डेटाबेस का नाम"
 
 #: templates/installation.php:125
 msgid "Database tablespace"
@@ -549,7 +549,7 @@ msgstr ""
 
 #: templates/layout.user.php:48
 msgid "Log out"
-msgstr ""
+msgstr "लोग  आउट"
 
 #: templates/login.php:10
 msgid "Automatic logon rejected!"
@@ -571,7 +571,7 @@ msgstr ""
 
 #: templates/login.php:41
 msgid "remember"
-msgstr ""
+msgstr "याद रखें"
 
 #: templates/login.php:43
 msgid "Log in"
diff --git a/l10n/hi/files.po b/l10n/hi/files.po
index fe4e56b565b2febf8170413a82c33febfb7ea051..7469b9e6c3f9be6f5e8ffa26c49ae3df35b3e211 100644
--- a/l10n/hi/files.po
+++ b/l10n/hi/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/hi/files_external.po b/l10n/hi/files_external.po
index acf75ea681a6c26feacb9b7af074b38eb92d4aba..e5c058cbf9db278031e1412934f482d2af67bd7a 100644
--- a/l10n/hi/files_external.po
+++ b/l10n/hi/files_external.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-12-13 00:17+0100\n"
-"PO-Revision-Date: 2012-12-11 23:22+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:54+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
@@ -41,13 +41,13 @@ msgstr ""
 msgid "Error configuring Google Drive storage"
 msgstr ""
 
-#: lib/config.php:434
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr ""
 
-#: lib/config.php:435
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
 " of FTP shares is not possible. Please ask your system administrator to "
@@ -96,10 +96,10 @@ msgstr ""
 
 #: templates/settings.php:95
 msgid "Users"
-msgstr ""
+msgstr "उपयोगकर्ता"
 
 #: templates/settings.php:108 templates/settings.php:109
-#: templates/settings.php:149 templates/settings.php:150
+#: templates/settings.php:144 templates/settings.php:145
 msgid "Delete"
 msgstr ""
 
@@ -111,10 +111,10 @@ msgstr ""
 msgid "Allow users to mount their own external storage"
 msgstr ""
 
-#: templates/settings.php:139
+#: templates/settings.php:136
 msgid "SSL root certificates"
 msgstr ""
 
-#: templates/settings.php:158
+#: templates/settings.php:153
 msgid "Import Root Certificate"
 msgstr ""
diff --git a/l10n/hi/lib.po b/l10n/hi/lib.po
index beea38356858834bf50ebde1aa783945fac4fa13..12d4fd2dd35f31d95ec97c9a3cae21ade0eb7445 100644
--- a/l10n/hi/lib.po
+++ b/l10n/hi/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:54+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
@@ -19,23 +19,23 @@ msgstr ""
 
 #: app.php:339
 msgid "Help"
-msgstr ""
+msgstr "सहयोग"
 
 #: app.php:346
 msgid "Personal"
-msgstr ""
+msgstr "यक्तिगत"
 
 #: app.php:351
 msgid "Settings"
-msgstr ""
+msgstr "सेटिंग्स"
 
 #: app.php:356
 msgid "Users"
-msgstr ""
+msgstr "उपयोगकर्ता"
 
 #: app.php:363
 msgid "Apps"
-msgstr ""
+msgstr "Apps"
 
 #: app.php:365
 msgid "Admin"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/hi/settings.po b/l10n/hi/settings.po
index b0e88f95c9b086bee71ba6b070be73feb9468566..4667d519cc307d2473c6e280d4c91f16be469d6d 100644
--- a/l10n/hi/settings.po
+++ b/l10n/hi/settings.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "पासवर्ड"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "नया पासवर्ड"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/hi/user_ldap.po b/l10n/hi/user_ldap.po
index b37e24b8292971982214aa1bc2c3f37825bbc1af..8010b1bb74bafdba8de8dd8f5780eaf95d3df40f 100644
--- a/l10n/hi/user_ldap.po
+++ b/l10n/hi/user_ldap.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:54+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n"
 "MIME-Version: 1.0\n"
@@ -306,4 +306,4 @@ msgstr ""
 
 #: templates/settings.php:62
 msgid "Help"
-msgstr ""
+msgstr "सहयोग"
diff --git a/l10n/hr/files.po b/l10n/hr/files.po
index 4e58c45f936b8a597953e9e05790f144415eae56..b04b656f0f501adf0d9ca96bd1eca0b9bf7aba92 100644
--- a/l10n/hr/files.po
+++ b/l10n/hr/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr ""
 msgid "Files"
 msgstr "Datoteke"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Briši"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Promjeni ime"
 
@@ -195,31 +195,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Naziv"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Veličina"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Zadnja promjena"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/hr/files_trashbin.po b/l10n/hr/files_trashbin.po
index a5e90a28bb21a08d159df0a5fc991b0c434b2151..f7162d5dc4f2a52ade9784cc2e9b0b77f0a8483d 100644
--- a/l10n/hr/files_trashbin.po
+++ b/l10n/hr/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/hr/lib.po b/l10n/hr/lib.po
index 9eedb4b6807a5162eb88fde0fe212cb830cdbcf0..33cacb70eeb144ee10e23fc3a0e666bac19ee803 100644
--- a/l10n/hr/lib.po
+++ b/l10n/hr/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "Tekst"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/hr/settings.po b/l10n/hr/settings.po
index 062d280811c653ff8933210787b539cc6ac20f64..5d8097e959a481c40512ed2d62bfadd84c72c8ee 100644
--- a/l10n/hr/settings.po
+++ b/l10n/hr/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nemogićnost učitavanja liste sa Apps Stora"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Greška kod autorizacije"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -123,10 +123,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Spremanje..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "izbrisano"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "vrati"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupe"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupa Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Obriši"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__ime_jezika__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Dodajte vašu aplikaciju"
@@ -180,116 +386,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klijenti"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Lozinka"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Nemoguće promijeniti lozinku"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Trenutna lozinka"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nova lozinka"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "prikaz"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Izmjena lozinke"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "e-mail adresa"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Vaša e-mail adresa"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Ispunite vase e-mail adresa kako bi se omogućilo oporavak lozinke"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Jezik"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Pomoć prevesti"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupe"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Izradi"
@@ -298,34 +474,26 @@ msgstr "Izradi"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "ostali"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupa Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Obriši"
diff --git a/l10n/hu_HU/core.po b/l10n/hu_HU/core.po
index 9cd13d6adf5efbf27648e2787f6d5830d0d5a3a4..244db459496454ab45fe492f4a1d7a5cbf2741d5 100644
--- a/l10n/hu_HU/core.po
+++ b/l10n/hu_HU/core.po
@@ -12,9 +12,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 14:00+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -57,7 +57,7 @@ msgstr "Nincs hozzáadandó kategória?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Ez a kategória már létezik: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -161,59 +161,59 @@ msgstr "november"
 msgid "December"
 msgstr "december"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Beállítások"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "pár másodperce"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 perce"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} perce"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 órája"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} órája"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "ma"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "tegnap"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} napja"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "múlt hónapban"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} hónapja"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "több hónapja"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "tavaly"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "több éve"
 
@@ -243,8 +243,8 @@ msgid "The object type is not specified."
 msgstr "Az objektum típusa nincs megadva."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Hiba"
 
@@ -256,15 +256,15 @@ msgstr "Az alkalmazás neve nincs megadva."
 msgid "The required file {file} is not installed!"
 msgstr "A szükséges fájl: {file} nincs telepítve!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
+msgid "Shared"
+msgstr "Megosztott"
+
+#: js/share.js:93
 msgid "Share"
 msgstr "Megosztás"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Shared"
-msgstr ""
-
-#: js/share.js:141 js/share.js:611
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Nem sikerült létrehozni a megosztást"
 
@@ -360,23 +360,23 @@ msgstr "töröl"
 msgid "share"
 msgstr "megoszt"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Jelszóval van védve"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Nem sikerült a lejárati időt törölni"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Nem sikerült a lejárati időt beállítani"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Küldés ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Az emailt elküldtük"
 
@@ -385,11 +385,11 @@ msgid ""
 "The update was unsuccessful. Please report this issue to the <a "
 "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud "
 "community</a>."
-msgstr ""
+msgstr "A frissítés nem sikerült. Kérem értesítse erről a problémáról az <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud közösséget</a>."
 
 #: js/update.js:18
 msgid "The update was successful. Redirecting you to ownCloud now."
-msgstr ""
+msgstr "A frissítés sikeres volt. Visszairányítjuk az ownCloud szolgáltatáshoz."
 
 #: lostpassword/controller.php:47
 msgid "ownCloud password reset"
@@ -492,14 +492,14 @@ msgstr "Megfelelő véletlenszám-generátor hiányában egy támadó szándék
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Az adatkönyvtár és a benne levő állományok valószínűleg közvetlenül is elérhetők az internetről, mert a .htaccess állomány nem érvényesül."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "A kiszolgáló megfelelő beállításához kérjük olvassa el a <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentációt</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -582,7 +582,7 @@ msgstr "Bejelentkezés"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Alternatív bejelentkezés"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/hu_HU/files.po b/l10n/hu_HU/files.po
index 5a793b84bff9709a7154ee5aea56c181c57c2ae1..ea2e55fc372c68ec3959bf44e196dde6be69ba09 100644
--- a/l10n/hu_HU/files.po
+++ b/l10n/hu_HU/files.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
@@ -85,15 +85,15 @@ msgstr "Érvénytelen mappa."
 msgid "Files"
 msgstr "Fájlok"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Végleges törlés"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Törlés"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Átnevezés"
 
@@ -132,7 +132,7 @@ msgstr "{new_name} fájlt kicseréltük ezzel:  {old_name}"
 
 #: js/filelist.js:322
 msgid "perform delete operation"
-msgstr ""
+msgstr "a törlés végrehajtása"
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
@@ -199,31 +199,31 @@ msgstr "Az URL nem lehet semmi."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Érvénytelen mappanév. A név használata csak a Owncloud számára lehetséges."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Név"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Méret"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Módosítva"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mappa"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mappa"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fájl"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} fájl"
 
@@ -280,7 +280,7 @@ msgid "From link"
 msgstr "Feltöltés linkről"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
@@ -319,4 +319,4 @@ msgstr "Ellenőrzés alatt"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
-msgstr ""
+msgstr "A fájlrendszer gyorsítótárának frissítése zajlik..."
diff --git a/l10n/hu_HU/files_encryption.po b/l10n/hu_HU/files_encryption.po
index 3a5ec713fb121134c0d3c46ef45d77451d7ed5db..4ad1f0108e8447c261442a1b225a57f90d2f4a60 100644
--- a/l10n/hu_HU/files_encryption.po
+++ b/l10n/hu_HU/files_encryption.po
@@ -6,13 +6,14 @@
 # Akos <nagy.akos@libreoffice.ro>, 2013.
 # Csaba Orban <vicsabi@gmail.com>, 2012.
 #  <gyonkibendeguz@gmail.com>, 2013.
+# Laszlo Tornoci <torlasz@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 14:00+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -26,15 +27,15 @@ msgstr "Titkosítás"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Az állományok titkosítása be van kapcsolva."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "A következő fájltípusok nem kerülnek titkosításra:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Zárjuk ki a titkosításból a következő fájltípusokat:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/hu_HU/files_trashbin.po b/l10n/hu_HU/files_trashbin.po
index 0f7239c2cdcda794cf6f87a7f6286a232525fbff..45b1df8c92abca1ca3f571ccac1313a111713eed 100644
--- a/l10n/hu_HU/files_trashbin.po
+++ b/l10n/hu_HU/files_trashbin.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Laszlo Tornoci <torlasz@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 13:30+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,20 +21,20 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Nem sikerült %s végleges törlése"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Nem sikerült %s visszaállítása"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
-msgstr ""
+msgstr "a visszaállítás végrehajtása"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "az állomány végleges törlése"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
@@ -41,7 +42,7 @@ msgstr "Név"
 
 #: js/trash.js:126 templates/index.php:27
 msgid "Deleted"
-msgstr ""
+msgstr "Törölve"
 
 #: js/trash.js:135
 msgid "1 folder"
@@ -61,7 +62,7 @@ msgstr "{count} fájl"
 
 #: templates/index.php:9
 msgid "Nothing in here. Your trash bin is empty!"
-msgstr ""
+msgstr "Itt nincs semmi. Az Ön szemetes mappája üres!"
 
 #: templates/index.php:20 templates/index.php:22
 msgid "Restore"
diff --git a/l10n/hu_HU/files_versions.po b/l10n/hu_HU/files_versions.po
index f2b3829c7aa6d0df136f58e11c26876e82dd78b0..e128811260c0218a5931a33212bdbf99f3af8a82 100644
--- a/l10n/hu_HU/files_versions.po
+++ b/l10n/hu_HU/files_versions.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Laszlo Tornoci <torlasz@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:43+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,33 +21,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Nem sikerült átállni a változatra: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "sikerült"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "%s állományt átállítottuk erre a változatra: %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "nem sikerült"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "%s állományt nem sikerült átállítani erre a változatra: %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Nincs régebbi változat"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Nincs megadva az útvonal"
 
 #: js/versions.js:16
 msgid "History"
@@ -54,7 +55,7 @@ msgstr "Korábbi változatok"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Az állomány átállítható egy régebbi változatra, ha a gombra kattint"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/hu_HU/lib.po b/l10n/hu_HU/lib.po
index f32209e9a7db9bc6ef6dadd9d9152dfcb963a6a6..25b3c98b19c2e883dac5ba28c989df0c77583f98 100644
--- a/l10n/hu_HU/lib.po
+++ b/l10n/hu_HU/lib.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 14:31+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -42,7 +42,7 @@ msgstr "Alkalmazások"
 
 #: app.php:365
 msgid "Admin"
-msgstr "Admin"
+msgstr "Adminsztráció"
 
 #: files.php:202
 msgid "ZIP download is turned off."
@@ -50,7 +50,7 @@ msgstr "A ZIP-letöltés nincs engedélyezve."
 
 #: files.php:203
 msgid "Files need to be downloaded one by one."
-msgstr "A fájlokat egyenként kell letölteni"
+msgstr "A fájlokat egyenként kell letölteni."
 
 #: files.php:203 files.php:228
 msgid "Back to Files"
@@ -88,16 +88,102 @@ msgstr "Szöveg"
 msgid "Images"
 msgstr "Képek"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Állítson be egy felhasználói nevet az adminisztrációhoz."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Állítson be egy jelszót az adminisztrációhoz."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Adja meg az adatokat tartalmazó könyvtár nevét."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s adja meg az adatbázist elérő felhasználó login nevét."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s adja meg az adatbázis nevét."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s az adatbázis neve nem tartalmazhat pontot"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s adja meg az adatbázist szolgáltató számítógép nevét."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "A PostgreSQL felhasználói név és/vagy jelszó érvénytelen"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Vagy egy létező felhasználó vagy az adminisztrátor bejelentkezési nevét kell megadnia"
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Az Oracle felhasználói név és/vagy jelszó érvénytelen"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "A MySQL felhasználói név és/vagy jelszó érvénytelen"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Adatbázis hiba: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "A hibát ez a parancs okozta: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "A '%s'@'localhost' MySQL felhasználó már létezik."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Törölje ezt a felhasználót a MySQL-ből"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "A '%s'@'%%' MySQL felhasználó már létezik"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Törölje ezt a felhasználót a MySQL-ből."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "A hibát okozó parancs ez volt: \"%s\", login név: %s, jelszó: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Az Ön webkiszolgálója nincs megfelelően beállítva az állományok szinkronizálásához, mert a WebDAV-elérés úgy tűnik, nem működik."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Kérjük tüzetesen tanulmányozza át a <a href='%s'>telepítési útmutatót</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/hu_HU/settings.po b/l10n/hu_HU/settings.po
index d544d5d95b051c731bc041dc24284457675944ec..54b93c6397a5143e36d9ef53c5067d04f7ec189a 100644
--- a/l10n/hu_HU/settings.po
+++ b/l10n/hu_HU/settings.po
@@ -5,13 +5,14 @@
 # Translators:
 # Adam Toth <adazlord@gmail.com>, 2012.
 #   <gyonkibendeguz@gmail.com>, 2013.
+# Laszlo Tornoci <torlasz@gmail.com>, 2013.
 # Peter Borsa <peter.borsa@gmail.com>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
@@ -24,14 +25,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nem tölthető le a lista az App Store-ból"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Azonosítási hiba"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Nem sikerült megváltoztatni a megjelenítési nevet"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -83,13 +84,13 @@ msgstr "A felhasználó nem adható hozzá ehhez a csoporthoz: %s"
 msgid "Unable to remove user from group %s"
 msgstr "A felhasználó nem távolítható el ebből a csoportból: %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "A program frissítése nem sikerült."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Frissítés erre a verzióra: {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -101,15 +102,15 @@ msgstr "Engedélyezés"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Kérem várjon..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Frissítés folyamatban..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Hiba történt a programfrissítés közben"
 
 #: js/apps.js:87
 msgid "Error"
@@ -117,16 +118,222 @@ msgstr "Hiba"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Frissítve"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Mentés..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "törölve"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "visszavonás"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "A felhasználót nem sikerült eltávolítáni"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Csoportok"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Csoportadminisztrátor"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Törlés"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "csoport hozzáadása"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Érvényes felhasználónevet kell megadnia"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "A felhasználó nem hozható létre"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Érvényes jelszót kell megadnia"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Biztonsági figyelmeztetés"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Az adatkönytára és az itt levő fájlok valószínűleg elérhetők az internetről. Az ownCloud által beillesztett .htaccess fájl nem működik. Nagyon fontos, hogy a webszervert úgy konfigurálja, hogy az adatkönyvtár nem legyen közvetlenül kívülről elérhető, vagy az adatkönyvtárt tegye a webszerver dokumentumfáján kívülre."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "A beállítással kapcsolatos figyelmeztetés"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Az Ön webkiszolgálója nincs megfelelően beállítva az állományok szinkronizálásához, mert a WebDAV-elérés úgy tűnik, nem működik."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Kérjük tüzetesen tanulmányozza át a <a href='%s'>telepítési útmutatót</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "A 'fileinfo' modul hiányzik"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "A 'fileinfo' PHP modul hiányzik. Erősen javasolt ennek a modulnak az telepítése, ha az ember jó eredményt szeretne a MIME-típusok felismerésében."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "A nyelvi lokalizáció nem működik"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Az ownCloud kiszolgáló nem tudja beállítani a rendszer lokalizációját \"en_US.UTF-8\"/\"en_US.UTF8\"-re.  Emiatt bizonyos karakterek problémákat okozhatnak a fájlnevekben. Erősen javasolt, hogy telepítse az en_US.UTF-8/en_US.UTF8 támogatásához szükséges csomagokat."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Az internet kapcsolat nem működik"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Az ownCloud kiszolgálónak nincs internet kapcsolata. Ez azt jelenti, hogy bizonyos dolgok nem fognak működni, pl. külső tárolók csatolása, programfrissítésekről való értesítések, vagy külső fejlesztői modulok telepítése. Lehet, hogy az állományok távolról történő elérése, ill. az email értesítések sem fog működni. Javasoljuk, hogy engedélyezze az internet kapcsolatot a kiszolgáló számára, ha az ownCloud összes szolgáltatását szeretné használni."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Ütemezett feladatok"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Egy-egy feladat végrehajtása minden alkalommal, amikor egy weboldalt letöltenek"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "A cron.php webcron szolgáltatásként van regisztrálva. Hívja meg az owncloud könyvtárban levő cron.php állományt http-n keresztül percenként egyszer."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "A rendszer cron szolgáltatásának használata. Hívja meg az owncloud könyvtárban levő  cron.php állományt percenként egyszer a rendszer cron szolgáltatásának segítségével."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Megosztás"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "A megosztás API-jának engedélyezése"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Lehetővé teszi, hogy a programmodulok is használhassák a megosztást"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Linkek engedélyezése"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Lehetővé teszi, hogy a felhasználók linkek segítségével külsősökkel is megoszthassák az adataikat"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "A továbbosztás engedélyezése"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Lehetővé teszi, hogy a felhasználók a velük megosztott állományokat megosszák egy további, harmadik féllel"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "A felhasználók bárkivel megoszthatják állományaikat"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "A felhasználók csak olyanokkal oszthatják meg állományaikat, akikkel közös csoportban vannak"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Biztonság"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Kötelező HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Kötelezővé teszi, hogy a böngészőprogramok titkosított csatornán kapcsolódjanak az ownCloud szolgáltatáshoz."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Kérjük, hogy HTTPS protokollt használjon, ha be vagy ki  akarja kapcsolni a kötelező SSL beállítást."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Naplózás"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Naplózási szint"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Több"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Verzió"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "A programot az <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud közösség</a> fejleszti. A <a href=\"https://github.com/owncloud\" target=\"_blank\">forráskód</a> az <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> feltételei mellett használható föl."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Az alkalmazás hozzáadása"
@@ -180,115 +387,85 @@ msgstr "Megvásárolható támogatás"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Az Ön tárterület-felhasználása jelenleg: <strong>%s</strong>. Maximálisan ennyi áll rendelkezésére: <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Kliensek"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Desktop kliensprogramok letöltése"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Android kliens letöltése"
+msgid "Get the apps to sync your files"
+msgstr "Töltse le az állományok szinkronizációjához szükséges programokat"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS kliens letöltése"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Nézzük meg újra az első bejelentkezéskori segítséget!"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Jelszó"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "A jelszava megváltozott"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "A jelszó nem változtatható meg"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "A jelenlegi jelszó"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Az új jelszó"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "lássam"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "A jelszó megváltoztatása"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "A megjelenített név"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Az Ön megjelenítési neve megváltozott"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Nem sikerült megváltoztatni az Ön megjelenítési nevét"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "A megjelenítési név módosítása"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Az Ön email címe"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Adja meg az email címét, hogy jelszó-emlékeztetőt kérhessen, ha elfelejtette a jelszavát!"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Nyelv"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Segítsen a fordításban!"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Ennek a címnek a megadásával a WebDAV-protokollon keresztül saját gépének fájlkezelőjével is is elérheti az állományait."
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Verzió"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "A programot az <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud közösség</a> fejleszti. A <a href=\"https://github.com/owncloud\" target=\"_blank\">forráskód</a> az <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> feltételei mellett használható föl."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Csoportok"
+msgstr "Bejelentkezési név"
 
 #: templates/users.php:32
 msgid "Create"
@@ -298,34 +475,26 @@ msgstr "Létrehozás"
 msgid "Default Storage"
 msgstr "Alapértelmezett tárhely"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Korlátlan"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Más"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Csoportadminisztrátor"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Tárhely"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "a megjelenített név módosítása"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "új jelszó beállítása"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Alapértelmezett"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Törlés"
diff --git a/l10n/hu_HU/user_ldap.po b/l10n/hu_HU/user_ldap.po
index 1b2cd9d4f828caa01fddd5ab9bde61db17dad5ff..b4d5350a18c24d122347e46efd87745ae65b9dc3 100644
--- a/l10n/hu_HU/user_ldap.po
+++ b/l10n/hu_HU/user_ldap.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 17:20+0000\n"
+"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n"
 "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,23 +21,23 @@ msgstr ""
 
 #: ajax/deleteConfiguration.php:34
 msgid "Failed to delete the server configuration"
-msgstr ""
+msgstr "Nem sikerült törölni a kiszolgáló konfigurációját"
 
 #: ajax/testConfiguration.php:35
 msgid "The configuration is valid and the connection could be established!"
-msgstr ""
+msgstr "A konfiguráció érvényes, és a kapcsolat létrehozható!"
 
 #: ajax/testConfiguration.php:37
 msgid ""
 "The configuration is valid, but the Bind failed. Please check the server "
 "settings and credentials."
-msgstr ""
+msgstr "A konfiguráció érvényes, de a kapcsolat nem hozható létre. Kérem ellenőrizze a kiszolgáló beállításait, és az elérési adatokat."
 
 #: ajax/testConfiguration.php:40
 msgid ""
 "The configuration is invalid. Please look in the ownCloud log for further "
 "details."
-msgstr ""
+msgstr "Érvénytelen konfiguráció. További információkért nézze meg az ownCloud naplófájlját."
 
 #: js/settings.js:66
 msgid "Deletion failed"
@@ -45,31 +45,31 @@ msgstr "A törlés nem sikerült"
 
 #: js/settings.js:82
 msgid "Take over settings from recent server configuration?"
-msgstr ""
+msgstr "Vegyük át a beállításokat az előző konfigurációból?"
 
 #: js/settings.js:83
 msgid "Keep settings?"
-msgstr ""
+msgstr "Tartsuk meg a beállításokat?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
-msgstr ""
+msgstr "Az új  kiszolgáló konfigurációja nem hozható létre"
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "A kapcsolatellenőrzés eredménye: sikerült"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "A kapcsolatellenőrzés eredménye: nem sikerült"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
-msgstr ""
+msgstr "Tényleg törölni szeretné a kiszolgáló beállításait?"
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "A törlés megerősítése"
 
 #: templates/settings.php:8
 msgid ""
@@ -86,11 +86,11 @@ msgstr "<b>Figyelmeztetés:</b> Az LDAP PHP modul nincs telepítve, ezért ez az
 
 #: templates/settings.php:15
 msgid "Server configuration"
-msgstr ""
+msgstr "A kiszolgálók beállításai"
 
 #: templates/settings.php:17
 msgid "Add Server Configuration"
-msgstr ""
+msgstr "Új kiszolgáló beállításának hozzáadása"
 
 #: templates/settings.php:21
 msgid "Host"
@@ -174,15 +174,15 @@ msgstr "itt ne használjunk változót, pl. \"objectClass=posixGroup\"."
 
 #: templates/settings.php:31
 msgid "Connection Settings"
-msgstr ""
+msgstr "Kapcsolati beállítások"
 
 #: templates/settings.php:33
 msgid "Configuration Active"
-msgstr ""
+msgstr "A beállítás aktív"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
-msgstr ""
+msgstr "Ha nincs kipipálva, ez a beállítás kihagyódik."
 
 #: templates/settings.php:34
 msgid "Port"
@@ -190,25 +190,25 @@ msgstr "Port"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "Másodkiszolgáló (replika)"
 
 #: templates/settings.php:35
 msgid ""
 "Give an optional backup host. It must be a replica of the main LDAP/AD "
 "server."
-msgstr ""
+msgstr "Adjon meg egy opcionális másodkiszolgálót. Ez a fő LDAP/AD kiszolgáló szinkron másolata (replikája) kell legyen."
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "A másodkiszolgáló (replika) portszáma"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
-msgstr ""
+msgstr "A fő szerver kihagyása"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
-msgstr ""
+msgstr "Ha ezt bekapcsoljuk, akkor az ownCloud csak a másodszerverekhez kapcsolódik."
 
 #: templates/settings.php:38
 msgid "Use TLS"
@@ -216,7 +216,7 @@ msgstr "Használjunk TLS-t"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "LDAPS kapcsolatok esetén ne kapcsoljuk be, mert nem fog működni."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -242,7 +242,7 @@ msgstr "másodpercben. A változtatás törli a cache tartalmát."
 
 #: templates/settings.php:43
 msgid "Directory Settings"
-msgstr ""
+msgstr "Címtár beállítások"
 
 #: templates/settings.php:45
 msgid "User Display Name Field"
@@ -262,11 +262,11 @@ msgstr "Soronként egy felhasználói fa gyökerét adhatjuk meg"
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
-msgstr ""
+msgstr "A felhasználók lekérdezett attribútumai"
 
 #: templates/settings.php:47 templates/settings.php:50
 msgid "Optional; one attribute per line"
-msgstr ""
+msgstr "Nem kötelező megadni, soronként egy attribútum"
 
 #: templates/settings.php:48
 msgid "Group Display Name Field"
@@ -286,7 +286,7 @@ msgstr "Soronként egy csoportfa gyökerét adhatjuk meg"
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "A csoportok lekérdezett attribútumai"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
@@ -294,7 +294,7 @@ msgstr "A csoporttagság attribútuma"
 
 #: templates/settings.php:53
 msgid "Special Attributes"
-msgstr ""
+msgstr "Különleges attribútumok"
 
 #: templates/settings.php:56
 msgid "in bytes"
diff --git a/l10n/ia/files.po b/l10n/ia/files.po
index bbc3d82ed75211c906db842265acc6fef5e3f97e..633ccdec7d22f5b487171e3d34da2d273e5c9174 100644
--- a/l10n/ia/files.po
+++ b/l10n/ia/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n"
 "MIME-Version: 1.0\n"
@@ -80,15 +80,15 @@ msgstr ""
 msgid "Files"
 msgstr "Files"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Deler"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -194,31 +194,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nomine"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Dimension"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificate"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ia/files_trashbin.po b/l10n/ia/files_trashbin.po
index a6fdefcf405c97640c60be67ff9997cf8c832b9e..adba7ebd96f21f352c9961953700f6b8e101c414 100644
--- a/l10n/ia/files_trashbin.po
+++ b/l10n/ia/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ia/lib.po b/l10n/ia/lib.po
index f1ac2e492b6d94ee6d9c28fd29ec8136d52732ac..bcd34dae7d36873706704c4d37482eb6b284a7ec 100644
--- a/l10n/ia/lib.po
+++ b/l10n/ia/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "Texto"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ia/settings.po b/l10n/ia/settings.po
index 47c4885728c28f537944da79b5b798c388c8dac1..774eb8a094722b30fcf8478f243c6cc419fc01a7 100644
--- a/l10n/ia/settings.po
+++ b/l10n/ia/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruppos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Deler"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Interlingua"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Adder tu application"
@@ -179,116 +385,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Contrasigno"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Non pote cambiar tu contrasigno"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Contrasigno currente"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nove contrasigno"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "monstrar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Cambiar contrasigno"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-posta"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Tu adresse de e-posta"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Linguage"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Adjuta a traducer"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruppos"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crear"
@@ -297,34 +473,26 @@ msgstr "Crear"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Altere"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Deler"
diff --git a/l10n/id/core.po b/l10n/id/core.po
index 315f226f1568318c73f52101a791c3d361a9713d..3ddaac2d1324ff4e688261e0070d9e19c33330bb 100644
--- a/l10n/id/core.po
+++ b/l10n/id/core.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
@@ -160,59 +160,59 @@ msgstr "Nopember"
 msgid "December"
 msgstr "Desember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Setelan"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "beberapa detik yang lalu"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 menit lalu"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hari ini"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "kemarin"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "bulan kemarin"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "beberapa bulan lalu"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "tahun kemarin"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "beberapa tahun lalu"
 
@@ -242,8 +242,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "gagal"
 
@@ -255,15 +255,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "berbagi"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "berbagi"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "gagal ketika membagikan"
 
@@ -359,23 +359,23 @@ msgstr "hapus"
 msgid "share"
 msgstr "bagikan"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "dilindungi kata kunci"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "gagal melepas tanggal kadaluarsa"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "gagal memasang tanggal kadaluarsa"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/id/files.po b/l10n/id/files.po
index e8dd16f5fad409e50890f3f2e77b8515f921a73e..8acd0447cffbb92035c7eeb1393f3f738e9333f9 100644
--- a/l10n/id/files.po
+++ b/l10n/id/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr ""
 msgid "Files"
 msgstr "Berkas"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Hapus"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -195,31 +195,31 @@ msgstr "tautan tidak boleh kosong"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nama"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Ukuran"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Dimodifikasi"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/id/files_trashbin.po b/l10n/id/files_trashbin.po
index 70eaf1fc21676c8417344b5dab494a0f65c4e1e5..15be1a566a34ab641d211a4349543dc354827af6 100644
--- a/l10n/id/files_trashbin.po
+++ b/l10n/id/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/id/lib.po b/l10n/id/lib.po
index 020143c5a5fb1ca43debc41c747e0f8f9884c802..32d4cfd14ee264338de21cc1964dbe05e47628cf 100644
--- a/l10n/id/lib.po
+++ b/l10n/id/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "teks"
 msgid "Images"
 msgstr "Gambar"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/id/settings.po b/l10n/id/settings.po
index 2787995bd72b92380ddb453b74da4414c25d2a5d..56cc39cb356a69ce6279f2581944d889db7402c1 100644
--- a/l10n/id/settings.po
+++ b/l10n/id/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "autentikasi bermasalah"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -84,7 +84,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -124,10 +124,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Menyimpan..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "dihapus"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "batal dikerjakan"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Group"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Admin Grup"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Hapus"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "peringatan keamanan"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "lagi"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Tambahkan App anda"
@@ -181,116 +387,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klien"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Password"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Tidak dapat merubah password anda"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Password saat ini"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "kata kunci baru"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "perlihatkan"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Rubah password"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Alamat email anda"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Masukkan alamat email untuk mengaktifkan pemulihan password"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Bahasa"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Bantu menerjemahkan"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Group"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Buat"
@@ -299,34 +475,26 @@ msgstr "Buat"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Lain-lain"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Admin Grup"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Hapus"
diff --git a/l10n/is/core.po b/l10n/is/core.po
index 5dd96b65d4b23e6b802cd2e7485440e166a643a2..0a5e526535a15cef6b25d069d0c02023e23f85d6 100644
--- a/l10n/is/core.po
+++ b/l10n/is/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "Nóvember"
 msgid "December"
 msgstr "Desember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Stillingar"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sek síðan"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 min síðan"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} min síðan"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Fyrir 1 klst."
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "fyrir {hours} klst."
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "í dag"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "í gær"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dagar síðan"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "síðasta mánuði"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "fyrir {months} mánuðum"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "mánuðir síðan"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "síðasta ári"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "árum síðan"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr "Tegund ekki tilgreind"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Villa"
 
@@ -253,15 +253,15 @@ msgstr "Nafn forrits ekki tilgreint"
 msgid "The required file {file} is not installed!"
 msgstr "Umbeðina skráin {file} ekki tiltæk!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Deila"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Deila"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Villa við deilingu"
 
@@ -357,23 +357,23 @@ msgstr "eyða"
 msgid "share"
 msgstr "deila"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Verja með lykilorði"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Villa við að aftengja gildistíma"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Villa við að setja gildistíma"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sendi ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Tölvupóstur sendur"
 
diff --git a/l10n/is/files.po b/l10n/is/files.po
index c4b5238a062949a56ca45a6dd5637e7b496c5c8d..0e399eecf6e45f06b64d97ca0bd603a1b1c830a5 100644
--- a/l10n/is/files.po
+++ b/l10n/is/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr "Ógild mappa."
 msgid "Files"
 msgstr "Skrár"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Eyða"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Endurskýra"
 
@@ -193,31 +193,31 @@ msgstr "Vefslóð má ekki vera tóm."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Óleyfilegt nafn á möppu. Nafnið 'Shared' er frátekið fyrir Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nafn"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Stærð"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Breytt"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mappa"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} möppur"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 skrá"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} skrár"
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr "Af tengli"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/is/files_trashbin.po b/l10n/is/files_trashbin.po
index 808dfe5a4c3ed476723ad0a74b63d1cac41da01d..858d3ee0764823cc6a45729be28a5f989c6b5e6e 100644
--- a/l10n/is/files_trashbin.po
+++ b/l10n/is/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/is/lib.po b/l10n/is/lib.po
index 2b6b678986f8c9e6070e6d86629bdc29170225a4..034f5b7edab6e990f8842580e4eb5953414ca3d0 100644
--- a/l10n/is/lib.po
+++ b/l10n/is/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "Texti"
 msgid "Images"
 msgstr "Myndir"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/is/settings.po b/l10n/is/settings.po
index fea2c3787841530bba7738749248c0df909658f5..23cca9ba41618b690337d8f2372e7d3eb2fa88c7 100644
--- a/l10n/is/settings.po
+++ b/l10n/is/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Ekki tókst að hlaða lista frá forrita síðu"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Villa við auðkenningu"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr "Ekki tókst að bæta notenda við hópinn %s"
 msgid "Unable to remove user from group %s"
 msgstr "Ekki tókst að fjarlægja notanda úr hópnum %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Er að vista ..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "afturkalla"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Hópar"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Hópstjóri"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Eyða"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__nafn_tungumáls__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Öryggis aðvörun"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Gagnamappan þín er að öllum líkindum aðgengileg frá internetinu. Skráin .htaccess sem fylgir með ownCloud er ekki að virka. Við mælum eindregið með því að þú stillir vefþjóninn þannig að gagnamappan verði ekki aðgengileg frá internetinu eða færir hana út fyrir vefrótina."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Meira"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Útgáfa"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Þróað af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud samfélaginu</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">forrita kóðinn</a> er skráðu með <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Bæta við forriti"
@@ -178,116 +384,86 @@ msgstr "Borgaður stuðningur"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Þú hefur notað <strong>%s</strong> af tiltæku <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Notendahugbúnaður"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Hlaða niður notendahugbúnaði"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Hlaða niður Andoid hugbúnaði"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Hlaða niður iOS hugbúnaði"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Lykilorð"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Lykilorði þínu hefur verið breytt"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Ekki tókst að breyta lykilorðinu þínu"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Núverandi lykilorð"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nýtt lykilorð"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "sýna"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Breyta lykilorði"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Netfang"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Netfangið þitt"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Sláðu inn netfangið þitt til að virkja endurheimt á lykilorði"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Tungumál"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hjálpa við þýðingu"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Notaðu þessa vefslóð til að tengjast ownCloud svæðinu þínu"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Útgáfa"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Þróað af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud samfélaginu</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">forrita kóðinn</a> er skráðu með <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Hópar"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Búa til"
@@ -296,34 +472,26 @@ msgstr "Búa til"
 msgid "Default Storage"
 msgstr "Sjálfgefin gagnageymsla"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ótakmarkað"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Annað"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Hópstjóri"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "gagnapláss"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Sjálfgefið"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Eyða"
diff --git a/l10n/it/core.po b/l10n/it/core.po
index bca11b8fb89def985d697e95d666322495c4d10d..863859a6dfb03111ae82af29b5d2fda890a66703 100644
--- a/l10n/it/core.po
+++ b/l10n/it/core.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 00:44+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n"
 "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n"
 "MIME-Version: 1.0\n"
@@ -166,55 +166,55 @@ msgstr "Dicembre"
 msgid "Settings"
 msgstr "Impostazioni"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "secondi fa"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "Un minuto fa"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minuti fa"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 ora fa"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} ore fa"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "oggi"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ieri"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} giorni fa"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "mese scorso"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} mesi fa"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "mesi fa"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "anno scorso"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "anni fa"
 
@@ -257,14 +257,14 @@ msgstr "Il nome dell'applicazione non è specificato."
 msgid "The required file {file} is not installed!"
 msgstr "Il file richiesto {file} non è installato!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Condividi"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Condivisi"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Condividi"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Errore durante la condivisione"
diff --git a/l10n/it/files.po b/l10n/it/files.po
index bcd2745015232f486e7e572ec33025b10163535f..1a3e8db783bbbc57c45f84149b0babdab3c77cd1 100644
--- a/l10n/it/files.po
+++ b/l10n/it/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr "Cartella non valida."
 msgid "Files"
 msgstr "File"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Elimina definitivamente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Elimina"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Rinomina"
 
@@ -196,31 +196,31 @@ msgstr "L'URL non può essere vuoto."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nome della cartella non valido. L'uso di 'Shared' è riservato da ownCloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nome"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Dimensione"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificato"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 cartella"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} cartelle"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 file"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} file"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "Da collegamento"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/it/files_trashbin.po b/l10n/it/files_trashbin.po
index f023541c8517882d21f22baba9d569fe3dd24ac5..f696193957dc125f7da8cc4713f92a6dfa5dae59 100644
--- a/l10n/it/files_trashbin.po
+++ b/l10n/it/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-07 23:30+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
 "Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n"
 "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/it/lib.po b/l10n/it/lib.po
index 5e8f171bac2fd4d7b188d4d8d267a78ba2b50566..983e5ae5a7cc0c10d574d596163c2d7a80e88d6c 100644
--- a/l10n/it/lib.po
+++ b/l10n/it/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n"
 "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -86,16 +86,102 @@ msgstr "Testo"
 msgid "Images"
 msgstr "Immagini"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Imposta un nome utente di amministrazione."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Imposta una password di amministrazione."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Specifica una cartella dei dati."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s digita il nome utente del database."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s digita il nome del database."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s non dovresti utilizzare punti nel nome del database"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s imposta l'host del database."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nome utente e/o password di PostgreSQL non validi"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "È necessario inserire un account esistente o l'amministratore."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Nome utente e/o password di Oracle non validi"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Nome utente e/o password di MySQL non validi"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Errore DB: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Il comando non consentito era: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "L'utente MySQL '%s'@'localhost' esiste già."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Elimina questo utente da MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "L'utente MySQL '%s'@'%%' esiste già"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Elimina questo utente da MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Il comando non consentito era: \"%s\", nome: %s, password: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Leggi attentamente le <a href='%s'>guide d'installazione</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/it/settings.po b/l10n/it/settings.po
index 769e953dd0175589a5d8999388ba17aa20052826..590800accaa63a8eb9773d996a3cb96b5f168d59 100644
--- a/l10n/it/settings.po
+++ b/l10n/it/settings.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-06 23:21+0000\n"
-"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,12 +28,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Impossibile caricare l'elenco dall'App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Errore di autenticazione"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Impossibile cambiare il nome visualizzato"
 
@@ -87,7 +87,7 @@ msgstr "Impossibile aggiungere l'utente al gruppo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Impossibile rimuovere l'utente dal gruppo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Impossibile aggiornate l'applicazione."
 
@@ -127,10 +127,216 @@ msgstr "Aggiornato"
 msgid "Saving..."
 msgstr "Salvataggio in corso..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "eliminati"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "annulla"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Impossibile rimuovere l'utente"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruppi"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppi amministrati"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Elimina"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "aggiungi gruppo"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Deve essere fornito un nome utente valido"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Errore durante la creazione dell'utente"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Deve essere fornita una password valida"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Italiano"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Avviso di sicurezza"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "La cartella dei dati e i tuoi file sono probabilmente accessibili da Internet. Il file .htaccess fornito da ownCloud non funziona. Ti suggeriamo vivamente di configurare il server web in modo che la cartella dei dati non sia più accessibile o sposta tale cartella fuori dalla radice del sito."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Avviso di configurazione"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Leggi attentamente le <a href='%s'>guide d'installazione</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Modulo 'fileinfo' mancante"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Il modulo PHP 'fileinfo' non è presente. Consigliamo vivamente di abilitare questo modulo per ottenere risultati migliori con il rilevamento dei tipi MIME."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Locale non funzionante"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Questo server ownCloud non può impostare la localizzazione a \"en_US.UTF-8\"/\"en_US.UTF8\". Ciò significa che potrebbero verificarsi dei problemi con alcuni caratteri nei nomi dei file. Consigliamo vivamente di installare i pacchetti necessari a supportare en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Concessione Internet non funzionante"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Questo server ownCloud non ha una connessione a Internet funzionante. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. Anche l'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Ti suggeriamo di abilitare la connessione a Internet del server se desideri disporre di tutte le funzionalità di ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Esegui un'operazione con ogni pagina caricata"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php è registrato su un sevizio webcron. Invoca la pagina cron.php nella radice di ownCloud ogni minuto, tramite http."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Utilizza il servizio cron di sistema. Invoca il file cron.php nella cartella di ownCloud tramite un job ogni minuto."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Condivisione"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Abilita API di condivisione"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Consenti alle applicazioni di utilizzare le API di condivisione"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Consenti collegamenti"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Consenti agli utenti di condividere pubblicamente elementi tramite collegamenti"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Consenti la ri-condivisione"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Consenti agli utenti di condividere a loro volta elementi condivisi da altri"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Consenti agli utenti di condividere con chiunque"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Consenti agli utenti di condividere solo con utenti dei loro gruppi"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Protezione"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Forza HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Obbliga i client a connettersi a ownCloud tramite una confessione cifrata."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Connettiti a questa istanza di ownCloud tramite HTTPS per abilitare o disabilitare la protezione SSL."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Log"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Livello di log"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Più"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versione"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunità di ownCloud</a>, il <a href=\"https://github.com/owncloud\" target=\"_blank\">codice sorgente</a> è licenziato nei termini della <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Aggiungi la tua applicazione"
@@ -184,116 +390,86 @@ msgstr "Supporto commerciale"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Hai utilizzato <strong>%s</strong> dei <strong>%s</strong> disponibili"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Client"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Scarica client desktop"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Scarica client Android"
+msgid "Get the apps to sync your files"
+msgstr "Scarica le applicazioni per sincronizzare i tuoi file"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Scarica client iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Mostra nuovamente la procedura di primo avvio"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Password"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "La tua password è cambiata"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Modifica password non riuscita"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Password attuale"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nuova password"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostra"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Modifica password"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nome visualizzato"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Il tuo nome visualizzato è stato cambiato"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Impossibile cambiare il tuo nome visualizzato"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Cambia il nome visualizzato"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Il tuo indirizzo email"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Inserisci il tuo indirizzo email per abilitare il recupero della password"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Lingua"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Migliora la traduzione"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Usa questo indirizzo per connetterti al tuo ownCloud dal tuo gestore file"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versione"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunità di ownCloud</a>, il <a href=\"https://github.com/owncloud\" target=\"_blank\">codice sorgente</a> è licenziato nei termini della <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nome utente"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruppi"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crea"
@@ -302,34 +478,26 @@ msgstr "Crea"
 msgid "Default Storage"
 msgstr "Archiviazione predefinita"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Illimitata"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Altro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppi amministrati"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Archiviazione"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "cambia il nome visualizzato"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "imposta una nuova password"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Predefinito"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Elimina"
diff --git a/l10n/ja_JP/core.po b/l10n/ja_JP/core.po
index 312d7f72cef4f3bf3a19a4a276b1cb2e442af928..c6394fa579a7b68854295bc7051b2a4fda2dbc22 100644
--- a/l10n/ja_JP/core.po
+++ b/l10n/ja_JP/core.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,59 +159,59 @@ msgstr "11月"
 msgid "December"
 msgstr "12月"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "設定"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "秒前"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 分前"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} 分前"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 時間前"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} 時間前"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "今日"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "昨日"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} 日前"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "一月前"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} 月前"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "月前"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "一年前"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "年前"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "オブジェクタイプが指定されていません。"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "エラー"
 
@@ -254,15 +254,15 @@ msgstr "アプリ名がしていされていません。"
 msgid "The required file {file} is not installed!"
 msgstr "必要なファイル {file} がインストールされていません!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "共有"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "共有中"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "共有"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "共有でエラー発生"
 
@@ -358,23 +358,23 @@ msgstr "削除"
 msgid "share"
 msgstr "共有"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "パスワード保護"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "有効期限の未設定エラー"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "有効期限の設定でエラー発生"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "送信中..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "メールを送信しました"
 
@@ -490,14 +490,14 @@ msgstr "セキュアな乱数生成器が無い場合、攻撃者はパスワー
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr ".htaccess ファイルが動作していないため、おそらくあなたのデータディレクトリもしくはファイルはインターネットからアクセス可能です。"
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "あなたのサーバの適切な設定に関する情報として、<a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">ドキュメント</a>を参照して下さい。"
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/ja_JP/files.po b/l10n/ja_JP/files.po
index ff098adc1baf80679bdcd078df5431f0c1791bdf..21ebd3c48b294bf000b761dabf0001d49b615d31 100644
--- a/l10n/ja_JP/files.po
+++ b/l10n/ja_JP/files.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
@@ -83,15 +83,15 @@ msgstr "無効なディレクトリです。"
 msgid "Files"
 msgstr "ファイル"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "完全に削除する"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "削除"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "名前の変更"
 
@@ -197,31 +197,31 @@ msgstr "URLは空にできません。"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "無効なフォルダ名です。'Shared' の利用は ownCloud が予約済みです。"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "名前"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "サイズ"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "更新日時"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 フォルダ"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} フォルダ"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ファイル"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} ファイル"
 
@@ -278,7 +278,7 @@ msgid "From link"
 msgstr "リンク"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ja_JP/files_trashbin.po b/l10n/ja_JP/files_trashbin.po
index 81066069c869362fd6d3d7219ba3610f0b64dc0d..a81dae25c6e1764868469b21ff2ab63f92fa46ea 100644
--- a/l10n/ja_JP/files_trashbin.po
+++ b/l10n/ja_JP/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 04:10+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
 "Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ja_JP/lib.po b/l10n/ja_JP/lib.po
index 1cdf2d62aea72a149f805644136d444b88b6ec1e..44896775294b3693298d22d4d194e02f0bedc385 100644
--- a/l10n/ja_JP/lib.po
+++ b/l10n/ja_JP/lib.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -87,16 +87,102 @@ msgstr "TTY TDD"
 msgid "Images"
 msgstr "画像"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "管理者のユーザ名を設定。"
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "管理者のパスワードを設定。"
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "データフォルダを指定。"
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s のデータベースのユーザ名を入力してください。"
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s のデータベース名を入力してください。"
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s ではデータベース名にドットを利用できないかもしれません。"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s にデータベースホストを設定します。"
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQLのユーザ名もしくはパスワードは有効ではありません"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "既存のアカウントもしくは管理者のどちらかを入力する必要があります。"
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Oracleのユーザ名もしくはパスワードは有効ではありません"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQLのユーザ名もしくはパスワードは有効ではありません"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DBエラー: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "違反コマンド: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQLのユーザ '%s'@'localhost' はすでに存在します。"
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "MySQLからこのユーザを削除"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQLのユーザ '%s'@'%%' はすでに存在します。"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "MySQLからこのユーザを削除する。"
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "違反コマンド: \"%s\"、名前: %s、パスワード: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "WebDAVインタフェースが動作していないと考えられるため、あなたのWEBサーバはまだファイルの同期を許可するように適切な設定がされていません。"
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "<a href='%s'>インストールガイド</a>をよく確認してください。"
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/ja_JP/settings.po b/l10n/ja_JP/settings.po
index d8f0f19d63d0d7c05da278c5b080a7f85856a339..eeb11a53539cc4df7fe5b874b72f4762b833907b 100644
--- a/l10n/ja_JP/settings.po
+++ b/l10n/ja_JP/settings.po
@@ -12,9 +12,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 02:20+0000\n"
-"Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -26,12 +26,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "アプリストアからリストをロードできません"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "認証エラー"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "表示名を変更できません"
 
@@ -85,7 +85,7 @@ msgstr "ユーザをグループ %s に追加できません"
 msgid "Unable to remove user from group %s"
 msgstr "ユーザをグループ %s から削除できません"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "アプリを更新出来ませんでした。"
 
@@ -125,10 +125,216 @@ msgstr "更新済み"
 msgid "Saving..."
 msgstr "保存中..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "削除"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "元に戻す"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "ユーザを削除出来ません"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "グループ"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "グループ管理者"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "削除"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "グループを追加"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "有効なユーザ名を指定する必要があります"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "ユーザ作成エラー"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "有効なパスワードを指定する必要があります"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Japanese (日本語)"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "セキュリティ警告"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "データディレクトリとファイルが恐らくインターネットからアクセスできるようになっています。ownCloudが提供する .htaccessファイルが機能していません。データディレクトリを全くアクセスできないようにするか、データディレクトリをウェブサーバのドキュメントルートの外に置くようにウェブサーバを設定することを強くお勧めします。 "
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "セットアップ警告"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "WebDAVインタフェースが動作していないと考えられるため、あなたのWEBサーバはまだファイルの同期を許可するように適切な設定がされていません。"
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "<a href='%s'>インストールガイド</a>をよく確認してください。"
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "モジュール 'fileinfo' が見つかりません"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "PHP のモジュール 'fileinfo' が見つかりません。mimeタイプの検出を精度良く行うために、このモジュールを有効にすることを強くお勧めします。"
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "ロケールが動作していません"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "この ownCloud サーバは、システムロケールを \"en_US.UTF-8\"/\"en_US.UTF8\" に設定できません。これは、ファイル名の特定の文字で問題が発生する可能性があることを意味しています。en_US.UTF-8/en_US.UTF8 をサポートするために、システムに必要なパッケージをインストールすることを強く推奨します。"
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "インターネット接続が動作していません"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "この ownCloud サーバには有効なインターネット接続がありません。これは、外部ストレージのマウント、更新の通知、サードパーティ製アプリのインストール、のようないくつかの機能が動作しないことを意味しています。リモートからファイルにアクセスしたり、通知メールを送信したりすることもできません。全ての機能を利用するためには、このサーバのインターネット接続を有効にすることを推奨します。"
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "各ページの読み込み時にタスクを実行する"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php は webcron サービスに登録されています。owncloud のルートにある cron.php のページを http 経由で1分に1回呼び出して下さい。"
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "システムの cron サービスを利用する。システムの cronjob を通して1分に1回 owncloud 内の cron.php ファイルを呼び出して下さい。"
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "共有"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "共有APIを有効にする"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "アプリからの共有APIの利用を許可する"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "リンクを許可する"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "リンクによりアイテムを公開することを許可する"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "再共有を許可する"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "ユーザが共有しているアイテムの再共有を許可する"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "ユーザが誰とでも共有することを許可する"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "ユーザにグループ内のユーザとのみ共有を許可する"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "セキュリティ"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "常にHTTPSを使用する"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "クライアントからownCloudへの接続を常に暗号化する"
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "常にSSL接続を有効/無効にするために、HTTPS経由でこの ownCloud に接続して下さい。"
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "ログ"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "ログレベル"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "詳細"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "バージョン"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>により開発されています、<a href=\"https://github.com/owncloud\" target=\"_blank\">ソースコード</a>ライセンスは、<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> ライセンスにより提供されています。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "アプリを追加"
@@ -182,116 +388,86 @@ msgstr "コマーシャルサポート"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "現在、<strong>%s</strong> / <strong>%s</strong> を利用しています"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "顧客"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "デスクトップクライアントをダウンロード"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Androidクライアントをダウンロード"
+msgid "Get the apps to sync your files"
+msgstr "あなたのファイルを同期するためのアプリを取得"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOSクライアントをダウンロード"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "初回実行ウィザードを再度表示する"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "パスワード"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "パスワードを変更しました"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "パスワードを変更することができません"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "現在のパスワード"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "新しいパスワード"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "表示"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "パスワードを変更"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "表示名"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "あなたの表示名を変更しました"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "あなたの表示名を変更できません"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "表示名を変更"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "あなたのメールアドレス"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "※パスワード回復を有効にするにはメールアドレスの入力が必要です"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "言語"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "翻訳に協力する"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "ファイルマネージャでownCloudに接続する際はこのアドレスを利用してください"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "バージョン"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>により開発されています、<a href=\"https://github.com/owncloud\" target=\"_blank\">ソースコード</a>ライセンスは、<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> ライセンスにより提供されています。"
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "ログイン名"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "グループ"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "作成"
@@ -300,34 +476,26 @@ msgstr "作成"
 msgid "Default Storage"
 msgstr "デフォルトストレージ"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "無制限"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "その他"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "グループ管理者"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "ストレージ"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "表示名を変更"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "新しいパスワードを設定"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "デフォルト"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "削除"
diff --git a/l10n/ka_GE/core.po b/l10n/ka_GE/core.po
index 9874547f0384f125a418840e4d48cd2d9386ade7..179e1f94829d08af72b16055ffd19cca46cf49d0 100644
--- a/l10n/ka_GE/core.po
+++ b/l10n/ka_GE/core.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n"
 "MIME-Version: 1.0\n"
@@ -157,59 +157,59 @@ msgstr "ნოემბერი"
 msgid "December"
 msgstr "დეკემბერი"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "პარამეტრები"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "წამის წინ"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 წუთის წინ"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} წუთის წინ"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "დღეს"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "გუშინ"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} დღის წინ"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "გასულ თვეში"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "თვის წინ"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "ბოლო წელს"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "წლის წინ"
 
@@ -239,8 +239,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "შეცდომა"
 
@@ -252,15 +252,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "გაზიარება"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "გაზიარება"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "შეცდომა გაზიარების დროს"
 
@@ -356,23 +356,23 @@ msgstr "წაშლა"
 msgid "share"
 msgstr "გაზიარება"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "პაროლით დაცული"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "შეცდომა ვადის გასვლის მოხსნის დროს"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "შეცდომა ვადის გასვლის მითითების დროს"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/ka_GE/files.po b/l10n/ka_GE/files.po
index c9b22c6c9c536b399308ad8137655b8334feb6bb..c0cadd907041f0abb4570d7e6f91c3424082d72a 100644
--- a/l10n/ka_GE/files.po
+++ b/l10n/ka_GE/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "ფაილები"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "წაშლა"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "გადარქმევა"
 
@@ -193,31 +193,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "სახელი"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "ზომა"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "შეცვლილია"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 საქაღალდე"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} საქაღალდე"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ფაილი"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} ფაილი"
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ka_GE/files_trashbin.po b/l10n/ka_GE/files_trashbin.po
index 0b9d8c59f9c43f8be948ae4b5f99a69aa80fe838..89f7efa5b696a680daa55df6b029629413876fc2 100644
--- a/l10n/ka_GE/files_trashbin.po
+++ b/l10n/ka_GE/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ka_GE/lib.po b/l10n/ka_GE/lib.po
index 333713fd7a5675f1eff04230a10450fb30b74cf0..8bdb5af258a5354c69422f95dc386c116535fcf3 100644
--- a/l10n/ka_GE/lib.po
+++ b/l10n/ka_GE/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "ტექსტი"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ka_GE/settings.po b/l10n/ka_GE/settings.po
index 2f73884030edcf3708488cc09b136dd21caf574b..3f628dba71f5bfe6bc82135730d43d7f1a5f9807 100644
--- a/l10n/ka_GE/settings.po
+++ b/l10n/ka_GE/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "აპლიკაციების სია ვერ ჩამოიტვირთა App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "ავთენტიფიკაციის შეცდომა"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr "მომხმარებლის დამატება ვერ
 msgid "Unable to remove user from group %s"
 msgstr "მომხმარებლის წაშლა ვერ მოხეხდა ჯგუფიდან %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "შენახვა..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "დაბრუნება"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "ჯგუფი"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "ჯგუფის ადმინისტრატორი"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "წაშლა"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "უსაფრთხოების გაფრთხილება"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "დაამატე შენი აპლიკაცია"
@@ -178,116 +384,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "კლიენტები"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "პაროლი"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "თქვენი პაროლი შეიცვალა"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "თქვენი პაროლი არ შეიცვალა"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "მიმდინარე პაროლი"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "ახალი პაროლი"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "გამოაჩინე"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "პაროლის შეცვლა"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "იმეილი"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "თქვენი იმეილ მისამართი"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "შეავსეთ იმეილ მისამართის ველი პაროლის აღსადგენად"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "ენა"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "თარგმნის დახმარება"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "ჯგუფი"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "შექმნა"
@@ -296,34 +472,26 @@ msgstr "შექმნა"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "სხვა"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "ჯგუფის ადმინისტრატორი"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "წაშლა"
diff --git a/l10n/ko/core.po b/l10n/ko/core.po
index 72fae94a3df5cbcfc0ad1083afea72d86b4206ec..c3e84e4040bd3ba40fd87a9b85f0c4ee95620c93 100644
--- a/l10n/ko/core.po
+++ b/l10n/ko/core.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
@@ -161,59 +161,59 @@ msgstr "11월"
 msgid "December"
 msgstr "12월"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "설정"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "초 전"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1분 전"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes}분 전"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1시간 전"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours}시간 전"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "오늘"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "어제"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days}일 전"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "지난 달"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months}개월 전"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "개월 전"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "작년"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "년 전"
 
@@ -243,8 +243,8 @@ msgid "The object type is not specified."
 msgstr "객체 유형이 지정되지 않았습니다."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "오류"
 
@@ -256,15 +256,15 @@ msgstr "앱 이름이 지정되지 않았습니다."
 msgid "The required file {file} is not installed!"
 msgstr "필요한 파일 {file}이(가) 설치되지 않았습니다!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "공유"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "공유됨"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "공유"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "공유하는 중 오류 발생"
 
@@ -360,23 +360,23 @@ msgstr "삭제"
 msgid "share"
 msgstr "공유"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "암호로 보호됨"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "만료 날짜 해제 오류"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "만료 날짜 설정 오류"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "전송 중..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "이메일 발송됨"
 
diff --git a/l10n/ko/files.po b/l10n/ko/files.po
index 4fc91abaeefaff4c955cdfaf7f3937c0d0f71e9b..42732dd887f3ff7cf19725bf3c1a1c25522c3217 100644
--- a/l10n/ko/files.po
+++ b/l10n/ko/files.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
@@ -84,15 +84,15 @@ msgstr "올바르지 않은 디렉터리입니다."
 msgid "Files"
 msgstr "파일"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "삭제"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "이름 바꾸기"
 
@@ -198,31 +198,31 @@ msgstr "URL을 입력해야 합니다."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "폴더 이름이 유효하지 않습니다. "
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "이름"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "크기"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "수정됨"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "폴더 1개"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "폴더 {count}개"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "파일 1개"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "파일 {count}개"
 
@@ -279,7 +279,7 @@ msgid "From link"
 msgstr "링크에서"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ko/files_trashbin.po b/l10n/ko/files_trashbin.po
index 85904a36e17d7b33e0b9cc9737d33a6a737fd695..d03c3476b2ef03651922839dced880d14c3579df 100644
--- a/l10n/ko/files_trashbin.po
+++ b/l10n/ko/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ko/lib.po b/l10n/ko/lib.po
index 2a2fefa135a622f19d106e430239efd400b17549..eeaa4b93c1239ac726b9b0c7a34c459211647727 100644
--- a/l10n/ko/lib.po
+++ b/l10n/ko/lib.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
@@ -88,13 +88,99 @@ msgstr "텍스트"
 msgid "Images"
 msgstr "그림"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ko/settings.po b/l10n/ko/settings.po
index 65a8c9d6e2222a345a380fb6b3a2de65395e3165..d1f243a24e56f95e62dcb4e832f1ed2c6e139cd6 100644
--- a/l10n/ko/settings.po
+++ b/l10n/ko/settings.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
@@ -26,12 +26,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "앱 스토어에서 목록을 가져올 수 없습니다"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "인증 오류"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -85,7 +85,7 @@ msgstr "그룹 %s에 사용자를 추가할 수 없습니다."
 msgid "Unable to remove user from group %s"
 msgstr "그룹 %s에서 사용자를 삭제할 수 없습니다."
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -125,10 +125,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "저장 중..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "삭제"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "실행 취소"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "그룹"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "그룹 관리자"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "삭제"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "한국어"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "보안 경고"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "데이터 디렉터리와 파일을 인터넷에서 접근할 수 있는 것 같습니다. ownCloud에서 제공한 .htaccess 파일이 작동하지 않습니다. 웹 서버를 다시 설정하여 데이터 디렉터리에 접근할 수 없도록 하거나 문서 루트 바깥쪽으로 옮기는 것을 추천합니다."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "더 중요함"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "버전"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 커뮤니티</a>에 의해서 개발되었습니다. <a href=\"https://github.com/owncloud\" target=\"_blank\">원본 코드</a>는 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>에 따라 사용이 허가됩니다."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "앱 추가"
@@ -182,116 +388,86 @@ msgstr "상업용 지원"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "현재 공간 <strong>%s</strong>/<strong>%s</strong>을(를) 사용 중입니다"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "클라이언트"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "데스크톱 클라이언트 다운로드"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "안드로이드 클라이언트 다운로드"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS 클라이언트 다운로드"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "첫 실행 마법사 다시 보이기"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "암호"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "암호가 변경되었습니다"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "암호를 변경할 수 없음"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "현재 암호"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "새 암호"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "보이기"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "암호 변경"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "표시 이름"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "이메일"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "이메일 주소"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "암호 찾기 기능을 사용하려면 이메일 주소를 입력하십시오."
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "언어"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "번역 돕기"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "파일 관리자에서 ownCloud에 접속하려면 이 주소를 사용하십시오."
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "버전"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 커뮤니티</a>에 의해서 개발되었습니다. <a href=\"https://github.com/owncloud\" target=\"_blank\">원본 코드</a>는 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>에 따라 사용이 허가됩니다."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "로그인 이름"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "그룹"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "만들기"
@@ -300,34 +476,26 @@ msgstr "만들기"
 msgid "Default Storage"
 msgstr "기본 저장소"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "무제한"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "기타"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "그룹 관리자"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "저장소"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "표시 이름 변경"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "새 암호 설정"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "기본값"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "삭제"
diff --git a/l10n/ko/user_ldap.po b/l10n/ko/user_ldap.po
index 1402718d755eb8659909a3d0a91e4518483e99a5..df1f2796b47c1de0ca5c880d3b343de1ca5d0181 100644
--- a/l10n/ko/user_ldap.po
+++ b/l10n/ko/user_ldap.po
@@ -5,14 +5,15 @@
 # Translators:
 #   <aoiob4305@gmail.com>, 2013.
 # 남자사람  <cessnagi@gmail.com>, 2012.
+# Harim Park <fofwisdom@gmail.com>, 2013.
 # Shinjo Park <kde@peremen.name>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: Harim Park <fofwisdom@gmail.com>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -50,7 +51,7 @@ msgstr ""
 
 #: js/settings.js:83
 msgid "Keep settings?"
-msgstr ""
+msgstr "설정을 유지합니까?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
@@ -58,11 +59,11 @@ msgstr ""
 
 #: js/settings.js:121
 msgid "Connection test succeeded"
-msgstr ""
+msgstr "연결 시험 성공"
 
 #: js/settings.js:126
 msgid "Connection test failed"
-msgstr ""
+msgstr "연결 시험 실패"
 
 #: js/settings.js:136
 msgid "Do you really want to delete the current Server Configuration?"
@@ -175,11 +176,11 @@ msgstr "자리 비움자를 사용할 수 없습니다. 예제: \"objectClass=po
 
 #: templates/settings.php:31
 msgid "Connection Settings"
-msgstr ""
+msgstr "연결 설정"
 
 #: templates/settings.php:33
 msgid "Configuration Active"
-msgstr ""
+msgstr "구성 활성화"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
@@ -191,7 +192,7 @@ msgstr "포트"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "백업 (복제) 포트"
 
 #: templates/settings.php:35
 msgid ""
@@ -201,11 +202,11 @@ msgstr ""
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "백업 (복제) 포트"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
-msgstr ""
+msgstr "주 서버 비활성화"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
@@ -243,7 +244,7 @@ msgstr "초. 항목 변경 시 캐시가 갱신됩니다."
 
 #: templates/settings.php:43
 msgid "Directory Settings"
-msgstr ""
+msgstr "디렉토리 설정"
 
 #: templates/settings.php:45
 msgid "User Display Name Field"
@@ -263,7 +264,7 @@ msgstr "사용자 DN을 한 줄에 하나씩 입력하십시오"
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
-msgstr ""
+msgstr "사용자 검색 속성"
 
 #: templates/settings.php:47 templates/settings.php:50
 msgid "Optional; one attribute per line"
@@ -287,7 +288,7 @@ msgstr "그룹 기본 DN을 한 줄에 하나씩 입력하십시오"
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "그룹 검색 속성"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
diff --git a/l10n/ku_IQ/files.po b/l10n/ku_IQ/files.po
index e22bec404b1bbc9036eb00a1b8d2f8ff1b19ceaa..ae4edcd2826017d9e4fb8eafb8c6d0e5ccdf0673 100644
--- a/l10n/ku_IQ/files.po
+++ b/l10n/ku_IQ/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr "ناونیشانی به‌سته‌ر نابێت به‌تاڵ بێت."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "ناو"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ku_IQ/files_trashbin.po b/l10n/ku_IQ/files_trashbin.po
index 37690656b8bf29aae1737d69b81f57917c8969b7..03fa59c580435d2cf9bb6a63c698938649be8339 100644
--- a/l10n/ku_IQ/files_trashbin.po
+++ b/l10n/ku_IQ/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ku_IQ/lib.po b/l10n/ku_IQ/lib.po
index 1c1edaba17f45963d7d906617f772232deaa3bb0..e53da4b59397e6783d0c385b25a5d310a2ca46b0 100644
--- a/l10n/ku_IQ/lib.po
+++ b/l10n/ku_IQ/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ku_IQ/settings.po b/l10n/ku_IQ/settings.po
index 7973f6b16d5456230be9d009b208c9a0bb84cff2..f6150f8c1c2518d017c3cb139d46a89408806e5b 100644
--- a/l10n/ku_IQ/settings.po
+++ b/l10n/ku_IQ/settings.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "پاشکه‌وتده‌کات..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "وشەی تێپەربو"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "وشەی نهێنی نوێ"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "ئیمه‌یل"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/l10n.pl b/l10n/l10n.pl
index 346a21bfef6fa7b4be138aca2c3a8489bdbc3cc2..b07d6d686bc4a9fb77d7187f59ee10156816e07a 100644
--- a/l10n/l10n.pl
+++ b/l10n/l10n.pl
@@ -104,7 +104,7 @@ if( $task eq 'read' ){
 			my $language = ( $file =~ /\.js$/ ? 'Python' : 'PHP');
 			my $joinexisting = ( -e $output ? '--join-existing' : '');
 			print "    Reading $file\n";
-			`xgettext --output="$output" $joinexisting --keyword=$keyword --language=$language "$file"`;
+			`xgettext --output="$output" $joinexisting --keyword=$keyword --language=$language "$file" --from-code=UTF-8 --package-version="5.0.0" --package-name="ownCloud Core" --msgid-bugs-address="translations\@owncloud.org"`;
 		}
 		chdir( $whereami );
 	}
diff --git a/l10n/lb/core.po b/l10n/lb/core.po
index a3e8cd581d7191babb68ddbc0e17479fba2818ca..59316159763c1f13963a347ae33afeabcd5ce574 100644
--- a/l10n/lb/core.po
+++ b/l10n/lb/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "November"
 msgid "December"
 msgstr "Dezember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Astellungen"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr ""
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr ""
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "vrun 1 Stonn"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "vru {hours} Stonnen"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr ""
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr ""
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "Läschte Mount"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "vru {months} Méint"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "Méint hier"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "Läscht Joer"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "Joren hier"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fehler"
 
@@ -253,15 +253,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Deelen"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Deelen"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr ""
 
@@ -357,23 +357,23 @@ msgstr "läschen"
 msgid "share"
 msgstr "deelen"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr ""
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr ""
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr ""
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/lb/files.po b/l10n/lb/files.po
index fbd5a7b1bc02b2bec243c7e0c2d60fbbbe69beb9..1c858d6cfa065ae10ba7c596628465bf7db1b1cf 100644
--- a/l10n/lb/files.po
+++ b/l10n/lb/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "Dateien"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Läschen"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -193,31 +193,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Numm"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Gréisst"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Geännert"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/lb/files_trashbin.po b/l10n/lb/files_trashbin.po
index 2d2039da8de5267c4508bff10c7c15d82af92375..5b1856decdf918884ad8dc3997cdbaf9a18dbe14 100644
--- a/l10n/lb/files_trashbin.po
+++ b/l10n/lb/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/lb/lib.po b/l10n/lb/lib.po
index ae807f5d530ead3e1c310f510483c16e31e43574..82f5b5434d7be07ea0077a352ed9751cf487f7a4 100644
--- a/l10n/lb/lib.po
+++ b/l10n/lb/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "SMS"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/lb/settings.po b/l10n/lb/settings.po
index 021e271d8fe8d265e16e2e93250b55d74076403c..36096bf64bfda563446645a3ed3022881613e7a6 100644
--- a/l10n/lb/settings.po
+++ b/l10n/lb/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Konnt Lescht net vum App Store lueden"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Authentifikatioun's Fehler"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Speicheren..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "geläscht"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "réckgängeg man"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruppen"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppen Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Läschen"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sécherheets Warnung"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Setz deng App bei"
@@ -178,116 +384,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clienten"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Passwuert"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Konnt däin Passwuert net änneren"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Momentan 't Passwuert"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Neit Passwuert"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "weisen"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Passwuert änneren"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Deng Email Adress"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Gëff eng Email Adress an fir d'Passwuert recovery ze erlaben"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Sprooch"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hëllef iwwersetzen"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruppen"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Erstellen"
@@ -296,34 +472,26 @@ msgstr "Erstellen"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Aner"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppen Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Läschen"
diff --git a/l10n/lt_LT/core.po b/l10n/lt_LT/core.po
index 423db4d65921f44121ce87545a918bad2a06c928..32243706c274a311a757637d26289e902aae2865 100644
--- a/l10n/lt_LT/core.po
+++ b/l10n/lt_LT/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "Lapkritis"
 msgid "December"
 msgstr "Gruodis"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Nustatymai"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "prieš sekundę"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "Prieš 1 minutę"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "Prieš {count} minutes"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "šiandien"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "vakar"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "Prieš {days}  dienas"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "praeitą mėnesį"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "prieš mėnesį"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "praeitais metais"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "prieš metus"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Klaida"
 
@@ -253,15 +253,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Dalintis"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Dalintis"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Klaida, dalijimosi metu"
 
@@ -357,23 +357,23 @@ msgstr "ištrinti"
 msgid "share"
 msgstr "dalintis"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Apsaugota slaptažodžiu"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Klaida nuimant galiojimo laiką"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Klaida nustatant galiojimo laiką"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/lt_LT/files.po b/l10n/lt_LT/files.po
index 966c0c8a3487db395b0e1f5a849ad87c713db149..0f4c408d50865786423076db837efef79255a948 100644
--- a/l10n/lt_LT/files.po
+++ b/l10n/lt_LT/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr ""
 msgid "Files"
 msgstr "Failai"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Ištrinti"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Pervadinti"
 
@@ -195,31 +195,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Pavadinimas"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Dydis"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Pakeista"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 aplankalas"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} aplankalai"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 failas"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} failai"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/lt_LT/files_trashbin.po b/l10n/lt_LT/files_trashbin.po
index b5e0d72e3f338441dd004594ae007208c22f9839..928d63096ca1688684654e5dd32996eb5c543b5a 100644
--- a/l10n/lt_LT/files_trashbin.po
+++ b/l10n/lt_LT/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/lt_LT/lib.po b/l10n/lt_LT/lib.po
index 8cc55d0a7eaa2d7a9d8cfdf2a16a4cc3a0dbf646..f27b3d7a45dc8d257e9ab55a655b9c8eaf073604 100644
--- a/l10n/lt_LT/lib.po
+++ b/l10n/lt_LT/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "Žinučių"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/lt_LT/settings.po b/l10n/lt_LT/settings.po
index e1ef964d696b148abde96e9cb2addfb5a363be14..9eacd04fb643216f66ee54d151d5f6a6d5c211b8 100644
--- a/l10n/lt_LT/settings.po
+++ b/l10n/lt_LT/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Neįmanoma įkelti sąrašo iš Programų Katalogo"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentikacijos klaida"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Saugoma.."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "anuliuoti"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupės"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Ištrinti"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Kalba"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Saugumo pranešimas"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Jūsų duomenų aplankalas ir Jūsų failai turbūt yra pasiekiami per internetą. Failas .htaccess, kuris duodamas, neveikia. Mes rekomenduojame susitvarkyti savo nustatymsu taip, kad failai nebūtų pasiekiami per internetą, arba persikelti juos kitur."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Daugiau"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Pridėti programėlę"
@@ -179,116 +385,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klientai"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Slaptažodis"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Jūsų slaptažodis buvo pakeistas"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Neįmanoma pakeisti slaptažodžio"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Dabartinis slaptažodis"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Naujas slaptažodis"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "rodyti"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Pakeisti slaptažodį"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "El. paštas"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Jūsų el. pašto adresas"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Pamiršto slaptažodžio atkūrimui įveskite savo el. pašto adresą"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Kalba"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Padėkite išversti"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupės"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Sukurti"
@@ -297,34 +473,26 @@ msgstr "Sukurti"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Kita"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Ištrinti"
diff --git a/l10n/lv/core.po b/l10n/lv/core.po
index c64e2073edeaa589e713371b8ccec55f6c3c4b40..868fa31a2bbb39e212faec3433a229ebb4ffcd01 100644
--- a/l10n/lv/core.po
+++ b/l10n/lv/core.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -158,59 +158,59 @@ msgstr "Novembris"
 msgid "December"
 msgstr "Decembris"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Iestatījumi"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekundes atpakaļ"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "pirms 1 minūtes"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "pirms {minutes} minūtēm"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "pirms 1 stundas"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "pirms {hours} stundām"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "šodien"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "vakar"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "pirms {days} dienām"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "pagājušajā mēnesī"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "pirms {months} mēnešiem"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "mēnešus atpakaļ"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "gājušajā gadā"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "gadus atpakaļ"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr "Nav norādīts objekta tips."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Kļūda"
 
@@ -253,15 +253,15 @@ msgstr "Nav norādīts lietotnes nosaukums."
 msgid "The required file {file} is not installed!"
 msgstr "Pieprasītā datne {file} nav instalēta!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Dalīties"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Kopīgs"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Dalīties"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Kļūda, daloties"
 
@@ -357,23 +357,23 @@ msgstr "dzēst"
 msgid "share"
 msgstr "dalīties"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Aizsargāts ar paroli"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Kļūda, noņemot termiņa datumu"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Kļūda, iestatot termiņa datumu"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sūta..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Vēstule nosūtīta"
 
@@ -489,14 +489,14 @@ msgstr "Bez droša nejaušu skaitļu ģeneratora uzbrucējs var paredzēt paroļ
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Visticamāk, jūsu datu direktorija un datnes ir pieejamas no interneta, jo .htaccess datne nedarbojas."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Lai uzzinātu, kā pareizi jākonfigurē šis serveris, skatiet <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentāciju</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/lv/files.po b/l10n/lv/files.po
index 5d8e608d1696e7fd47f861e507aed87b73adc13c..e17afcc1853adb5efed2349b7b5a7edf8e76ca6e 100644
--- a/l10n/lv/files.po
+++ b/l10n/lv/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
@@ -23,16 +23,16 @@ msgstr ""
 #: ajax/move.php:17
 #, php-format
 msgid "Could not move %s - File with this name already exists"
-msgstr ""
+msgstr "Nevarēja pārvietot %s — jau eksistē datne ar tādu nosaukumu"
 
 #: ajax/move.php:27 ajax/move.php:30
 #, php-format
 msgid "Could not move %s"
-msgstr ""
+msgstr "Nevarēja pārvietot %s"
 
 #: ajax/rename.php:22 ajax/rename.php:25
 msgid "Unable to rename file"
-msgstr ""
+msgstr "Nevarēja pārsaukt datni"
 
 #: ajax/upload.php:19
 msgid "No file was uploaded. Unknown error"
@@ -71,7 +71,7 @@ msgstr "Neizdevās saglabāt diskā"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "Nav pietiekami daudz vietas"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -81,15 +81,15 @@ msgstr "Nederīga direktorija."
 msgid "Files"
 msgstr "Datnes"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Dzēst pavisam"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Dzēst"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Pārsaukt"
 
@@ -195,31 +195,31 @@ msgstr "URL nevar būt tukšs."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nederīgs mapes nosaukums. “Koplietots” izmantojums ir rezervēts ownCloud servisam."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nosaukums"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Izmērs"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Mainīts"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mape"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mapes"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 datne"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} datnes"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "No saites"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/lv/files_trashbin.po b/l10n/lv/files_trashbin.po
index ef9c6063c3b3b0422882a1fb1439e2505891c588..71b39e763bcc20a2adeec3576a725313de656d05 100644
--- a/l10n/lv/files_trashbin.po
+++ b/l10n/lv/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 12:20+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/lv/lib.po b/l10n/lv/lib.po
index fe42b134fa609079adbb18bcaeeb14ed16c7e3cd..f36cb16af2d1947450464a0d0dedb20593e48790 100644
--- a/l10n/lv/lib.po
+++ b/l10n/lv/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -86,16 +86,102 @@ msgstr "Teksts"
 msgid "Images"
 msgstr "Attēli"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Iestatiet administratora lietotājvārdu."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Iestatiet administratora paroli."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Norādiet datu mapi."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s ievadiet datubāzes lietotājvārdu."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s ievadiet datubāzes nosaukumu."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s datubāžu nosaukumos nedrīkst izmantot punktus"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s iestatiet datubāžu serveri."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nav derīga PostgreSQL parole un/vai lietotājvārds"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Jums jāievada vai nu esošs vai administratora konts."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Nav derīga Oracle parole un/vai lietotājvārds"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Nav derīga MySQL parole un/vai lietotājvārds"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DB kļūda — “%s”"
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Vainīgā komanda bija “%s”"
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL lietotājs %s'@'localhost' jau eksistē."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Izmest šo lietotāju no MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL lietotājs '%s'@'%%' jau eksistē"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Izmest šo lietotāju no MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Vainīgā komanda bija \"%s\", vārds: %s, parole: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Jūsu serveris vēl nav pareizi iestatīts, lai ļautu sinhronizēt datnes, jo izskatās, ka WebDAV saskarne ir salauzta."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Lūdzu, vēlreiz pārbaudiet <a href='%s'>instalēšanas palīdzību</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/lv/settings.po b/l10n/lv/settings.po
index 2cd29ffc5a44d5a57571232a0cd08a0ca6106092..d674a9d9a10b77811f4466963a6d5156e35d7278 100644
--- a/l10n/lv/settings.po
+++ b/l10n/lv/settings.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 04:30+0000\n"
-"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nevar lejupielādēt sarakstu no lietotņu veikala"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentifikācijas kļūda"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Nevarēja mainīt redzamo vārdu"
 
@@ -83,7 +83,7 @@ msgstr "Nevar pievienot lietotāju grupai %s"
 msgid "Unable to remove user from group %s"
 msgstr "Nevar izņemt lietotāju no grupas %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Nevarēja atjaunināt lietotni."
 
@@ -123,10 +123,216 @@ msgstr "Atjaunināta"
 msgid "Saving..."
 msgstr "Saglabā..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "izdzests"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "atsaukt"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Nevar izņemt lietotāju"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupas"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupas administrators"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Dzēst"
+
+#: js/users.js:190
+msgid "add group"
+msgstr "pievienot grupu"
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr "Jānorāda derīgs lietotājvārds"
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr "Kļūda, veidojot lietotāju"
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr "Jānorāda derīga parole"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__valodas_nosaukums__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Brīdinājums par drošību"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Jūsu datu direktorija un datnes visdrīzāk ir pieejamas no interneta. ownCloud nodrošinātā .htaccess datne nedarbojas. Mēs iesakām konfigurēt serveri tā, lai datu direktorija vairs nebūtu pieejama, vai arī pārvietojiet datu direktoriju ārpus tīmekļa servera dokumentu saknes."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Iestatīšanas brīdinājums"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Jūsu serveris vēl nav pareizi iestatīts, lai ļautu sinhronizēt datnes, jo izskatās, ka WebDAV saskarne ir salauzta."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Lūdzu, vēlreiz pārbaudiet <a href='%s'>instalēšanas palīdzību</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Trūkst modulis “fileinfo”"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Trūkst PHP modulis “fileinfo”. Mēs iesakām to aktivēt, lai pēc iespējas labāk noteiktu mime tipus."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Lokāle nestrādā"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Šis ownCloud serveris nevar iestatīt sistēmas lokāli uz \"en_US.UTF-8\"/\"en_US.UTF8\". Tas nozīmē, ka varētu būt problēmas ar noteiktām rakstzīmēm datņu nosaukumos. Mēs iesakām instalēt vajadzīgās pakotnes savā sistēmā en_US.UTF-8/en_US.UTF8 atbalstam."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Interneta savienojums nedarbojas"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Šim ownCloud serverim nav strādājoša interneta savienojuma. Tas nozīmē, ka dažas no šīm iespējām, piemēram, ārējas krātuves montēšana, paziņošana par atjauninājumiem vai trešās puses programmatūras instalēšana nestrādā. Varētu nestrādāt attālināta piekļuve pie datnēm un paziņojumu e-pasta vēstuļu sūtīšana. Mēs iesakām aktivēt interneta savienojumu šim serverim, ja vēlaties visas ownCloud iespējas."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Izpildīt vienu uzdevumu ar katru ielādēto lapu"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php ir reģistrēts webcron servisā. Izsauciet cron.php lapu ownCloud saknē caur http reizi sekundē."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Izmantot sistēmas cron servisu. Izsauciet cron.php datni ownCloud mapē caur sistēmas cornjob reizi minūtē."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Dalīšanās"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Aktivēt koplietošanas API"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Ļauj lietotnēm izmantot koplietošanas API"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Atļaut saites"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Ļaut lietotājiem publiski dalīties ar vienumiem, izmantojot saites"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Atļaut atkārtotu koplietošanu"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Ļaut lietotājiem dalīties ar vienumiem atkārtoti"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Ļaut lietotājiem dalīties ar visiem"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Ļaut lietotājiem dalīties ar lietotājiem to grupās"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Drošība"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Uzspiest HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Piespiež klientus savienoties ar ownCloud caur šifrētu savienojumu."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Lūdzu, savienojieties ar šo ownCloud pakalpojumu caur HTTPS, lai aktivētu vai deaktivētu SSL piemērošanu."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Žurnāls"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Žurnāla līmenis"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Vairāk"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versija"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Izstrādājusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kopiena</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">pirmkodu</a>kurš ir licencēts zem <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Pievieno savu lietotni"
@@ -180,116 +386,86 @@ msgstr "Komerciālais atbalsts"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Jūs lietojat <strong>%s</strong> no pieejamajiem <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienti"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Lejupielādēt darbvirsmas klientus"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Lejupielādēt Android klientu"
+msgid "Get the apps to sync your files"
+msgstr "Saņem lietotnes, lai sinhronizētu savas datnes"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Lejupielādēt iOS klientu"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Vēlreiz rādīt pirmās palaišanas vedni"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Parole"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Jūru parole tika nomainīta"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Nevar nomainīt jūsu paroli"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Pašreizējā parole"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Jauna parole"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "parādīt"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Mainīt paroli"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Redzamais vārds"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Jūsu redzamais vārds tika mainīts"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Nevarēja mainīt jūsu redzamo vārdu"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Mainīt redzamo vārdu"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-pasts"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Jūsu e-pasta adrese"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Ievadiet epasta adresi, lai vēlāk varētu atgūt paroli, ja būs nepieciešamība"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Valoda"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Palīdzi tulkot"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Izmanto šo adresi, lai, izmantojot datņu pārvaldnieku, savienotos ar savu ownCloud"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versija"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Izstrādājusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kopiena</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">pirmkodu</a>kurš ir licencēts zem <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Ierakstīšanās vārds"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupas"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Izveidot"
@@ -298,34 +474,26 @@ msgstr "Izveidot"
 msgid "Default Storage"
 msgstr "Noklusējuma krātuve"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Neierobežota"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Cits"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupas administrators"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Krātuve"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "mainīt redzamo vārdu"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "iestatīt jaunu paroli"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Noklusējuma"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Dzēst"
diff --git a/l10n/mk/core.po b/l10n/mk/core.po
index 547295277d1d99a31087f3c454b34081561aac17..ee5062dcb099febd16f47be49e7e9cec5043d15e 100644
--- a/l10n/mk/core.po
+++ b/l10n/mk/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "Ноември"
 msgid "December"
 msgstr "Декември"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Поставки"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "пред секунди"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "пред 1 минута"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "пред {minutes} минути"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "пред 1 час"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "пред {hours} часови"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "денеска"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "вчера"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "пред {days} денови"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "минатиот месец"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "пред {months} месеци"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "пред месеци"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "минатата година"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "пред години"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "Не е специфициран типот на објект."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Грешка"
 
@@ -254,15 +254,15 @@ msgstr "Името на апликацијата не е специфицира
 msgid "The required file {file} is not installed!"
 msgstr "Задолжителната датотека {file} не е инсталирана!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Сподели"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Сподели"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Грешка при споделување"
 
@@ -358,23 +358,23 @@ msgstr "избриши"
 msgid "share"
 msgstr "сподели"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Заштитено со лозинка"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Грешка при тргање на рокот на траење"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Грешка при поставување на рок на траење"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Праќање..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Е-порака пратена"
 
diff --git a/l10n/mk/files.po b/l10n/mk/files.po
index 1d5a2ed386ec5c89b1a6e600b086105a0e438277..03d2c9c8940fc0362ba5eac7ba60a3862bbde9f7 100644
--- a/l10n/mk/files.po
+++ b/l10n/mk/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr ""
 msgid "Files"
 msgstr "Датотеки"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Избриши"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Преименувај"
 
@@ -195,31 +195,31 @@ msgstr "Адресата неможе да биде празна."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Име"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Големина"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Променето"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 папка"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} папки"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 датотека"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} датотеки"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "Од врска"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/mk/files_trashbin.po b/l10n/mk/files_trashbin.po
index 6fe48847d75f61a5aaaaa86c13f7ef5a652b83ac..173bc01b4e977a1d157a492727d59ac880189b4c 100644
--- a/l10n/mk/files_trashbin.po
+++ b/l10n/mk/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/mk/lib.po b/l10n/mk/lib.po
index ba0adddc437f68f0838547b12753b23cba696c9a..ca43b14fecd00d8f14bbf6ca66e150b0aec7fe3e 100644
--- a/l10n/mk/lib.po
+++ b/l10n/mk/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Слики"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/mk/settings.po b/l10n/mk/settings.po
index f441c26ada434200048bdf207938c81d717a2866..13fa26c20b6d12d3a6eba34fc739e1db82a37ca7 100644
--- a/l10n/mk/settings.po
+++ b/l10n/mk/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Неможам да вчитам листа од App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Грешка во автентикација"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr "Неможе да додадам корисник во група %s"
 msgid "Unable to remove user from group %s"
 msgstr "Неможе да избришам корисник од група %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -123,10 +123,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Снимам..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "врати"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Групи"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Администратор на група"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Избриши"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Безбедносно предупредување"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Вашата папка со податоци и датотеките е најверојатно достапна од интернет. .htaccess датотеката што ја овозможува ownCloud не фунционира. Силно препорачуваме да го исконфигурирате вашиот сервер за вашата папка со податоци не е достапна преку интернетт или преместете ја надвор од коренот на веб серверот."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Повеќе"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Верзија"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Развој од <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud заедницата</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворниот код</a> е лиценциран со<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Додадете ја Вашата апликација"
@@ -180,116 +386,86 @@ msgstr "Комерцијална подршка"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Имате искористено <strong>%s</strong> од достапните <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Клиенти"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Преземи клиенти за десктоп"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Преземи клиент за Андроид"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Преземи iOS клиент"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Лозинка"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Вашата лозинка беше променета."
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Вашата лозинка неможе да се смени"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Моментална лозинка"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Нова лозинка"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "прикажи"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Смени лозинка"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Е-пошта"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Вашата адреса за е-пошта"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Пополни ја адресата за е-пошта за да може да ја обновуваш лозинката"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Јазик"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Помогни во преводот"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Користете ја оваа адреса да "
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Верзија"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Развој од <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud заедницата</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворниот код</a> е лиценциран со<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Групи"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Создај"
@@ -298,34 +474,26 @@ msgstr "Создај"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Останато"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Администратор на група"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Избриши"
diff --git a/l10n/ms_MY/core.po b/l10n/ms_MY/core.po
index e52ed6703066982d71e20ca677319e12c0ab9729..b1280033038fb5c37f560e2873fcf9996aca51f4 100644
--- a/l10n/ms_MY/core.po
+++ b/l10n/ms_MY/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "November"
 msgid "December"
 msgstr "Disember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Tetapan"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr ""
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr ""
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr ""
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr ""
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr ""
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr ""
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr ""
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr ""
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Ralat"
 
@@ -254,15 +254,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Kongsi"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Kongsi"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr ""
 
@@ -358,23 +358,23 @@ msgstr ""
 msgid "share"
 msgstr ""
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr ""
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr ""
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr ""
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/ms_MY/files.po b/l10n/ms_MY/files.po
index 8498ceb30275db4d2825f95a73bc4d372c59de60..50e095c4980631758c79941ce31b4f82424b507e 100644
--- a/l10n/ms_MY/files.po
+++ b/l10n/ms_MY/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr ""
 msgid "Files"
 msgstr "fail"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Padam"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -196,31 +196,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nama "
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Saiz"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Dimodifikasi"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ms_MY/files_trashbin.po b/l10n/ms_MY/files_trashbin.po
index 047d892067f3d9508328de476ba33279ad3fc8ed..7924d440e3cc2cdfc4088dfd28d7a4f2063f687d 100644
--- a/l10n/ms_MY/files_trashbin.po
+++ b/l10n/ms_MY/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ms_MY/lib.po b/l10n/ms_MY/lib.po
index 2ba170d21550bc9250818f5207362deae8cd9089..ff74402b4cf8d676a15bfa4257c5606b2ddae6c0 100644
--- a/l10n/ms_MY/lib.po
+++ b/l10n/ms_MY/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "Teks"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ms_MY/settings.po b/l10n/ms_MY/settings.po
index b04dd7bcb1367154fd911bacbb193ec051690f1d..78eea9c6d7ca5006cfbdbdf350132ff62b10deb4 100644
--- a/l10n/ms_MY/settings.po
+++ b/l10n/ms_MY/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Ralat pengesahan"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -84,7 +84,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -124,10 +124,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Simpan..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "dihapus"
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Kumpulan"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Padam"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "_nama_bahasa_"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Amaran keselamatan"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Tambah apps anda"
@@ -181,116 +387,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "klien"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Kata laluan "
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Gagal mengubah kata laluan anda "
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Kata laluan semasa"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Kata laluan baru"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "Papar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Ubah kata laluan"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Emel"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Alamat emel anda"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Isi alamat emel anda untuk membolehkan pemulihan kata laluan"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Bahasa"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Bantu terjemah"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Kumpulan"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Buat"
@@ -299,34 +475,26 @@ msgstr "Buat"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Lain"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Padam"
diff --git a/l10n/nb_NO/core.po b/l10n/nb_NO/core.po
index 014392c6d216ef1f49b1288e9e4a59502a44e765..4890e17c6142f9d3d596c2e432771c4e93ec009b 100644
--- a/l10n/nb_NO/core.po
+++ b/l10n/nb_NO/core.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -163,59 +163,59 @@ msgstr "November"
 msgid "December"
 msgstr "Desember"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Innstillinger"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekunder siden"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minutt siden"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minutter siden"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 time siden"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} timer siden"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "i dag"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "i går"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dager siden"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "forrige måned"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} måneder siden"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "måneder siden"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "forrige år"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "år siden"
 
@@ -245,8 +245,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Feil"
 
@@ -258,15 +258,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Del"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Del"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Feil under deling"
 
@@ -362,23 +362,23 @@ msgstr "slett"
 msgid "share"
 msgstr "del"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Passordbeskyttet"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr ""
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Kan ikke sette utløpsdato"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Sender..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-post sendt"
 
diff --git a/l10n/nb_NO/files.po b/l10n/nb_NO/files.po
index 885b07c549e190c29f8d633cef34c26a2474c61f..7669736496065c372dc6222d31a1e873950fdde0 100644
--- a/l10n/nb_NO/files.po
+++ b/l10n/nb_NO/files.po
@@ -16,8 +16,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -87,15 +87,15 @@ msgstr ""
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Slett"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Omdøp"
 
@@ -201,31 +201,31 @@ msgstr "URL-en kan ikke være tom."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Navn"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Størrelse"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Endret"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mappe"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mapper"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fil"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} filer"
 
@@ -282,7 +282,7 @@ msgid "From link"
 msgstr "Fra link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/nb_NO/files_trashbin.po b/l10n/nb_NO/files_trashbin.po
index 96d6a05b9def0bae0ab4fde5b23cab3e30b3523c..d745e9794017b98a11651bbd53e44978cdbb1653 100644
--- a/l10n/nb_NO/files_trashbin.po
+++ b/l10n/nb_NO/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/nb_NO/lib.po b/l10n/nb_NO/lib.po
index 981e26c022b60897685e4c4559ed24e850b79eae..440e6fdc2866b039544582f40b4a418b05591e2a 100644
--- a/l10n/nb_NO/lib.po
+++ b/l10n/nb_NO/lib.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -90,13 +90,99 @@ msgstr "Tekst"
 msgid "Images"
 msgstr "Bilder"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/nb_NO/settings.po b/l10n/nb_NO/settings.po
index f96018e116979fdba38e3057463398e91b8dd3f3..39c78949743df54107a421343a4286283795c899 100644
--- a/l10n/nb_NO/settings.po
+++ b/l10n/nb_NO/settings.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -29,12 +29,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Lasting av liste fra App Store feilet."
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentikasjonsfeil"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -88,7 +88,7 @@ msgstr "Kan ikke legge bruker til gruppen %s"
 msgid "Unable to remove user from group %s"
 msgstr "Kan ikke slette bruker fra gruppen %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -128,10 +128,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Lagrer..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "slettet"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "angre"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupper"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppeadministrator"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Slett"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Sikkerhetsadvarsel"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mer"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versjon"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Legg til din App"
@@ -185,116 +391,86 @@ msgstr "Kommersiell støtte"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Du har brukt <strong>%s</strong> av tilgjengelig <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienter"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Last ned skrivebordsklienter"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Last ned Android-klient"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Last ned iOS-klient"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Passord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Passord har blitt endret"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Kunne ikke endre passordet ditt"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Nåværende passord"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nytt passord"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "vis"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Endre passord"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-post"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Din e-postadresse"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Oppi epostadressen du vil tilbakestille passordet for"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Språk"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Bidra til oversettelsen"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versjon"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupper"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Opprett"
@@ -303,34 +479,26 @@ msgstr "Opprett"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Annet"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppeadministrator"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Slett"
diff --git a/l10n/nl/core.po b/l10n/nl/core.po
index 5200e7c3b0720ecd347b888d09bd62511a2e17ef..6a4b1b179398622b7f4c83b752b203e7bafd8bb1 100644
--- a/l10n/nl/core.po
+++ b/l10n/nl/core.po
@@ -21,9 +21,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -66,7 +66,7 @@ msgstr "Geen categorie toevoegen?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Deze categorie bestaat al: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -170,59 +170,59 @@ msgstr "november"
 msgid "December"
 msgstr "december"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Instellingen"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "seconden geleden"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minuut geleden"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minuten geleden"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 uur geleden"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} uren geleden"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "vandaag"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "gisteren"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dagen geleden"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "vorige maand"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} maanden geleden"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "maanden geleden"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "vorig jaar"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "jaar geleden"
 
@@ -252,8 +252,8 @@ msgid "The object type is not specified."
 msgstr "Het object type is niet gespecificeerd."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fout"
 
@@ -265,15 +265,15 @@ msgstr "De app naam is niet gespecificeerd."
 msgid "The required file {file} is not installed!"
 msgstr "Het vereiste bestand {file} is niet geïnstalleerd!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Delen"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Gedeeld"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Delen"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Fout tijdens het delen"
 
@@ -369,23 +369,23 @@ msgstr "verwijderen"
 msgid "share"
 msgstr "deel"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Wachtwoord beveiligd"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Fout tijdens het verwijderen van de verval datum"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Fout tijdens het instellen van de vervaldatum"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Versturen ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-mail verzonden"
 
@@ -501,14 +501,14 @@ msgstr "Zonder random nummer generator is het mogelijk voor een aanvaller om de
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Uw gegevensdirectory en bestanden zijn vermoedelijk bereikbaar vanaf het internet omdat het .htaccess bestand niet werkt."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Informatie over het configureren van uw server is hier te vinden <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentatie</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/nl/files.po b/l10n/nl/files.po
index 4d8405dc73171a8e9f62f6b90f8a31d4e73f7b57..bbd8fd530f3dd9edda3725f7190a9f95b9a88b94 100644
--- a/l10n/nl/files.po
+++ b/l10n/nl/files.po
@@ -19,8 +19,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
@@ -80,7 +80,7 @@ msgstr "Schrijven naar schijf mislukt"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "Niet genoeg opslagruimte beschikbaar"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -90,15 +90,15 @@ msgstr "Ongeldige directory."
 msgid "Files"
 msgstr "Bestanden"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Verwijder definitief"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Verwijder"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Hernoem"
 
@@ -204,31 +204,31 @@ msgstr "URL kan niet leeg zijn."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Ongeldige mapnaam. Gebruik van'Gedeeld' is voorbehouden aan Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Naam"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Bestandsgrootte"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Laatst aangepast"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 map"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mappen"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 bestand"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} bestanden"
 
@@ -285,7 +285,7 @@ msgid "From link"
 msgstr "Vanaf link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/nl/files_trashbin.po b/l10n/nl/files_trashbin.po
index fa20ea01287621bbdf311905fe3111ed01c35e0f..3798b0d11619522ef448b18c6ff5f413770ea572 100644
--- a/l10n/nl/files_trashbin.po
+++ b/l10n/nl/files_trashbin.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Kon %s niet permanent verwijderen"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Kon %s niet herstellen"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
diff --git a/l10n/nl/files_versions.po b/l10n/nl/files_versions.po
index 106f784b9149c0da8b18d2659306d6be780e6775..71bb6e63b1e94601424242c290f5e07ada8a4a28 100644
--- a/l10n/nl/files_versions.po
+++ b/l10n/nl/files_versions.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# André Koot <meneer@tken.net>, 2013.
 # Richard Bos <radoeka@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +22,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Kon niet terugdraaien: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "succes"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Bestand %s is teruggedraaid naar versie %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "mislukking"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Bestand %s kon niet worden teruggedraaid naar versie %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Geen oudere versies beschikbaar"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Geen pad opgegeven"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +56,7 @@ msgstr "Geschiedenis"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Draai een bestand terug naar een voorgaande versie door te klikken op de terugdraai knop"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/nl/lib.po b/l10n/nl/lib.po
index 5a2a68eb4562761fc1a2916c4c7ec0cad411592f..bd4dc8f8f9c36a169a633595189eff4ddd384e02 100644
--- a/l10n/nl/lib.po
+++ b/l10n/nl/lib.po
@@ -11,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -89,16 +89,102 @@ msgstr "Tekst"
 msgid "Images"
 msgstr "Afbeeldingen"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Stel de gebruikersnaam van de beheerder in."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Stel een beheerderswachtwoord in."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Geef een datamap op."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s opgeven database gebruikersnaam."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s opgeven databasenaam."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s er mogen geen puntjes in de databasenaam voorkomen"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s instellen databaseservernaam."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "PostgreSQL gebruikersnaam en/of wachtwoord ongeldig"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Geef of een bestaand account op of het beheerdersaccount."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Oracle gebruikersnaam en/of wachtwoord ongeldig"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "MySQL gebruikersnaam en/of wachtwoord ongeldig"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "DB Fout: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Onjuiste commande was: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "MySQL gebruiker '%s'@'localhost' bestaat al."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Verwijder deze gebruiker uit MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "MySQL gebruiker '%s'@'%%' bestaat al"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Verwijder deze gebruiker uit MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Onjuiste commando was: \"%s\", naam: %s, wachtwoord: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Uw webserver is nog niet goed ingesteld voor bestandssynchronisatie omdat de WebDAV interface verbroken lijkt."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Conntroleer de <a href='%s'>installatie handleiding</a> goed."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/nl/settings.po b/l10n/nl/settings.po
index 2e6ae9ed37bb7602969eaaefe00a71ab263c4c2f..df5d343a7dc876f5b987e57338308303b06044b1 100644
--- a/l10n/nl/settings.po
+++ b/l10n/nl/settings.po
@@ -18,8 +18,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 14:00+0000\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 13:00+0000\n"
 "Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
@@ -32,12 +32,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Kan de lijst niet van de App store laden"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Authenticatie fout"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Kon de weergavenaam niet wijzigen"
 
@@ -91,7 +91,7 @@ msgstr "Niet in staat om gebruiker toe te voegen aan groep %s"
 msgid "Unable to remove user from group %s"
 msgstr "Niet in staat om gebruiker te verwijderen uit groep %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Kon de app niet bijwerken."
 
@@ -131,10 +131,216 @@ msgstr "Bijgewerkt"
 msgid "Saving..."
 msgstr "Aan het bewaren....."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "verwijderd"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "ongedaan maken"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Kon gebruiker niet verwijderen"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Groepen"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Groep beheerder"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "verwijderen"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "toevoegen groep"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Er moet een geldige gebruikersnaam worden opgegeven"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Fout bij aanmaken gebruiker"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Er moet een geldig wachtwoord worden opgegeven"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Nederlands"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Beveiligingswaarschuwing"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Uw data is waarschijnlijk toegankelijk vanaf net internet. Het  .htaccess bestand dat ownCloud levert werkt niet goed. U wordt aangeraden om de configuratie van uw webserver zodanig aan te passen dat de data folders niet meer publiekelijk toegankelijk zijn. U kunt ook de data folder verplaatsen naar een folder buiten de webserver document folder."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Instellingswaarschuwing"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Uw webserver is nog niet goed ingesteld voor bestandssynchronisatie omdat de WebDAV interface verbroken lijkt."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Conntroleer de <a href='%s'>installatie handleiding</a> goed."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Module 'fileinfo' ontbreekt"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "De PHP module 'fileinfo' ontbreekt. We adviseren met klem om deze module te activeren om de beste resultaten te bereiken voor mime-type detectie."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Taalbestand werkt niet"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Deze ownCloud server kan de systeemtaal niet instellen op \"en_US.UTF-8\"/\"en_US.UTF8\". Er zijn vermoedelijk problemen met bepaalde tekens in de bestandsnamen. We adviseren om de voor ondersteuning van en_US.UTF-8/en_US.UTF8 vereiste pakketten op uw systeem te installeren."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Internet verbinding werkt niet"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Deze ownCloud server heeft geen actieve internet verbinding. dat betekent dat sommige functies, zoals aankoppelen van externe opslag, notificaties over updates of installatie van apps van 3e partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internet verbinding voor deze server in te schakelen als u alle functies van ownCloud wilt gebruiken."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Bij laden van elke pagina één taak uitvoeren"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php is geregistreerd bij een webcron service. Roep eens per minuut de cron.php pagina aan over http in de ownCloud root."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Gebruik de systems cron service. Roep eens per minuut de cron.php file in de ownCloud map via een systeem cronjob."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Delen"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Activeren Share API"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Apps toestaan de Share API te gebruiken"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Toestaan links"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Toestaan dat gebruikers objecten met links delen met anderen"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Toestaan opnieuw delen"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Toestaan dat gebruikers objecten die anderen met hun gedeeld hebben zelf ook weer delen met anderen"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Toestaan dat gebruikers met iedereen delen"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Instellen dat gebruikers alleen met leden binnen hun groepen delen"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Beveiliging"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Afdwingen HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Afdwingen dat de clients alleen via versleutelde verbinding contact maken met ownCloud."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Maak via HTTPS verbinding met deze ownCloud inrichting om het afdwingen van gebruik van SSL te activeren of deactiveren."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Log"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Log niveau"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Meer"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versie"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud gemeenschap</a>, de <a href=\"https://github.com/owncloud\" target=\"_blank\">bron code</a> is gelicenseerd onder de <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "App toevoegen"
@@ -188,116 +394,86 @@ msgstr "Commerciële ondersteuning"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "U heeft <strong>%s</strong> van de <strong>%s</strong>  beschikbaren gebruikt"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klanten"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Download Desktop Clients"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Download Android Client"
+msgid "Get the apps to sync your files"
+msgstr "Download de apps om bestanden te synchen"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Toon de Eerste start Wizard opnieuw"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Wachtwoord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Je wachtwoord is veranderd"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Niet in staat om uw wachtwoord te wijzigen"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Huidig wachtwoord"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nieuw wachtwoord"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "weergeven"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Wijzig wachtwoord"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Weergavenaam"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Uw weergavenaam is gewijzigd"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Kon de weergavenaam niet wijzigen"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Wijzig weergavenaam"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mailadres"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Uw e-mailadres"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Vul een e-mailadres in om wachtwoord reset uit te kunnen voeren"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Taal"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Help met vertalen"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Gebruik dit adres om te verbinden met uw ownCloud in uw bestandsbeheer"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versie"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud gemeenschap</a>, de <a href=\"https://github.com/owncloud\" target=\"_blank\">bron code</a> is gelicenseerd onder de <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Inlognaam"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Groepen"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Creëer"
@@ -306,34 +482,26 @@ msgstr "Creëer"
 msgid "Default Storage"
 msgstr "Default opslag"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ongelimiteerd"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Andere"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Groep beheerder"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Opslag"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "wijzig weergavenaam"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "Instellen nieuw wachtwoord"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Default"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "verwijderen"
diff --git a/l10n/nl/user_ldap.po b/l10n/nl/user_ldap.po
index bd1c87f11f0d7466e20827966e9943e9376ed38f..2640a49d7ebeb5a92fea2be55f9df6f6f6d1445e 100644
--- a/l10n/nl/user_ldap.po
+++ b/l10n/nl/user_ldap.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -217,7 +217,7 @@ msgstr "Gebruik TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Gebruik het niet voor LDAPS verbindingen, dat gaat niet lukken."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
diff --git a/l10n/nn_NO/files.po b/l10n/nn_NO/files.po
index 67550c2332e18ad31822f8adbbecacda7ec60c92..06effef4db75d1cce102dacf613daddc8d184d98 100644
--- a/l10n/nn_NO/files.po
+++ b/l10n/nn_NO/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -80,15 +80,15 @@ msgstr ""
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Slett"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -194,31 +194,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Namn"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Storleik"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Endra"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/nn_NO/files_trashbin.po b/l10n/nn_NO/files_trashbin.po
index ba74bb698bb45805d1407b31a8e2fc7011c12682..43941fff2c727512a8cf0d38c9bdad2ad7265b9e 100644
--- a/l10n/nn_NO/files_trashbin.po
+++ b/l10n/nn_NO/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/nn_NO/lib.po b/l10n/nn_NO/lib.po
index ba41555b99ddb9ccbe28d7b4de41c2ea8c7c68fc..609a1a36241a62ebf068613dd8e1a134f52e2ad1 100644
--- a/l10n/nn_NO/lib.po
+++ b/l10n/nn_NO/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "Tekst"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/nn_NO/settings.po b/l10n/nn_NO/settings.po
index 0d0f12e96e567c78db418795c920d83610ef3390..69672b6e8322bf4db29651d4af950599b5c16784 100644
--- a/l10n/nn_NO/settings.po
+++ b/l10n/nn_NO/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Klarer ikkje å laste inn liste fra App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Feil i autentisering"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupper"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Slett"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Nynorsk"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -179,116 +385,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klientar"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Passord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Klarte ikkje å endra passordet"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Passord"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nytt passord"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "vis"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Endra passord"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Epost"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Din epost addresse"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Fyll inn din e-post addresse for og kunne motta passord tilbakestilling"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Språk"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hjelp oss å oversett"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupper"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Lag"
@@ -297,34 +473,26 @@ msgstr "Lag"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Anna"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Slett"
diff --git a/l10n/oc/core.po b/l10n/oc/core.po
index 8860e32037b55eb2fe94b81e36851c3b2ac5d9fc..cb7ee02dd0c1df4b4195b925974dc035d54b1d93 100644
--- a/l10n/oc/core.po
+++ b/l10n/oc/core.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n"
 "MIME-Version: 1.0\n"
@@ -157,59 +157,59 @@ msgstr "Novembre"
 msgid "December"
 msgstr "Decembre"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Configuracion"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segonda a"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minuta a"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "uèi"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ièr"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "mes passat"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "meses  a"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "an passat"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "ans a"
 
@@ -239,8 +239,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Error"
 
@@ -252,15 +252,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Parteja"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Parteja"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Error al partejar"
 
@@ -356,23 +356,23 @@ msgstr "escafa"
 msgid "share"
 msgstr "parteja"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Parat per senhal"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Error al metre de la data d'expiracion"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Error setting expiration date"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/oc/files.po b/l10n/oc/files.po
index 46ec34e54763fe460fc39ac29c8b90080117ae00..57fc9bcb13e760332cc137a0e13b6afc647f811c 100644
--- a/l10n/oc/files.po
+++ b/l10n/oc/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "Fichièrs"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Escafa"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Torna nomenar"
 
@@ -193,31 +193,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nom"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Talha"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificat"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/oc/files_trashbin.po b/l10n/oc/files_trashbin.po
index 064f9be30a7985fa14d4c56732a82a2b350eba4d..f3243c02aa847e43e59c208cfd9a7d34921a490d 100644
--- a/l10n/oc/files_trashbin.po
+++ b/l10n/oc/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/oc/lib.po b/l10n/oc/lib.po
index c96977d906d6ed16bd3f56a08d092218447a6d2c..ada37ffbff335a65beefda266b0e680eca398cd7 100644
--- a/l10n/oc/lib.po
+++ b/l10n/oc/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/oc/settings.po b/l10n/oc/settings.po
index 2c3d180e39322e381dbd389f9da434561049ef0b..dd9a80413d23253ed7bf5f020e17f22d1f466683 100644
--- a/l10n/oc/settings.po
+++ b/l10n/oc/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Pas possible de cargar la tièra dempuèi App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Error d'autentificacion"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr "Pas capable d'apondre un usancièr al grop %s"
 msgid "Unable to remove user from group %s"
 msgstr "Pas capable de tira un usancièr del grop %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Enregistra..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "escafat"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "defar"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grops"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grop Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Escafa"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Avertiment de securitat"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Ajusta ton App"
@@ -178,116 +384,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Practica"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Senhal"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ton senhal a cambiat"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Pas possible de cambiar ton senhal"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Senhal en cors"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Senhal novèl"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mòstra"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Cambia lo senhal"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Corrièl"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Ton adreiça de corrièl"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Emplena una adreiça de corrièl per permetre lo mandadís del senhal perdut"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Lenga"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ajuda a la revirada"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grops"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crea"
@@ -296,34 +472,26 @@ msgstr "Crea"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Autres"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grop Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Escafa"
diff --git a/l10n/pl/core.po b/l10n/pl/core.po
index 780d9e45d76184ac3ee3b90c329e22562647d742..5021e25a3666f9f6b62d4550784b6504a7d1f9c2 100644
--- a/l10n/pl/core.po
+++ b/l10n/pl/core.po
@@ -17,8 +17,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
@@ -166,59 +166,59 @@ msgstr "Listopad"
 msgid "December"
 msgstr "Grudzień"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Ustawienia"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekund temu"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minute temu"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minut temu"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 godzine temu"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} godzin temu"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "dziś"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "wczoraj"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dni temu"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "ostani miesiąc"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} miesięcy temu"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "miesięcy temu"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "ostatni rok"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "lat temu"
 
@@ -248,8 +248,8 @@ msgid "The object type is not specified."
 msgstr "Typ obiektu nie jest określony."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Błąd"
 
@@ -261,15 +261,15 @@ msgstr "Nazwa aplikacji nie jest określona."
 msgid "The required file {file} is not installed!"
 msgstr "Żądany plik {file} nie jest zainstalowany!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Udostępnij"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Udostępniono"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Udostępnij"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Błąd podczas współdzielenia"
 
@@ -365,23 +365,23 @@ msgstr "usuń"
 msgid "share"
 msgstr "współdziel"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Zabezpieczone hasłem"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Błąd niszczenie daty wygaśnięcia"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Błąd podczas ustawiania daty wygaśnięcia"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Wysyłanie..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Wyślij Email"
 
diff --git a/l10n/pl/files.po b/l10n/pl/files.po
index f49e1712ec6eefd31e6b2fcffd07537dc14fa967..9890a2eae897bac04565b54a0f6599fb4ee7bd6e 100644
--- a/l10n/pl/files.po
+++ b/l10n/pl/files.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
@@ -86,15 +86,15 @@ msgstr "Zła ścieżka."
 msgid "Files"
 msgstr "Pliki"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Usuwa element"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Zmień nazwę"
 
@@ -200,31 +200,31 @@ msgstr "URL nie może być pusty."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nazwa folderu nieprawidłowa. Wykorzystanie \"Shared\" jest zarezerwowane przez Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nazwa"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Rozmiar"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Czas modyfikacji"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 folder"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} foldery"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 plik"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} pliki"
 
@@ -281,7 +281,7 @@ msgid "From link"
 msgstr "Z linku"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/pl/files_encryption.po b/l10n/pl/files_encryption.po
index 414c6659d9b69921acba590a876cb7f48fea275a..ee5832f42daeb8eae9b872b8ce2c8df8eaea2416 100644
--- a/l10n/pl/files_encryption.po
+++ b/l10n/pl/files_encryption.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Bartek Krawczyk <bbartlomiej@gmail.com>, 2013.
 # Cyryl Sochacki <>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: bbartlomiej <bbartlomiej@gmail.com>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,15 +25,15 @@ msgstr "Szyfrowanie"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "Szyfrowanie plików jest włączone"
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Poniższe typy plików nie będą szyfrowane:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Wyłącz poniższe typy plików z szyfrowania:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/pl/files_trashbin.po b/l10n/pl/files_trashbin.po
index 3f85b77dcc2e0f0595cb72796e07ef1bf438e105..eea8ff8f6d6819c04d8dee712cf8f684106a1006 100644
--- a/l10n/pl/files_trashbin.po
+++ b/l10n/pl/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/pl/files_versions.po b/l10n/pl/files_versions.po
index 4d5b44af343564e512b46113e5ebe1623d837d51..70b17a7c959183f291b9bafcaed997f89fb640db 100644
--- a/l10n/pl/files_versions.po
+++ b/l10n/pl/files_versions.po
@@ -3,15 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Bartek Krawczyk <bbartlomiej@gmail.com>, 2013.
 # Cyryl Sochacki <>, 2012.
 #   <mplichta@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:46+0000\n"
+"Last-Translator: bbartlomiej <bbartlomiej@gmail.com>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,33 +23,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Nie można było przywrócić: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "sukces"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Plik %s został przywrócony do wersji %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "porażka"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Plik %s nie mógł być przywrócony do wersji %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Nie są dostępne żadne starsze wersje"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Nie podano ścieżki"
 
 #: js/versions.js:16
 msgid "History"
@@ -56,7 +57,7 @@ msgstr "Historia"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Przywróć plik do poprzedniej wersji klikając w jego przycisk przywrócenia"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/pl/lib.po b/l10n/pl/lib.po
index c1b35c7656ef34d837d36d6287b1e840d61a9aa3..39c053a1578d387843f74afb37cf3e4ac6dcd530 100644
--- a/l10n/pl/lib.po
+++ b/l10n/pl/lib.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
@@ -88,13 +88,99 @@ msgstr "Połączenie tekstowe"
 msgid "Images"
 msgstr "Obrazy"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/pl/settings.po b/l10n/pl/settings.po
index 7849faf3679ca3b8a8a66e2449cd9b718530de2f..d69ae9efa29325679ebe7a741c07b2175c674cfb 100644
--- a/l10n/pl/settings.po
+++ b/l10n/pl/settings.po
@@ -4,12 +4,14 @@
 # 
 # Translators:
 #  <b13n1u@gmail.com>, 2013.
+# Bartek Krawczyk <bbartlomiej@gmail.com>, 2013.
 # Cyryl Sochacki <>, 2012.
 # Cyryl Sochacki <cyrylsochacki@gmail.com>, 2012-2013.
 #   <icewind1991@gmail.com>, 2012.
 # Kamil Domański <kdomanski@kdemail.net>, 2011.
 # Marcin Małecki <gerber@tkdami.net>, 2011, 2012.
 # Marcin Małecki <mosslar@gmail.com>, 2011.
+# Michał Plichta <mplichta@gmail.com>, 2013.
 #   <mosslar@gmail.com>, 2011.
 #   <mplichta@gmail.com>, 2012.
 # Piotr Sokół <psokol@jabster.pl>, 2012.
@@ -18,8 +20,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n"
 "MIME-Version: 1.0\n"
@@ -32,14 +34,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nie mogę załadować listy aplikacji"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Błąd uwierzytelniania"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Nie można zmienić nazwy wyświetlanej"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -91,13 +93,13 @@ msgstr "Nie można dodać użytkownika do grupy %s"
 msgid "Unable to remove user from group %s"
 msgstr "Nie można usunąć użytkownika z grupy %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Nie można uaktualnić aplikacji"
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Aktualizacja do {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -109,15 +111,15 @@ msgstr "Włącz"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Prosze czekać..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Aktualizacja w toku..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Błąd podczas aktualizacji aplikacji"
 
 #: js/apps.js:87
 msgid "Error"
@@ -125,16 +127,222 @@ msgstr "Błąd"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Zaktualizowano"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Zapisywanie..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "skasuj"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "wróć"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupy"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupa Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Usuń"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Polski"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Ostrzeżenie o zabezpieczeniach"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Katalog danych (data) i pliki są prawdopodobnie dostępnego z Internetu. Sprawdź plik .htaccess oraz konfigurację serwera (hosta). Sugerujemy, skonfiguruj swój serwer w taki sposób, żeby dane katalogu nie były dostępne lub przenieść katalog danych spoza głównego dokumentu webserwera."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Więcej"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Wersja"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Stworzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Dodaj aplikacje"
@@ -188,115 +396,85 @@ msgstr "Wsparcie komercyjne"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Korzystasz z <strong>%s</strong> z dostępnych <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienci"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Pobierz klienta dla Komputera"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Pobierz klienta dla Androida"
+msgid "Get the apps to sync your files"
+msgstr "Pobierz aplikacje żeby synchronizować swoje pliki"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Pobierz klienta dla iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Uruchom ponownie kreatora pierwszego uruchomienia"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Hasło"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Twoje hasło zostało zmienione"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Nie można zmienić hasła"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Bieżące hasło"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nowe hasło"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "Wyświetlanie"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Zmień hasło"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
-msgstr ""
+msgstr "Wyświetlana nazwa"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Twoja nazwa wyświetlana została zmieniona"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Nie można zmianić wyświetlanej nazwy"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Zmiana wyświetlanej nazwy"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Adres e-mail użytkownika"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Proszę wprowadzić adres e-mail, aby uzyskać możliwość odzyskania hasła"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Język"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Pomóż w tłumaczeniu"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Użyj tego adresu aby podłączyć zasób ownCloud w menedżerze plików"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Wersja"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Stworzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
-msgstr ""
-
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupy"
+msgstr "Login"
 
 #: templates/users.php:32
 msgid "Create"
@@ -306,34 +484,26 @@ msgstr "Utwórz"
 msgid "Default Storage"
 msgstr "Domyślny magazyn"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Bez limitu"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Inne"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupa Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Magazyn"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "zmień nazwę wyświetlaną"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "zmień hasło"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Domyślny"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Usuń"
diff --git a/l10n/pl_PL/files.po b/l10n/pl_PL/files.po
index e1e818868003d56b9885ff5a655e0c7082dd1d70..058fd601d411f075817b88ab658940bbad482840 100644
--- a/l10n/pl_PL/files.po
+++ b/l10n/pl_PL/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/pl_PL/lib.po b/l10n/pl_PL/lib.po
index 8fec7a7635a827ef9a876573f13a263078202790..2d0b95690787a8fda9c1a66e669dc93ebeec9fff 100644
--- a/l10n/pl_PL/lib.po
+++ b/l10n/pl_PL/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/pl_PL/settings.po b/l10n/pl_PL/settings.po
index 991c4808c5bb57bbc83efa7991d97a5772c78540..f84cdc55d7aaf3cbc808fdc8501be47e91906879 100644
--- a/l10n/pl_PL/settings.po
+++ b/l10n/pl_PL/settings.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr ""
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr ""
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/pt_BR/core.po b/l10n/pt_BR/core.po
index bf4e2100d620a7dbf35d37ed5f4fe812eddd919e..2fad1b25c98ce87c82bc2f612b67fbfa8804d425 100644
--- a/l10n/pt_BR/core.po
+++ b/l10n/pt_BR/core.po
@@ -18,9 +18,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:10+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -58,12 +58,12 @@ msgstr "Tipo de categoria não fornecido."
 
 #: ajax/vcategories/add.php:30
 msgid "No category to add?"
-msgstr "Nenhuma categoria adicionada?"
+msgstr "Nenhuma categoria a adicionar?"
 
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Esta categoria já existe: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -84,7 +84,7 @@ msgstr "Erro ao adicionar %s aos favoritos."
 
 #: ajax/vcategories/delete.php:35 js/oc-vcategories.js:136
 msgid "No categories selected for deletion."
-msgstr "Nenhuma categoria selecionada para deletar."
+msgstr "Nenhuma categoria selecionada para excluir."
 
 #: ajax/vcategories/removeFromFavorites.php:35
 #, php-format
@@ -121,105 +121,105 @@ msgstr "Sábado"
 
 #: js/config.php:33
 msgid "January"
-msgstr "Janeiro"
+msgstr "janeiro"
 
 #: js/config.php:33
 msgid "February"
-msgstr "Fevereiro"
+msgstr "fevereiro"
 
 #: js/config.php:33
 msgid "March"
-msgstr "Março"
+msgstr "março"
 
 #: js/config.php:33
 msgid "April"
-msgstr "Abril"
+msgstr "abril"
 
 #: js/config.php:33
 msgid "May"
-msgstr "Maio"
+msgstr "maio"
 
 #: js/config.php:33
 msgid "June"
-msgstr "Junho"
+msgstr "junho"
 
 #: js/config.php:33
 msgid "July"
-msgstr "Julho"
+msgstr "julho"
 
 #: js/config.php:33
 msgid "August"
-msgstr "Agosto"
+msgstr "agosto"
 
 #: js/config.php:33
 msgid "September"
-msgstr "Setembro"
+msgstr "setembro"
 
 #: js/config.php:33
 msgid "October"
-msgstr "Outubro"
+msgstr "outubro"
 
 #: js/config.php:33
 msgid "November"
-msgstr "Novembro"
+msgstr "novembro"
 
 #: js/config.php:33
 msgid "December"
-msgstr "Dezembro"
+msgstr "dezembro"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Configurações"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "segundos atrás"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minuto atrás"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minutos atrás"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 hora atrás"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} horas atrás"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hoje"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ontem"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dias atrás"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "último mês"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} meses atrás"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "meses atrás"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "último ano"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "anos atrás"
 
@@ -249,8 +249,8 @@ msgid "The object type is not specified."
 msgstr "O tipo de objeto não foi especificado."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Erro"
 
@@ -262,15 +262,15 @@ msgstr "O nome do app não foi especificado."
 msgid "The required file {file} is not installed!"
 msgstr "O arquivo {file} necessário não está instalado!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Compartilhar"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Compartilhados"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Compartilhar"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Erro ao compartilhar"
 
@@ -366,23 +366,23 @@ msgstr "remover"
 msgid "share"
 msgstr "compartilhar"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protegido com senha"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Erro ao remover data de expiração"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Erro ao definir data de expiração"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Enviando ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-mail enviado"
 
@@ -407,7 +407,7 @@ msgstr "Use o seguinte link para redefinir sua senha: {link}"
 
 #: lostpassword/templates/lostpassword.php:3
 msgid "You will receive a link to reset your password via Email."
-msgstr "Você receberá um link para redefinir sua senha via e-mail."
+msgstr "Você receberá um link para redefinir sua senha por e-mail."
 
 #: lostpassword/templates/lostpassword.php:5
 msgid "Reset email send."
@@ -424,11 +424,11 @@ msgstr "Nome de Usuário"
 
 #: lostpassword/templates/lostpassword.php:14
 msgid "Request reset"
-msgstr "Pedido de reposição"
+msgstr "Pedir redefinição"
 
 #: lostpassword/templates/resetpassword.php:4
 msgid "Your password was reset"
-msgstr "Sua senha foi mudada"
+msgstr "Sua senha foi redefinida"
 
 #: lostpassword/templates/resetpassword.php:5
 msgid "To login page"
@@ -440,7 +440,7 @@ msgstr "Nova senha"
 
 #: lostpassword/templates/resetpassword.php:11
 msgid "Reset password"
-msgstr "Mudar senha"
+msgstr "Redefinir senha"
 
 #: strings.php:5
 msgid "Personal"
@@ -464,7 +464,7 @@ msgstr "Ajuda"
 
 #: templates/403.php:12
 msgid "Access forbidden"
-msgstr "Acesso Proibido"
+msgstr "Acesso proibido"
 
 #: templates/404.php:12
 msgid "Cloud not found"
@@ -498,18 +498,18 @@ msgstr "Sem um gerador de número aleatório de segurança, um invasor pode ser
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Seu diretório de dados e arquivos são provavelmente acessíveis pela internet, porque o .htaccess não funciona."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Para obter informações sobre como configurar corretamente o seu servidor, consulte a <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentação</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
-msgstr "Criar uma <strong>conta</strong> de <strong>administrador</strong>"
+msgstr "Criar uma <strong>conta de administrador</strong>"
 
 #: templates/installation.php:52
 msgid "Advanced"
@@ -530,7 +530,7 @@ msgstr "será usado"
 
 #: templates/installation.php:109
 msgid "Database user"
-msgstr "Usuário de banco de dados"
+msgstr "Usuário do banco de dados"
 
 #: templates/installation.php:113
 msgid "Database password"
@@ -546,7 +546,7 @@ msgstr "Espaço de tabela do banco de dados"
 
 #: templates/installation.php:131
 msgid "Database host"
-msgstr "Banco de dados do host"
+msgstr "Host do banco de dados"
 
 #: templates/installation.php:136
 msgid "Finish setup"
@@ -554,7 +554,7 @@ msgstr "Concluir configuração"
 
 #: templates/layout.guest.php:33
 msgid "web services under your control"
-msgstr "web services sob seu controle"
+msgstr "serviços web sob seu controle"
 
 #: templates/layout.user.php:48
 msgid "Log out"
@@ -576,19 +576,19 @@ msgstr "Por favor troque sua senha para tornar sua conta segura novamente."
 
 #: templates/login.php:19
 msgid "Lost your password?"
-msgstr "Esqueçeu sua senha?"
+msgstr "Esqueceu sua senha?"
 
 #: templates/login.php:41
 msgid "remember"
-msgstr "lembrete"
+msgstr "lembrar"
 
 #: templates/login.php:43
 msgid "Log in"
-msgstr "Log in"
+msgstr "Fazer login"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Logins alternativos"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/pt_BR/files.po b/l10n/pt_BR/files.po
index 2fd721d545f7dc826054fff50618a8e342e20314..9e297e235b1bb47dead4704446f777cdea5d865c 100644
--- a/l10n/pt_BR/files.po
+++ b/l10n/pt_BR/files.po
@@ -16,8 +16,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
@@ -87,15 +87,15 @@ msgstr "Diretório inválido."
 msgid "Files"
 msgstr "Arquivos"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Excluir permanentemente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Excluir"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Renomear"
 
@@ -134,7 +134,7 @@ msgstr "Substituído {old_name} por {new_name} "
 
 #: js/filelist.js:322
 msgid "perform delete operation"
-msgstr ""
+msgstr "realizar operação de exclusão"
 
 #: js/files.js:52
 msgid "'.' is an invalid file name."
@@ -152,11 +152,11 @@ msgstr "Nome inválido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são
 
 #: js/files.js:78
 msgid "Your storage is full, files can not be updated or synced anymore!"
-msgstr ""
+msgstr "Seu armazenamento está cheio, arquivos não serão mais atualizados nem sincronizados!"
 
 #: js/files.js:82
 msgid "Your storage is almost full ({usedSpacePercent}%)"
-msgstr ""
+msgstr "Seu armazenamento está quase cheio ({usedSpacePercent}%)"
 
 #: js/files.js:224
 msgid ""
@@ -201,31 +201,31 @@ msgstr "URL não pode ficar em branco"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nome de pasta inválido. O uso de 'Shared' é reservado para o Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nome"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamanho"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 pasta"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} pastas"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 arquivo"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} arquivos"
 
@@ -282,7 +282,7 @@ msgid "From link"
 msgstr "Do link"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
@@ -321,4 +321,4 @@ msgstr "Scanning atual"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
-msgstr ""
+msgstr "Aprimorando cache do sistema de arquivos..."
diff --git a/l10n/pt_BR/files_encryption.po b/l10n/pt_BR/files_encryption.po
index ee2e192fb41676bd1651734bf2ab8e1942c7ae24..51cd8db4d819394f56204d0079add124d6f9e4a0 100644
--- a/l10n/pt_BR/files_encryption.po
+++ b/l10n/pt_BR/files_encryption.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:00+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +25,15 @@ msgstr "Criptografia"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "A criptografia de arquivos está ativada."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Os seguintes tipos de arquivo não serão criptografados:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Excluir os seguintes tipos de arquivo da criptografia:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/pt_BR/files_external.po b/l10n/pt_BR/files_external.po
index 3c17453294ea29cbe8ae7555580181e37d7b7dfb..5f0a169ed2d6256fab90d604213627dcf0d5519c 100644
--- a/l10n/pt_BR/files_external.po
+++ b/l10n/pt_BR/files_external.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-31 00:27+0100\n"
-"PO-Revision-Date: 2013-01-30 15:50+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:50+0000\n"
 "Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
@@ -27,11 +27,11 @@ msgstr "Acesso concedido"
 msgid "Error configuring Dropbox storage"
 msgstr "Erro ao configurar armazenamento do Dropbox"
 
-#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41
+#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40
 msgid "Grant access"
 msgstr "Permitir acesso"
 
-#: js/dropbox.js:73 js/google.js:73
+#: js/dropbox.js:73 js/google.js:72
 msgid "Fill out all required fields"
 msgstr "Preencha todos os campos obrigatórios"
 
@@ -39,17 +39,17 @@ msgstr "Preencha todos os campos obrigatórios"
 msgid "Please provide a valid Dropbox app key and secret."
 msgstr "Por favor forneça um app key e secret válido do Dropbox"
 
-#: js/google.js:26 js/google.js:74 js/google.js:79
+#: js/google.js:26 js/google.js:73 js/google.js:78
 msgid "Error configuring Google Drive storage"
 msgstr "Erro ao configurar armazenamento do Google Drive"
 
-#: lib/config.php:405
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr "<b>Aviso:</b> \"smbclient\" não está instalado. Não será possível montar compartilhamentos de CIFS/SMB. Por favor, peça ao seu administrador do sistema para instalá-lo."
 
-#: lib/config.php:406
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
 " of FTP shares is not possible. Please ask your system administrator to "
diff --git a/l10n/pt_BR/files_sharing.po b/l10n/pt_BR/files_sharing.po
index b9d69c31641e4c214c4916b980e2748c1e41c7fe..f6e8856cc62d04ad8c2af75f1d4a91efc9c63125 100644
--- a/l10n/pt_BR/files_sharing.po
+++ b/l10n/pt_BR/files_sharing.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-09-24 02:01+0200\n"
-"PO-Revision-Date: 2012-09-23 16:45+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:01+0000\n"
 "Last-Translator: sedir <philippi.sedir@gmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
@@ -44,6 +44,6 @@ msgstr "Baixar"
 msgid "No preview available for"
 msgstr "Nenhuma visualização disponível para"
 
-#: templates/public.php:37
+#: templates/public.php:35
 msgid "web services under your control"
 msgstr "web services sob seu controle"
diff --git a/l10n/pt_BR/files_trashbin.po b/l10n/pt_BR/files_trashbin.po
index 785b8eddbe5112c5e7dcb79745a515c07d288da5..e5e109080a8de298aae21bd940404da6d76c2df7 100644
--- a/l10n/pt_BR/files_trashbin.po
+++ b/l10n/pt_BR/files_trashbin.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 00:00+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Não foi possível excluir %s permanentemente"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Não foi possível restaurar %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
@@ -34,7 +34,7 @@ msgstr "realizar operação de restauração"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "excluir arquivo permanentemente"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
diff --git a/l10n/pt_BR/files_versions.po b/l10n/pt_BR/files_versions.po
index d47f04d6cfb32883167ea27beb808001121d72e0..c809eecec5c1f5ceb001fd497d917e607ea63341 100644
--- a/l10n/pt_BR/files_versions.po
+++ b/l10n/pt_BR/files_versions.po
@@ -4,14 +4,15 @@
 # 
 # Translators:
 #   <philippi.sedir@gmail.com>, 2012.
+# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013.
 #   <tbsoares@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 22:10+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,33 +23,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Não foi possível reverter: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "sucesso"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Arquivo %s revertido à versão %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "falha"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Arquivo %s não pôde ser revertido à versão %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Nenhuma versão antiga disponível"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Nenhum caminho especificado"
 
 #: js/versions.js:16
 msgid "History"
@@ -56,7 +57,7 @@ msgstr "Histórico"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Reverta um arquivo a uma versão anterior clicando no botão reverter"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/pt_BR/lib.po b/l10n/pt_BR/lib.po
index dfed3b3905682521a7d71d7976aae6ff917a2ba9..7bb62b48c8ee1133607b843d43bf13eefa3c219f 100644
--- a/l10n/pt_BR/lib.po
+++ b/l10n/pt_BR/lib.po
@@ -6,13 +6,14 @@
 #   <dudanogueira@gmail.com>, 2012.
 #   <glauber.guimaraes@poli.ufrj.br>, 2012.
 #   <philippi.sedir@gmail.com>, 2012.
+# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:10+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,27 +21,27 @@ msgstr ""
 "Language: pt_BR\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Ajuda"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Pessoal"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Ajustes"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Usuários"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Aplicações"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Admin"
 
@@ -52,17 +53,17 @@ msgstr "Download ZIP está desligado."
 msgid "Files need to be downloaded one by one."
 msgstr "Arquivos precisam ser baixados um de cada vez."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Voltar para Arquivos"
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Arquivos selecionados são muito grandes para gerar arquivo zip."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
-msgstr ""
+msgstr "não pôde ser determinado"
 
 #: json.php:28
 msgid "Application is not enabled"
@@ -88,16 +89,102 @@ msgstr "Texto"
 msgid "Images"
 msgstr "Imagens"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Defina um nome de usuário de administrador."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Defina uma senha de administrador."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Especifique uma pasta de dados."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s insira o nome de usuário do banco de dados."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s insira o nome do banco de dados."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s você não pode usar pontos no nome do banco de dados"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s defina o host do banco de dados."
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nome de usuário e/ou senha PostgreSQL inválido(s)"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Você precisa inserir uma conta existente ou o administrador."
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr "Nome de usuário e/ou senha Oracle inválido(s)"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Nome de usuário e/ou senha MySQL inválido(s)"
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Erro no BD: \"%s\""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Comando ofensivo era: \"%s\""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "O usuário MySQL '%s'@'localhost' já existe."
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr "Derrubar este usuário do MySQL"
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "Usuário MySQL '%s'@'%%' já existe"
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr "Derrube este usuário do MySQL."
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Comando ofensivo era: \"%s\", nome: %s, senha: %s"
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Seu servidor web não está configurado corretamente para permitir sincronização de arquivos porque a interface WebDAV parece estar quebrada."
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Por favor, confira os <a href='%s'>guias de instalação</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -151,16 +238,16 @@ msgstr "último ano"
 msgid "years ago"
 msgstr "anos atrás"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s está disponível. Obtenha <a href=\"%s\">mais informações</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "atualizado"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "checagens de atualização estão desativadas"
 
diff --git a/l10n/pt_BR/settings.po b/l10n/pt_BR/settings.po
index de48363261ed41776e9b587042bcd3ba78364099..d73ca9e69d5125d42f1b1f66295ac5937dda739e 100644
--- a/l10n/pt_BR/settings.po
+++ b/l10n/pt_BR/settings.po
@@ -17,9 +17,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 00:20+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -31,14 +31,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Não foi possível carregar lista da App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Erro de autenticação"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Impossível alterar nome de exibição"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -90,13 +90,13 @@ msgstr "Não foi possível adicionar usuário ao grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Não foi possível remover usuário do grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
-msgstr ""
+msgstr "Não foi possível atualizar o app."
 
 #: js/apps.js:30
 msgid "Update to {appversion}"
-msgstr ""
+msgstr "Atualizar para {appversion}"
 
 #: js/apps.js:36 js/apps.js:76
 msgid "Disable"
@@ -108,15 +108,15 @@ msgstr "Habilitar"
 
 #: js/apps.js:55
 msgid "Please wait...."
-msgstr ""
+msgstr "Por favor, aguarde..."
 
 #: js/apps.js:84
 msgid "Updating...."
-msgstr ""
+msgstr "Atualizando..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr ""
+msgstr "Erro ao atualizar aplicativo"
 
 #: js/apps.js:87
 msgid "Error"
@@ -124,16 +124,222 @@ msgstr "Erro"
 
 #: js/apps.js:90
 msgid "Updated"
-msgstr ""
+msgstr "Atualizado"
 
 #: js/personal.js:96
 msgid "Saving..."
 msgstr "Guardando..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "excluído"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "desfazer"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Impossível remover usuário"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupo Administrativo"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Excluir"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "adicionar grupo"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Forneça um nome de usuário válido"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Erro ao criar usuário"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Forneça uma senha válida"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Português (Brasil)"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Aviso de Segurança"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Seu diretório de dados e seus arquivos estão, provavelmente, acessíveis a partir da internet. O .htaccess que o ownCloud fornece não está funcionando. Nós sugerimos que você configure o seu servidor web de uma forma que o diretório de dados esteja mais acessível ou que você mova o diretório de dados para fora da raiz do servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Aviso de Configuração"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Seu servidor web não está configurado corretamente para permitir sincronização de arquivos porque a interface WebDAV parece estar quebrada."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Por favor, confira os <a href='%s'>guias de instalação</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Módulo 'fileinfo' faltando"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "O módulo PHP 'fileinfo' está faltando. Recomendamos que ative este módulo para obter uma melhor detecção do tipo de mídia (mime-type)."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Localização não funcionando"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Este servidor ownCloud não pode definir a localização do sistema para \"en_US.UTF-8\"/\"en_US.UTF8\". Isto significa que deve haver problemas com certos caracteres em nomes de arquivos. Sugerimos que instale os pacotes necessários no seu sistema para suportar en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Sem conexão com a internet"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Este servidor ownCloud não tem conexão com a internet. Isto significa que alguns dos recursos como montar armazenamento externo, notificar atualizações ou instalar aplicativos de terceiros não funcionam. Acesso remoto a arquivos e envio de e-mails de notificação podem também não funcionar. Sugerimos que habilite a conexão com a internet neste servidor se quiser usufruir de todos os recursos do ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Execute uma tarefa com cada página carregada"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php está registrado no serviço webcron. Chame a página cron.php na raíz do owncloud a cada minuto por http."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Usar serviço de cron do sistema. Chama o arquivo cron.php na pasta owncloud via cronjob do sistema a cada minuto."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Compartilhamento"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Habilitar API de Compartilhamento"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Permitir que aplicativos usem a API de Compartilhamento"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Permitir links"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Permitir que usuários compartilhem itens com o público usando links"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Permitir recompartilhamento"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Permitir que usuários compartilhem novamente itens compartilhados com eles"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Permitir que usuários compartilhem com qualquer um"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Permitir que usuários compartilhem somente com usuários em seus grupos"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Segurança"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Forçar HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Força o cliente a conectar-se ao ownCloud por uma conexão criptografada."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Por favor, conecte-se a esta instância do ownCloud via HTTPS para habilitar ou desabilitar 'Forçar SSL'."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Registro"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Nível de registro"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mais"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versão"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Adicione seu Aplicativo"
@@ -176,7 +382,7 @@ msgstr "Fórum"
 
 #: templates/help.php:9
 msgid "Bugtracker"
-msgstr ""
+msgstr "Rastreador de Bugs"
 
 #: templates/help.php:11
 msgid "Commercial Support"
@@ -187,116 +393,86 @@ msgstr "Suporte Comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Você usou <strong>%s</strong> do seu espaço de <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Baixar Clientes Desktop"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Baixar Cliente Android"
+msgid "Get the apps to sync your files"
+msgstr "Faça com que os apps sincronize seus arquivos"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Baixar Cliente iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Mostrar este Assistente de novo"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Senha"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Sua senha foi alterada"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Não é possivel alterar a sua senha"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Senha atual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nova senha"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostrar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Alterar senha"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nome de Exibição"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Seu nome de exibição foi alterado"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Impossível alterar seu nome de exibição"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Alterar nome de exibição"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Seu endereço de e-mail"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Preencha um endereço de e-mail para habilitar a recuperação de senha"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ajude a traduzir"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Usar este endereço para conectar-se ao seu ownCloud no seu gerenciador de arquivos"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versão"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nome de Login"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupos"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Criar"
@@ -305,34 +481,26 @@ msgstr "Criar"
 msgid "Default Storage"
 msgstr "Armazenamento Padrão"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ilimitado"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Outro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupo Administrativo"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Armazenamento"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
-msgstr ""
+msgstr "alterar nome de exibição"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
-msgstr ""
+msgstr "definir nova senha"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Padrão"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Apagar"
diff --git a/l10n/pt_BR/user_ldap.po b/l10n/pt_BR/user_ldap.po
index 6abc8f57af79e8a3426827c493249a0bf1ada453..ad9f2821c0c5f0c1f96bf3320695e7c253b492e8 100644
--- a/l10n/pt_BR/user_ldap.po
+++ b/l10n/pt_BR/user_ldap.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 #   <philippi.sedir@gmail.com>, 2012.
+# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:00+0000\n"
+"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -48,7 +49,7 @@ msgstr ""
 
 #: js/settings.js:83
 msgid "Keep settings?"
-msgstr ""
+msgstr "Manter ajustes?"
 
 #: js/settings.js:97
 msgid "Cannot add server configuration"
@@ -68,20 +69,20 @@ msgstr ""
 
 #: js/settings.js:137
 msgid "Confirm Deletion"
-msgstr ""
+msgstr "Confirmar Exclusão"
 
 #: templates/settings.php:8
 msgid ""
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may"
 " experience unexpected behaviour. Please ask your system administrator to "
 "disable one of them."
-msgstr ""
+msgstr "<b>Aviso:</b> Os aplicativos user_ldap e user_webdavauth são incompatíveis. Você deverá experienciar comportamento inesperado. Por favor, peça ao seu administrador do sistema para desabilitar um deles."
 
 #: templates/settings.php:11
 msgid ""
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not "
 "work. Please ask your system administrator to install it."
-msgstr ""
+msgstr "<b>Aviso:</b> O módulo PHP LDAP não está instalado, o backend não funcionará. Por favor, peça ao seu administrador do sistema para instalá-lo."
 
 #: templates/settings.php:15
 msgid "Server configuration"
diff --git a/l10n/pt_PT/core.po b/l10n/pt_PT/core.po
index 720a1bc3a2e4a4b6cb4eea6607fc9d3cc798797f..8e36e6786ef4e014f1c0afbb465c88b3f21c529e 100644
--- a/l10n/pt_PT/core.po
+++ b/l10n/pt_PT/core.po
@@ -15,9 +15,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -60,7 +60,7 @@ msgstr "Nenhuma categoria para adicionar?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "A categoria já existe: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -164,59 +164,59 @@ msgstr "Novembro"
 msgid "December"
 msgstr "Dezembro"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Definições"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "Minutos atrás"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "Há 1 minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minutos atrás"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Há 1 hora"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Há {hours} horas atrás"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "hoje"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ontem"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dias atrás"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "ultímo mês"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Há {months} meses atrás"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "meses atrás"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "ano passado"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "anos atrás"
 
@@ -246,8 +246,8 @@ msgid "The object type is not specified."
 msgstr "O tipo de objecto não foi especificado"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Erro"
 
@@ -259,15 +259,15 @@ msgstr "O nome da aplicação não foi especificado"
 msgid "The required file {file} is not installed!"
 msgstr "O ficheiro necessário {file} não está instalado!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Partilhar"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Partilhado"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Partilhar"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Erro ao partilhar"
 
@@ -363,23 +363,23 @@ msgstr "apagar"
 msgid "share"
 msgstr "partilhar"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protegido com palavra-passe"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Erro ao retirar a data de expiração"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Erro ao aplicar a data de expiração"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "A Enviar..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-mail enviado"
 
@@ -495,14 +495,14 @@ msgstr "Sem nenhum gerador seguro de números aleatórios, uma pessoa mal intenc
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "A pasta de dados do ownCloud e os respectivos ficheiros, estarão provavelmente acessíveis a partir da internet, pois o ficheiros .htaccess não funciona."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Para obter informações de como configurar correctamente o servidor, veja em: <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/pt_PT/files.po b/l10n/pt_PT/files.po
index b38fea533553cc2f50f8f452115518a7081e6f06..1e85d6184d7069fbdd16958887aa199356c78881 100644
--- a/l10n/pt_PT/files.po
+++ b/l10n/pt_PT/files.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
@@ -86,15 +86,15 @@ msgstr "Directório Inválido"
 msgid "Files"
 msgstr "Ficheiros"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Eliminar permanentemente"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Apagar"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Renomear"
 
@@ -200,31 +200,31 @@ msgstr "O URL não pode estar vazio."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Nome de pasta inválido. O Uso de 'shared' é reservado para o ownCloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nome"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Tamanho"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 pasta"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} pastas"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ficheiro"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} ficheiros"
 
@@ -281,7 +281,7 @@ msgid "From link"
 msgstr "Da ligação"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/pt_PT/files_encryption.po b/l10n/pt_PT/files_encryption.po
index 460ced18d4069b3a4f9906e6c43b629cd777d013..461a5030b77309c5bc3a67538e873b3340ffd754 100644
--- a/l10n/pt_PT/files_encryption.po
+++ b/l10n/pt_PT/files_encryption.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 00:03+0100\n"
+"PO-Revision-Date: 2013-02-10 14:21+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,15 +25,15 @@ msgstr "Encriptação"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr ""
+msgstr "A encriptação de ficheiros está ligada"
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr ""
+msgstr "Os seguintes ficheiros não serão encriptados:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr ""
+msgstr "Excluir da encriptação os seguintes tipos de ficheiro:"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/pt_PT/files_trashbin.po b/l10n/pt_PT/files_trashbin.po
index 5f79fd320696e54b06fb8ff65af4739a153061b6..653dc5d23378c060b89da39f05e11ec752d987b6 100644
--- a/l10n/pt_PT/files_trashbin.po
+++ b/l10n/pt_PT/files_trashbin.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Não foi possível eliminar %s de forma permanente"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Não foi possível restaurar %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
@@ -34,7 +34,7 @@ msgstr "Restaurar"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "Eliminar permanentemente o(s) ficheiro(s)"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
diff --git a/l10n/pt_PT/files_versions.po b/l10n/pt_PT/files_versions.po
index 48cc4e4416c270ba2467f8a3453a5355e32d1719..9e0c86ead326e0c955ba592cb8179b406c657f88 100644
--- a/l10n/pt_PT/files_versions.po
+++ b/l10n/pt_PT/files_versions.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Daniel Pinto <daniel@mouxy.net>, 2013.
 # Duarte Velez Grilo <duartegrilo@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 00:03+0100\n"
+"PO-Revision-Date: 2013-02-10 14:21+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +22,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Não foi possível reverter: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "Sucesso"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "O ficheiro %s foi revertido para a versão %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "Falha"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Não foi possível reverter o ficheiro %s para a versão %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Não existem versões mais antigas"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Nenhum caminho especificado"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +56,7 @@ msgstr "Histórico"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Reverter um ficheiro para uma versão anterior clicando no seu botão reverter."
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/pt_PT/lib.po b/l10n/pt_PT/lib.po
index db06396ca9e6f54b77db35a10404ecef0dee939e..5aad6742ac06fa3a40c5e5f84a8d733692b96b83 100644
--- a/l10n/pt_PT/lib.po
+++ b/l10n/pt_PT/lib.po
@@ -4,14 +4,15 @@
 # 
 # Translators:
 #   <daniel@mouxy.net>, 2012-2013.
+# Daniel Pinto <daniel@mouxy.net>, 2013.
 # Duarte Velez Grilo <duartegrilo@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 23:06+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -19,27 +20,27 @@ msgstr ""
 "Language: pt_PT\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr "Ajuda"
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr "Pessoal"
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr "Configurações"
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr "Utilizadores"
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr "Aplicações"
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr "Admin"
 
@@ -51,15 +52,15 @@ msgstr "Descarregamento em ZIP está desligado."
 msgid "Files need to be downloaded one by one."
 msgstr "Os ficheiros precisam de ser descarregados um por um."
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr "Voltar a Ficheiros"
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr "Os ficheiros seleccionados são grandes demais para gerar um ficheiro zip."
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr "Não foi possível determinar"
 
@@ -87,16 +88,102 @@ msgstr "Texto"
 msgid "Images"
 msgstr "Imagens"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Definir um nome de utilizador de administrador"
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Definiar uma password de administrador"
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Especificar a pasta para os dados."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "%s introduza o nome de utilizador da base de dados"
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "%s introduza o nome da base de dados"
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "%s não é permitido utilizar pontos (.) no nome da base de dados"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "%s defina o servidor da base de dados (geralmente localhost)"
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Nome de utilizador/passwor do PostgreSQL inválido"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Precisa de introduzir uma conta existente ou de administrador"
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "O seu servidor web não está configurado correctamente para autorizar sincronização de ficheiros, pois o interface WebDAV parece estar com problemas."
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Por favor verifique <a href='%s'>installation guides</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -150,16 +237,16 @@ msgstr "ano passado"
 msgid "years ago"
 msgstr "há anos"
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr "%s está disponível. Obtenha <a href=\"%s\">mais informação</a>"
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr "actualizado"
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr "a verificação de actualizações está desligada"
 
diff --git a/l10n/pt_PT/settings.po b/l10n/pt_PT/settings.po
index 8c1833afc0e8119ce57c8f33eee6c98f8cb92161..e1dc13b05bda14bf1345aa09ac8702b3bb3fda97 100644
--- a/l10n/pt_PT/settings.po
+++ b/l10n/pt_PT/settings.po
@@ -15,9 +15,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 23:03+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -29,14 +29,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Incapaz de carregar a lista da App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Erro de autenticação"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Não foi possível alterar o nome"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -88,7 +88,7 @@ msgstr "Impossível acrescentar utilizador ao grupo %s"
 msgid "Unable to remove user from group %s"
 msgstr "Impossível apagar utilizador do grupo %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Não foi possível actualizar a aplicação."
 
@@ -128,10 +128,216 @@ msgstr "Actualizado"
 msgid "Saving..."
 msgstr "A guardar..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "apagado"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "desfazer"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Não foi possível remover o utilizador"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupos"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupo Administrador"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Apagar"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "Adicionar grupo"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Um nome de utilizador válido deve ser fornecido"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Erro a criar utilizador"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Uma password válida deve ser fornecida"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Aviso de Segurança"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "A sua pasta com os dados e os seus ficheiros estão provavelmente acessíveis a partir das internet. Sugerimos veementemente que configure o seu servidor web de maneira a que a pasta com os dados deixe de ficar acessível, ou mova a pasta com os dados para fora da raiz de documentos do servidor web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Aviso de setup"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "O seu servidor web não está configurado correctamente para autorizar sincronização de ficheiros, pois o interface WebDAV parece estar com problemas."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Por favor verifique <a href='%s'>installation guides</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Falta o módulo 'fileinfo'"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "O Módulo PHP 'fileinfo' não se encontra instalado/activado. É fortemente recomendado que active este módulo para obter os melhores resultado com a detecção dos tipos de mime."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Internacionalização não está a funcionar"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Este servidor de ownCloud não consegue definir a codificação de caracteres para \"en_US.UTF-8\"/\"en_US.UTF8\". Isto significa que pode haver problemas com alguns caracteres nos nomes de ficheiros. É fortemente recomendado que instale o pacote para ser possível ver caracteres codificados em en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "A ligação à internet não está a funcionar"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Este servidor ownCloud não tem uma ligação de internet funcional. Isto significa que algumas funcionalidades como o acesso a locais externos (dropbox, gdrive, etc), notificações sobre actualizções, ou a instalação de aplicações não irá funcionar. Sugerimos que active uma ligação à internet se pretende obter todas as funcionalidades do ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Executar uma tarefa com cada página carregada"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php está registado como um serviço webcron. Aceda a pagina cron.php que se encontra na raiz do ownCloud uma vez por minuto utilizando o seu browser."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Usar o serviço cron do sistema. Aceda a pagina cron.php que se encontra na raiz do ownCloud uma vez por minuto utilizando o seu browser."
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Partilha"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Activar a API de partilha"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Permitir que os utilizadores usem a API de partilha"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Permitir links"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Permitir que os utilizadores partilhem itens com o público utilizando um link."
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Permitir repartilha"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Permitir que os utilizadores partilhem itens partilhados com eles"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Permitir que os utilizadores partilhem com todos"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Permitir que os utilizadores partilhem somente com utilizadores do seu grupo"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Segurança"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Forçar HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Forçar clientes a ligar através de uma ligação encriptada"
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Por favor ligue-se ao ownCloud através de uma ligação HTTPS para ligar/desligar o forçar da ligação por SSL"
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Registo"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Nível do registo"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mais"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versão"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o<a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob a <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Adicione a sua aplicação"
@@ -185,116 +391,86 @@ msgstr "Suporte Comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Usou <strong>%s</strong> do disponivel <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clientes"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Transferir os clientes de sincronização"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Transferir o cliente android"
+msgid "Get the apps to sync your files"
+msgstr "Obtenha as aplicações para sincronizar os seus ficheiros"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Transferir o cliente iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Mostrar novamente Wizard de Arranque Inicial"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Palavra-chave"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "A sua palavra-passe foi alterada"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Não foi possivel alterar a sua palavra-chave"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Palavra-chave actual"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nova palavra-chave"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "mostrar"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Alterar palavra-chave"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Nome público"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "O seu nome foi alterado"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Não foi possível alterar o seu nome"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Alterar nome"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "endereço de email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "O seu endereço de email"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Preencha com o seu endereço de email para ativar a recuperação da palavra-chave"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Idioma"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ajude a traduzir"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Use este endereço no seu gestor de ficheiros para ligar à sua ownCloud"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versão"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o<a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob a <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Nome de utilizador"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupos"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Criar"
@@ -303,34 +479,26 @@ msgstr "Criar"
 msgid "Default Storage"
 msgstr "Armazenamento Padrão"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Ilimitado"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Outro"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupo Administrador"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Armazenamento"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "modificar nome exibido"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "definir nova palavra-passe"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Padrão"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Apagar"
diff --git a/l10n/pt_PT/user_ldap.po b/l10n/pt_PT/user_ldap.po
index 643d61ad73aeec8ce18752fef93f23f067a16555..3a798d9e6a02099c1136fc68325c31677b34479b 100644
--- a/l10n/pt_PT/user_ldap.po
+++ b/l10n/pt_PT/user_ldap.po
@@ -12,9 +12,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 00:03+0100\n"
+"PO-Revision-Date: 2013-02-10 14:21+0000\n"
+"Last-Translator: Mouxy <daniel@mouxy.net>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -219,7 +219,7 @@ msgstr "Usar TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Não utilize para adicionar ligações LDAP, irá falhar!"
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
diff --git a/l10n/ro/core.po b/l10n/ro/core.po
index ef9d59ed88317e52ab3d1c74621bf491836c275d..a9fbdcdf8b2f487748859cac8ef073fc24a937b2 100644
--- a/l10n/ro/core.po
+++ b/l10n/ro/core.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
@@ -162,59 +162,59 @@ msgstr "Noiembrie"
 msgid "December"
 msgstr "Decembrie"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Configurări"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "secunde în urmă"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minut în urmă"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minute in urma"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Acum o ora"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} ore în urmă"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "astăzi"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ieri"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} zile in urma"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "ultima lună"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} luni în urmă"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "luni în urmă"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "ultimul an"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "ani în urmă"
 
@@ -244,8 +244,8 @@ msgid "The object type is not specified."
 msgstr "Tipul obiectului nu a fost specificat"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Eroare"
 
@@ -257,15 +257,15 @@ msgstr "Numele aplicației nu a fost specificat"
 msgid "The required file {file} is not installed!"
 msgstr "Fișierul obligatoriu {file} nu este instalat!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Partajează"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Partajează"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Eroare la partajare"
 
@@ -361,23 +361,23 @@ msgstr "ștergere"
 msgid "share"
 msgstr "partajare"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Protejare cu parolă"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Eroare la anularea datei de expirare"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Eroare la specificarea datei de expirare"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Se expediază..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Mesajul a fost expediat"
 
diff --git a/l10n/ro/files.po b/l10n/ro/files.po
index 4e321298f04e64e0578582e9dc6fd240e7bb061c..828e14ff110ab5aa78592869f35489bca28d3af9 100644
--- a/l10n/ro/files.po
+++ b/l10n/ro/files.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
@@ -84,15 +84,15 @@ msgstr "Director invalid."
 msgid "Files"
 msgstr "Fișiere"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Șterge"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Redenumire"
 
@@ -198,31 +198,31 @@ msgstr "Adresa URL nu poate fi goală."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Invalid folder name. Usage of 'Shared' is reserved by Ownclou"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Nume"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Dimensiune"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Modificat"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 folder"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} foldare"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fisier"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} fisiere"
 
@@ -279,7 +279,7 @@ msgid "From link"
 msgstr "de la adresa"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ro/files_trashbin.po b/l10n/ro/files_trashbin.po
index 252b8a0e7d8d58e3827d3a4244641d9893e70d62..441c56d5980016af5d350be8364d26e57d3c24c2 100644
--- a/l10n/ro/files_trashbin.po
+++ b/l10n/ro/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ro/lib.po b/l10n/ro/lib.po
index 0d5dcd34eae387d3ee2ed5c7358510fb0f6fe498..4380e638e1b9cfe13bb7e089aa1ac4a02eb4bf49 100644
--- a/l10n/ro/lib.po
+++ b/l10n/ro/lib.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
@@ -88,13 +88,99 @@ msgstr "Text"
 msgid "Images"
 msgstr "Imagini"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ro/settings.po b/l10n/ro/settings.po
index a54bf6ea81fb5d33f7752efaac3f2b85e5f29a3f..af1b84945b605778f5648416f09fabad48e2d922 100644
--- a/l10n/ro/settings.po
+++ b/l10n/ro/settings.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
@@ -28,12 +28,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Imposibil de încărcat lista din App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Eroare de autentificare"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -87,7 +87,7 @@ msgstr "Nu s-a putut adăuga utilizatorul la grupul %s"
 msgid "Unable to remove user from group %s"
 msgstr "Nu s-a putut elimina utilizatorul din grupul %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -127,10 +127,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Salvez..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "șters"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "Anulează ultima acțiune"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupuri"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Grupul Admin "
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Șterge"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "_language_name_"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Avertisment de securitate"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Directorul tău de date și fișierele tale probabil sunt accesibile prin internet. Fișierul .htaccess oferit de ownCloud nu funcționează. Îți recomandăm să configurezi server-ul tău web într-un mod în care directorul de date să nu mai fie accesibil sau mută directorul de date în afara directorului root al server-ului web."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mai mult"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Versiunea"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Dezvoltat de the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitatea ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">codul sursă</a> este licențiat sub <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Adaugă aplicația ta"
@@ -184,116 +390,86 @@ msgstr "Suport comercial"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Ați utilizat <strong>%s</strong> din <strong>%s</strong> disponibile"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Clienți"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Descarcă client desktop"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Descarcă client Android"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Descarcă client iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Parolă"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Parola a fost modificată"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Imposibil de-ați schimbat parola"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Parola curentă"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Noua parolă"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "afișează"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Schimbă parola"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Adresa ta de email"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Completează o adresă de mail pentru a-ți putea recupera parola"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Limba"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Ajută la traducere"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Folosește această adresă pentru a conecta ownCloud cu managerul de fișiere"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Versiunea"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Dezvoltat de the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitatea ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">codul sursă</a> este licențiat sub <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupuri"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Crează"
@@ -302,34 +478,26 @@ msgstr "Crează"
 msgid "Default Storage"
 msgstr "Stocare implicită"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Nelimitată"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Altele"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Grupul Admin "
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Stocare"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Implicită"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Șterge"
diff --git a/l10n/ru/core.po b/l10n/ru/core.po
index b9e138452be4622b7a6f9322770771acc562ae60..87c8db8abcc7377ba5309f22e96a77812c7bfd45 100644
--- a/l10n/ru/core.po
+++ b/l10n/ru/core.po
@@ -19,8 +19,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 18:40+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: Langaru <langaru@gmail.com>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
@@ -172,55 +172,55 @@ msgstr "Декабрь"
 msgid "Settings"
 msgstr "Настройки"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "несколько секунд назад"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 минуту назад"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} минут назад"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "час назад"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} часов назад"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "сегодня"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "вчера"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} дней назад"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "в прошлом месяце"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} месяцев назад"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "несколько месяцев назад"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "в прошлом году"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "несколько лет назад"
 
@@ -263,14 +263,14 @@ msgstr "Имя приложения не указано"
 msgid "The required file {file} is not installed!"
 msgstr "Необходимый файл {file} не установлен!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Открыть доступ"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Общие"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Открыть доступ"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Ошибка при открытии доступа"
diff --git a/l10n/ru/files.po b/l10n/ru/files.po
index 8d0db97a9f64da5d14c07bda9c9f44a9a39ae999..fcc6d86ae4b2dc0d5dc5d3d00972453e931f7df9 100644
--- a/l10n/ru/files.po
+++ b/l10n/ru/files.po
@@ -13,6 +13,7 @@
 #   <sharov3@gmail.com>, 2013.
 #   <skoptev@ukr.net>, 2012.
 #   <tony.mccourin@gmail.com>, 2011.
+# Victor Ashirov <victor.ashirov@gmail.com>, 2013.
 # Victor Bravo <>, 2012.
 #   <victor.dubiniuk@gmail.com>, 2012.
 # Дмитрий <langaru@gmail.com>, 2013.
@@ -20,8 +21,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
@@ -91,15 +92,15 @@ msgstr "Неправильный каталог."
 msgid "Files"
 msgstr "Файлы"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Удалено навсегда"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Удалить"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Переименовать"
 
@@ -205,31 +206,31 @@ msgstr "Ссылка не может быть пустой."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Неправильное имя каталога. Имя 'Shared' зарезервировано."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Название"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Размер"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Изменён"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 папка"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} папок"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 файл"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} файлов"
 
@@ -286,7 +287,7 @@ msgid "From link"
 msgstr "Из ссылки"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ru/files_trashbin.po b/l10n/ru/files_trashbin.po
index 2da2f61dbc1ff5d70c84200b6d84d244734919b9..cef3725c58356d17c76f678a84b6e4b548bf63af 100644
--- a/l10n/ru/files_trashbin.po
+++ b/l10n/ru/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 04:50+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: Langaru <langaru@gmail.com>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ru/lib.po b/l10n/ru/lib.po
index 2511e84c266403ac16cd2d929f68a21677524876..48b7c3887202bbea734cf3841e767e409e08bf22 100644
--- a/l10n/ru/lib.po
+++ b/l10n/ru/lib.po
@@ -3,6 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Denis <reg.transifex.net@demitel.ru>, 2013.
 # Denis  <reg.transifex.net@demitel.ru>, 2012.
 #   <k0ldbl00d@gmail.com>, 2012.
 # Mihail Vasiliev <mickvav@gmail.com>, 2012.
@@ -13,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:36+0000\n"
+"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -91,13 +92,99 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Изображения"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Установить имя пользователя для admin."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "становит пароль для admin."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Указать папку данных."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Неверное имя пользователя и/или пароль PostgreSQL"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Вы должны войти или в существующий аккаунт или под администратором."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Неверное имя пользователя и/или пароль Oracle"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Неверное имя пользователя и/или пароль MySQL"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Ошибка БД: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "Пользователь MySQL '%s'@'localhost' уже существует."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Удалить этого пользователя из MySQL"
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "Пользователь MySQL '%s'@'%%' уже существует"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Удалить этого пользователя из MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ru/settings.po b/l10n/ru/settings.po
index b0831ab57ab990c09cfacc061ba08db7ca87efd3..4374f73dfa0438e95f7fbeeb489b56053ef5ede7 100644
--- a/l10n/ru/settings.po
+++ b/l10n/ru/settings.po
@@ -14,6 +14,7 @@
 #   <sharov3@gmail.com>, 2012-2013.
 #   <skoptev@ukr.net>, 2012.
 #   <tony.mccourin@gmail.com>, 2011.
+# Victor Ashirov <victor.ashirov@gmail.com>, 2013.
 # Victor Bravo <>, 2012.
 #   <victor.dubiniuk@gmail.com>, 2012.
 # Дмитрий <langaru@gmail.com>, 2013.
@@ -21,9 +22,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 07:10+0000\n"
-"Last-Translator: Langaru <langaru@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -35,12 +36,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Загрузка из App Store запрещена"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Ошибка авторизации"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Невозможно изменить отображаемое имя"
 
@@ -94,7 +95,7 @@ msgstr "Невозможно добавить пользователя в гру
 msgid "Unable to remove user from group %s"
 msgstr "Невозможно удалить пользователя из группы %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Невозможно обновить приложение"
 
@@ -134,10 +135,216 @@ msgstr "Обновлено"
 msgid "Saving..."
 msgstr "Сохранение..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "удален"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "отмена"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Группы"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Группа Администраторы"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Удалить"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Русский "
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Предупреждение безопасности"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Ваши каталоги данных и файлы, вероятно, доступны из Интернета. Файл .htaccess, предоставляемый ownCloud, не работает. Мы настоятельно рекомендуем Вам настроить вебсервер таким образом, чтобы каталоги данных больше не были доступны, или переместить их за пределы корневого каталога документов веб-сервера."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Больше"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Версия"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Разрабатывается <a href=\"http://ownCloud.org/contact\" target=\"_blank\">сообществом ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">исходный код</a> доступен под лицензией <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Добавить приложение"
@@ -191,116 +398,86 @@ msgstr "Коммерческая поддержка"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Вы использовали <strong>%s</strong> из доступных <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Клиенты"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Загрузка приложений для компьютера"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Загрузка Android-приложения"
+msgid "Get the apps to sync your files"
+msgstr "Получить приложения для синхронизации ваших файлов"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Загрузка iOS-приложения"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Показать помощник настройки"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Пароль"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ваш пароль изменён"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Невозможно сменить пароль"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Текущий пароль"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Новый пароль"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "показать"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Сменить пароль"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Отображаемое имя"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Ваше отображаемое имя было изменено"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Невозможно изменить Ваше отображаемое имя"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Изменить отображаемое имя"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "e-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Ваш адрес электронной почты"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Введите адрес электронной почты, чтобы появилась возможность восстановления пароля"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Язык"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Помочь с переводом"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Используйте этот URL для подключения файлового менеджера к Вашему хранилищу"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Версия"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Разрабатывается <a href=\"http://ownCloud.org/contact\" target=\"_blank\">сообществом ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">исходный код</a> доступен под лицензией <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Имя пользователя"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Группы"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Создать"
@@ -309,34 +486,26 @@ msgstr "Создать"
 msgid "Default Storage"
 msgstr "Хранилище по-умолчанию"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Неограниченно"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Другое"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Группа Администраторы"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Хранилище"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "изменить отображаемое имя"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "установить новый пароль"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "По-умолчанию"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Удалить"
diff --git a/l10n/ru/user_ldap.po b/l10n/ru/user_ldap.po
index d9c19d16f885dbae70c6ab0e6dc86c8b2305a62a..c25f1f500d7e1331d7e2ff9db9f198d6cbce13e0 100644
--- a/l10n/ru/user_ldap.po
+++ b/l10n/ru/user_ldap.po
@@ -6,14 +6,15 @@
 #   <4671992@gmail.com>, 2012.
 # Denis  <reg.transifex.net@demitel.ru>, 2012.
 #   <semen@sam002.net>, 2012.
+# Victor Ashirov <victor.ashirov@gmail.com>, 2013.
 # Дмитрий <langaru@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 00:20+0100\n"
+"PO-Revision-Date: 2013-02-11 16:30+0000\n"
+"Last-Translator: unixoid <victor.ashirov@gmail.com>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -33,7 +34,7 @@ msgstr "Конфигурация правильная и подключение
 msgid ""
 "The configuration is valid, but the Bind failed. Please check the server "
 "settings and credentials."
-msgstr ""
+msgstr "Конфигурация верна, но операция подключения завершилась неудачно. Пожалуйста, проверьте настройки сервера и учетные данные."
 
 #: ajax/testConfiguration.php:40
 msgid ""
@@ -84,7 +85,7 @@ msgstr "<b>Внимание:</b>Приложения user_ldap и user_webdavaut
 msgid ""
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not "
 "work. Please ask your system administrator to install it."
-msgstr ""
+msgstr "<b>Внимание:</b> Модуль LDAP для PHP не установлен, бэкенд не будет работать. Пожалуйста, попросите вашего системного администратора его установить. "
 
 #: templates/settings.php:15
 msgid "Server configuration"
@@ -109,7 +110,7 @@ msgstr "Базовый DN"
 
 #: templates/settings.php:22
 msgid "One Base DN per line"
-msgstr ""
+msgstr "По одному базовому DN в строке."
 
 #: templates/settings.php:22
 msgid "You can specify Base DN for users and groups in the Advanced tab"
@@ -184,7 +185,7 @@ msgstr "Конфигурация активна"
 
 #: templates/settings.php:33
 msgid "When unchecked, this configuration will be skipped."
-msgstr ""
+msgstr "Когда галочка снята, эта конфигурация будет пропущена."
 
 #: templates/settings.php:34
 msgid "Port"
@@ -192,17 +193,17 @@ msgstr "Порт"
 
 #: templates/settings.php:35
 msgid "Backup (Replica) Host"
-msgstr ""
+msgstr "Адрес резервного сервера"
 
 #: templates/settings.php:35
 msgid ""
 "Give an optional backup host. It must be a replica of the main LDAP/AD "
 "server."
-msgstr ""
+msgstr "Укажите дополнительный резервный сервер. Он должен быть репликой главного LDAP/AD сервера."
 
 #: templates/settings.php:36
 msgid "Backup (Replica) Port"
-msgstr ""
+msgstr "Порт резервного сервера"
 
 #: templates/settings.php:37
 msgid "Disable Main Server"
@@ -210,7 +211,7 @@ msgstr "Отключение главного сервера"
 
 #: templates/settings.php:37
 msgid "When switched on, ownCloud will only connect to the replica server."
-msgstr ""
+msgstr "Когда включено, ownCloud будет соединяться только с резервным сервером."
 
 #: templates/settings.php:38
 msgid "Use TLS"
@@ -218,7 +219,7 @@ msgstr "Использовать TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Не используйте совместно с безопасными подключениями (LDAPS), это не сработает."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -260,7 +261,7 @@ msgstr "База пользовательского дерева"
 
 #: templates/settings.php:46
 msgid "One User Base DN per line"
-msgstr ""
+msgstr "По одной базовому DN пользователей в строке."
 
 #: templates/settings.php:47
 msgid "User Search Attributes"
@@ -284,11 +285,11 @@ msgstr "База группового дерева"
 
 #: templates/settings.php:49
 msgid "One Group Base DN per line"
-msgstr ""
+msgstr "По одной базовому DN групп в строке."
 
 #: templates/settings.php:50
 msgid "Group Search Attributes"
-msgstr ""
+msgstr "Атрибуты поиска для группы"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
diff --git a/l10n/ru/user_webdavauth.po b/l10n/ru/user_webdavauth.po
index 709cb4a65dc39858cc476e4a17854bb7822c9170..c66ccc74b9912194faa7e5db53e9fa3790a85b4c 100644
--- a/l10n/ru/user_webdavauth.po
+++ b/l10n/ru/user_webdavauth.po
@@ -3,15 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Denis <reg.transifex.net@demitel.ru>, 2013.
 #   <sharov3@gmail.com>, 2012.
 #   <skoptev@ukr.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-15 00:03+0100\n"
-"PO-Revision-Date: 2013-01-14 23:04+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:43+0000\n"
+"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
 "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,15 +22,15 @@ msgstr ""
 
 #: templates/settings.php:3
 msgid "WebDAV Authentication"
-msgstr ""
+msgstr "Идентификация WebDAV"
 
 #: templates/settings.php:4
 msgid "URL: http://"
 msgstr "URL: http://"
 
-#: templates/settings.php:6
+#: templates/settings.php:7
 msgid ""
 "ownCloud will send the user credentials to this URL. This plugin checks the "
 "response and will interpret the HTTP statuscodes 401 and 403 as invalid "
 "credentials, and all other responses as valid credentials."
-msgstr ""
+msgstr "ownCloud отправит пользовательские данные на этот URL. Затем плагин проверит ответ, в случае HTTP ответа 401 или 403 данные будут считаться неверными, при любых других ответах - верными."
diff --git a/l10n/ru_RU/core.po b/l10n/ru_RU/core.po
index 4e067548587b625ac1194c3aefed2184e0cab921..a8b77a5d60060d144a660561060a60f01b747f03 100644
--- a/l10n/ru_RU/core.po
+++ b/l10n/ru_RU/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 18:40+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: Langaru <langaru@gmail.com>\n"
 "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n"
 "MIME-Version: 1.0\n"
@@ -163,55 +163,55 @@ msgstr "Декабрь"
 msgid "Settings"
 msgstr "Настройки"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "секунд назад"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr " 1 минуту назад"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{минуты} минут назад"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 час назад"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{часы} часов назад"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "сегодня"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "вчера"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{дни} дней назад"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "в прошлом месяце"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{месяцы} месяцев назад"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "месяц назад"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "в прошлом году"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "лет назад"
 
@@ -254,14 +254,14 @@ msgstr "Имя приложения не указано."
 msgid "The required file {file} is not installed!"
 msgstr "Требуемый файл {файл} не установлен!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Сделать общим"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Опубликовано"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Сделать общим"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Ошибка создания общего доступа"
diff --git a/l10n/ru_RU/files.po b/l10n/ru_RU/files.po
index 209a7d5ba5c837fd241955ce3f2e001af2b12c1f..baae545b0e70a199adacfc575eba7079e21e0059 100644
--- a/l10n/ru_RU/files.po
+++ b/l10n/ru_RU/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n"
 "MIME-Version: 1.0\n"
@@ -24,16 +24,16 @@ msgstr ""
 #: ajax/move.php:17
 #, php-format
 msgid "Could not move %s - File with this name already exists"
-msgstr ""
+msgstr "Неполучается перенести %s - Файл с таким именем уже существует"
 
 #: ajax/move.php:27 ajax/move.php:30
 #, php-format
 msgid "Could not move %s"
-msgstr ""
+msgstr "Неполучается перенести %s "
 
 #: ajax/rename.php:22 ajax/rename.php:25
 msgid "Unable to rename file"
-msgstr ""
+msgstr "Невозможно переименовать файл"
 
 #: ajax/upload.php:19
 msgid "No file was uploaded. Unknown error"
@@ -72,7 +72,7 @@ msgstr "Не удалось записать на диск"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "Недостаточно места в хранилище"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -82,15 +82,15 @@ msgstr "Неверный каталог."
 msgid "Files"
 msgstr "Файлы"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Удалить навсегда"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Удалить"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Переименовать"
 
@@ -196,31 +196,31 @@ msgstr "URL не должен быть пустым."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Неверное имя папки. Использование наименования 'Опубликовано' зарезервировано Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Имя"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Размер"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Изменен"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 папка"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{количество} папок"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 файл"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{количество} файлов"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "По ссылке"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ru_RU/files_trashbin.po b/l10n/ru_RU/files_trashbin.po
index 1213f4e5eb120f17ff9941b7cdd88be0264c8903..987521a79617bdfa78172422511e6a94a3f69b45 100644
--- a/l10n/ru_RU/files_trashbin.po
+++ b/l10n/ru_RU/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 18:20+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: Langaru <langaru@gmail.com>\n"
 "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ru_RU/lib.po b/l10n/ru_RU/lib.po
index 7ea63fa247b9d6e7a77b3c275fba08169d697ffb..679ada657af3365bda7110fbcd437fb8f73c513c 100644
--- a/l10n/ru_RU/lib.po
+++ b/l10n/ru_RU/lib.po
@@ -5,12 +5,13 @@
 # Translators:
 #  <cdewqazxsqwe@gmail.com>, 2013.
 #   <cdewqazxsqwe@gmail.com>, 2012.
+# Дмитрий <langaru@gmail.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n"
 "MIME-Version: 1.0\n"
@@ -87,16 +88,102 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Изображения"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Ваш веб сервер ещё не достаточно точно настроен для возможности синхронизации, т.к. похоже, что интерфейс WebDAV сломан."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Пожалуйста проверте дважды <a href='%s'>гиды по установке</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/ru_RU/settings.po b/l10n/ru_RU/settings.po
index 184b4e73c63cb9d715f6b9e4dec2797d3760ebd3..2f5ea18ce9a25e10d6ad5dac4465cec545022bd9 100644
--- a/l10n/ru_RU/settings.po
+++ b/l10n/ru_RU/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Невозможно загрузить список из App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Ошибка авторизации"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr "Невозможно добавить пользователя в гру
 msgid "Unable to remove user from group %s"
 msgstr "Невозможно удалить пользователя из группы %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Сохранение"
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "удалено"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "отменить действие"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Группы"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Группа Admin"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Удалить"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__язык_имя__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Предупреждение системы безопасности"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Ваши каталоги данных и файлы, вероятно, доступны из Интернета. Файл .htaccess, предоставляемый ownCloud, не работает. Мы настоятельно рекомендуем Вам настроить вебсервер таким образом, чтобы каталоги данных больше не были доступны, или переместить их за пределы корневого каталога документов веб-сервера."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Ваш веб сервер ещё не достаточно точно настроен для возможности синхронизации, т.к. похоже, что интерфейс WebDAV сломан."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Пожалуйста проверте дважды <a href='%s'>гиды по установке</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Подробнее"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Версия"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Разработанный <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Добавить Ваше приложение"
@@ -179,116 +385,86 @@ msgstr "Коммерческая поддержка"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Вы использовали <strong>%s</strong> из возможных <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Клиенты"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Загрузка десктопных клиентов"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Загрузить клиент под Android "
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Загрузить клиент под iOS "
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Вновь показать помощника первоначальной настройки"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Пароль"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ваш пароль был изменен"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Невозможно изменить Ваш пароль"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Текущий пароль"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Новый пароль"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "показать"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Изменить пароль"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Электронная почта"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Адрес Вашей электронной почты"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Введите адрес электронной почты для возможности восстановления пароля"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Язык"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Помогите перевести"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Используйте этот адрес для подключения к ownCloud в Вашем файловом менеджере"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Версия"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Разработанный <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Группы"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Создать"
@@ -297,34 +473,26 @@ msgstr "Создать"
 msgid "Default Storage"
 msgstr "Хранилище по умолчанию"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Неограниченный"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Другой"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Группа Admin"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Хранилище"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "назначить новый пароль"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "По умолчанию"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Удалить"
diff --git a/l10n/si_LK/core.po b/l10n/si_LK/core.po
index d628f447037566f4a1249e629e85ec3618a6bc50..7d0e79ce9d06dd040d17d4fd0406d8114eff38cd 100644
--- a/l10n/si_LK/core.po
+++ b/l10n/si_LK/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "නොවැම්බර්"
 msgid "December"
 msgstr "දෙසැම්බර්"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "සැකසුම්"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "තත්පරයන්ට පෙර"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 මිනිත්තුවකට පෙර"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "අද"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "ඊයේ"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "පෙර මාසයේ"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "මාස කීපයකට පෙර"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "පෙර අවුරුද්දේ"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "අවුරුදු කීපයකට පෙර"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "දෝෂයක්"
 
@@ -254,15 +254,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "බෙදා හදා ගන්න"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "බෙදා හදා ගන්න"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr ""
 
@@ -358,23 +358,23 @@ msgstr "මකන්න"
 msgid "share"
 msgstr "බෙදාහදාගන්න"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "මුර පදයකින් ආරක්ශාකර ඇත"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "කල් ඉකුත් දිනය ඉවත් කිරීමේ දෝෂයක්"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "කල් ඉකුත් දිනය ස්ථාපනය කිරීමේ දෝෂයක්"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/si_LK/files.po b/l10n/si_LK/files.po
index 2277e5ab288830771475e725380affae834ebe75..4b00adc79e9fdcb2903c86f90fbca956cd2813cb 100644
--- a/l10n/si_LK/files.po
+++ b/l10n/si_LK/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -80,15 +80,15 @@ msgstr ""
 msgid "Files"
 msgstr "ගොනු"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "මකන්න"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "නැවත නම් කරන්න"
 
@@ -194,31 +194,31 @@ msgstr "යොමුව හිස් විය නොහැක"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "නම"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "ප්‍රමාණය"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "වෙනස් කළ"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 ෆොල්ඩරයක්"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ගොනුවක්"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr "යොමුවෙන්"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/si_LK/files_trashbin.po b/l10n/si_LK/files_trashbin.po
index a1174c1e82c605904b191a09f67f1afed102c6a3..e19b02db18b61071be1377e1a690713e0705fdab 100644
--- a/l10n/si_LK/files_trashbin.po
+++ b/l10n/si_LK/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/si_LK/lib.po b/l10n/si_LK/lib.po
index 2590931e9385601600f597106daacc26436f88ba..d914ff96880ca5b2fc2447e3ca4cee423cc903de 100644
--- a/l10n/si_LK/lib.po
+++ b/l10n/si_LK/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "පෙළ"
 msgid "Images"
 msgstr "අනු රූ"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/si_LK/settings.po b/l10n/si_LK/settings.po
index 223283dfa924c636b0d61e2e645708830e03dd13..f63cf9b3a3d8e467965de04f8e31abff159106ee 100644
--- a/l10n/si_LK/settings.po
+++ b/l10n/si_LK/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "සත්‍යාපන දෝෂයක්"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr "පරිශීලකයා %s කණ්ඩායමට එකතු ක
 msgid "Unable to remove user from group %s"
 msgstr "පරිශීලකයා %s කණ්ඩායමින් ඉවත් කළ නොහැක"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -123,10 +123,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "සුරැකෙමින් පවතී..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "නිෂ්ප්‍රභ කරන්න"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "සමූහය"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "කාණ්ඩ පරිපාලක"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "මකා දමනවා"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "ආරක්ෂක නිවේදනයක්"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "ඔබගේ දත්ත ඩිරෙක්ටරිය හා ගොනුවලට අන්තර්ජාලයෙන් පිවිසිය හැක. ownCloud සපයා ඇති .htaccess ගොනුව ක්‍රියාකරන්නේ නැත. අපි තරයේ කියා සිටිනුයේ නම්, මෙම දත්ත හා ගොනු එසේ පිවිසීමට නොහැකි වන ලෙස ඔබේ වෙබ් සේවාදායකයා  වින්‍යාස කරන ලෙස හෝ එම ඩිරෙක්ටරිය වෙබ් මූලයෙන් පිටතට ගෙනයන ලෙසය."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "වැඩි"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "නිපදන ලද්දේ <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud සමාජයෙන්</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">මුල් කේතය </a>ලයිසන්ස් කර ඇත්තේ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> යටතේ."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "යෙදුමක් එක් කිරීම"
@@ -180,116 +386,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "සේවාලාභීන්"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "මුරපදය"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "ඔබගේ මුර පදය වෙනස් කෙරුණි"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "මුර පදය වෙනස් කළ නොහැකි විය"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "වත්මන් මුරපදය"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "නව මුරපදය"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "ප්‍රදර්ශනය කිරීම"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "මුරපදය වෙනස් කිරීම"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "විද්‍යුත් තැපෑල"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "ඔබගේ විද්‍යුත් තැපෑල"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "මුරපද ප්‍රතිස්ථාපනය සඳහා විද්‍යුත් තැපැල් විස්තර ලබා දෙන්න"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "භාෂාව"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "පරිවර්ථන සහය"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "නිපදන ලද්දේ <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud සමාජයෙන්</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">මුල් කේතය </a>ලයිසන්ස් කර ඇත්තේ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> යටතේ."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "සමූහය"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "තනන්න"
@@ -298,34 +474,26 @@ msgstr "තනන්න"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "වෙනත්"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "කාණ්ඩ පරිපාලක"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "මකා දමනවා"
diff --git a/l10n/sk/files.po b/l10n/sk/files.po
index 8f6e6f689eeb695dd511cc8548ab82c591aa1a35..7645aa9b5493f06af4ae9850921633145e2a3455 100644
--- a/l10n/sk/files.po
+++ b/l10n/sk/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovak (http://www.transifex.com/projects/p/owncloud/language/sk/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sk/lib.po b/l10n/sk/lib.po
index 41bbad659559d3e1351e89ddc75d6c1d09d35698..598f2b64413f8e1f2245a80c629d9e7371a49957 100644
--- a/l10n/sk/lib.po
+++ b/l10n/sk/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovak (http://www.transifex.com/projects/p/owncloud/language/sk/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/sk/settings.po b/l10n/sk/settings.po
index 8ae555c067af1d2116cad873522e97555b1e1bb1..b26e19c025a32321d2f80a6022accad8554d85cf 100644
--- a/l10n/sk/settings.po
+++ b/l10n/sk/settings.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2011-07-25 16:05+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovak (http://www.transifex.com/projects/p/owncloud/language/sk/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr ""
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr ""
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/sk_SK/core.po b/l10n/sk_SK/core.po
index fa46fb2750a47d5d3edc4f5e109a8add7cda8f34..bac83aa35ff89e1b9cbda2f9599842d4efb7041d 100644
--- a/l10n/sk_SK/core.po
+++ b/l10n/sk_SK/core.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -163,59 +163,59 @@ msgstr "November"
 msgid "December"
 msgstr "December"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Nastavenia"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "pred sekundami"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "pred minútou"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "pred {minutes} minútami"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Pred 1 hodinou."
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Pred {hours} hodinami."
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "dnes"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "včera"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "pred {days} dňami"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "minulý mesiac"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Pred {months} mesiacmi."
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "pred mesiacmi"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "minulý rok"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "pred rokmi"
 
@@ -245,8 +245,8 @@ msgid "The object type is not specified."
 msgstr "Nešpecifikovaný typ objektu."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Chyba"
 
@@ -258,15 +258,15 @@ msgstr "Nešpecifikované meno aplikácie."
 msgid "The required file {file} is not installed!"
 msgstr "Požadovaný súbor {file} nie je inštalovaný!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Zdieľaj"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Zdieľané"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Zdieľaj"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Chyba počas zdieľania"
 
@@ -324,7 +324,7 @@ msgstr "Zdieľať cez e-mail:"
 
 #: js/share.js:229
 msgid "No people found"
-msgstr "Užívateľ nenájdený"
+msgstr "Používateľ nenájdený"
 
 #: js/share.js:256
 msgid "Resharing is not allowed"
@@ -362,23 +362,23 @@ msgstr "zmazať"
 msgid "share"
 msgstr "zdieľať"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Chránené heslom"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Chyba pri odstraňovaní dátumu vypršania platnosti"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Chyba pri nastavení dátumu vypršania platnosti"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Odosielam ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Email odoslaný"
 
@@ -494,14 +494,14 @@ msgstr "Bez bezpečného generátora náhodných čísel môže útočník predp
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Váš priečinok s dátami a súbormi je dostupný z internetu, lebo súbor .htaccess nefunguje."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "Pre informácie, ako správne nastaviť Váš server sa pozrite do <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">dokumentácie</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
diff --git a/l10n/sk_SK/files.po b/l10n/sk_SK/files.po
index 3c052399e2e025ebbdfb8f61c39e20e508d68748..8893c32c4374fe9d757a398eee29efa5c7bf42d2 100644
--- a/l10n/sk_SK/files.po
+++ b/l10n/sk_SK/files.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
@@ -78,21 +78,21 @@ msgstr "Nedostatok dostupného úložného priestoru"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
-msgstr "Neplatný adresár"
+msgstr "Neplatný priečinok"
 
 #: appinfo/app.php:10
 msgid "Files"
 msgstr "Súbory"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Zmazať  trvalo"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Odstrániť"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Premenovať"
 
@@ -196,33 +196,33 @@ msgstr "URL nemôže byť prázdne"
 
 #: js/files.js:574
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
-msgstr "Neplatné meno adresára. Používanie mena 'Shared' je vyhradené len pre Owncloud"
+msgstr "Neplatné meno priečinka. Používanie mena 'Shared' je vyhradené len pre Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Meno"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Veľkosť"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Upravené"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 priečinok"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} priečinkov"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 súbor"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} súborov"
 
@@ -232,7 +232,7 @@ msgstr "Odoslať"
 
 #: templates/admin.php:5
 msgid "File handling"
-msgstr "Nastavenie správanie k súborom"
+msgstr "Nastavenie správania sa k súborom"
 
 #: templates/admin.php:7
 msgid "Maximum upload size"
@@ -244,7 +244,7 @@ msgstr "najväčšie možné:"
 
 #: templates/admin.php:15
 msgid "Needed for multi-file and folder downloads."
-msgstr "Vyžadované pre sťahovanie viacerých súborov a adresárov."
+msgstr "Vyžadované pre sťahovanie viacerých súborov a priečinkov."
 
 #: templates/admin.php:17
 msgid "Enable ZIP-download"
@@ -279,7 +279,7 @@ msgid "From link"
 msgstr "Z odkazu"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
@@ -314,7 +314,7 @@ msgstr "Čakajte, súbory sú prehľadávané."
 
 #: templates/index.php:115
 msgid "Current scanning"
-msgstr "Práve prehliadané"
+msgstr "Práve prezerané"
 
 #: templates/upgrade.php:2
 msgid "Upgrading filesystem cache..."
diff --git a/l10n/sk_SK/files_encryption.po b/l10n/sk_SK/files_encryption.po
index a03aa2a7259bf9d657e897548aa582855e5920b2..232ee99f2fe6e513118dcd58eea9e0934d11977b 100644
--- a/l10n/sk_SK/files_encryption.po
+++ b/l10n/sk_SK/files_encryption.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:09+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 13:10+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -26,15 +26,15 @@ msgstr "Šifrovanie"
 
 #: templates/settings-personal.php:7
 msgid "File encryption is enabled."
-msgstr "Kryptovanie súborov nastavené."
+msgstr "Šifrovanie súborov nastavené."
 
 #: templates/settings-personal.php:11
 msgid "The following file types will not be encrypted:"
-msgstr "Uvedené typy súborov nebudú kryptované:"
+msgstr "Uvedené typy súborov nebudú šifrované:"
 
 #: templates/settings.php:7
 msgid "Exclude the following file types from encryption:"
-msgstr "Nekryptovať uvedené typy súborov"
+msgstr "Nešifrovať uvedené typy súborov"
 
 #: templates/settings.php:12
 msgid "None"
diff --git a/l10n/sk_SK/files_external.po b/l10n/sk_SK/files_external.po
index 56de6320ffe32db3415885eeceb1f56f61464ded..92807a28e1e2ffb2dc47d68e8a8e761b9821fbb4 100644
--- a/l10n/sk_SK/files_external.po
+++ b/l10n/sk_SK/files_external.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-01-31 00:27+0100\n"
-"PO-Revision-Date: 2013-01-30 06:20+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 13:30+0000\n"
 "Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
@@ -28,11 +28,11 @@ msgstr "Prístup povolený"
 msgid "Error configuring Dropbox storage"
 msgstr "Chyba pri konfigurácii úložiska Dropbox"
 
-#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41
+#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40
 msgid "Grant access"
 msgstr "Povoliť prístup"
 
-#: js/dropbox.js:73 js/google.js:73
+#: js/dropbox.js:73 js/google.js:72
 msgid "Fill out all required fields"
 msgstr "Vyplňte všetky vyžadované kolónky"
 
@@ -40,17 +40,17 @@ msgstr "Vyplňte všetky vyžadované kolónky"
 msgid "Please provide a valid Dropbox app key and secret."
 msgstr "Zadajte platný kľúč aplikácie a heslo Dropbox"
 
-#: js/google.js:26 js/google.js:74 js/google.js:79
+#: js/google.js:26 js/google.js:73 js/google.js:78
 msgid "Error configuring Google Drive storage"
 msgstr "Chyba pri konfigurácii úložiska Google drive"
 
-#: lib/config.php:405
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr "<b>Upozornenie:</b> \"smbclient\" nie je nainštalovaný. Nie je možné pripojenie oddielov CIFS/SMB. Požiadajte administrátora systému, nech ho nainštaluje."
 
-#: lib/config.php:406
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting"
 " of FTP shares is not possible. Please ask your system administrator to "
@@ -91,7 +91,7 @@ msgstr "Žiadne nastavené"
 
 #: templates/settings.php:86
 msgid "All Users"
-msgstr "Všetci užívatelia"
+msgstr "Všetci používatelia"
 
 #: templates/settings.php:87
 msgid "Groups"
@@ -99,7 +99,7 @@ msgstr "Skupiny"
 
 #: templates/settings.php:95
 msgid "Users"
-msgstr "Užívatelia"
+msgstr "Používatelia"
 
 #: templates/settings.php:108 templates/settings.php:109
 #: templates/settings.php:144 templates/settings.php:145
@@ -112,7 +112,7 @@ msgstr "Povoliť externé úložisko"
 
 #: templates/settings.php:125
 msgid "Allow users to mount their own external storage"
-msgstr "Povoliť užívateľom pripojiť ich vlastné externé úložisko"
+msgstr "Povoliť používateľom pripojiť ich vlastné externé úložisko"
 
 #: templates/settings.php:136
 msgid "SSL root certificates"
diff --git a/l10n/sk_SK/files_trashbin.po b/l10n/sk_SK/files_trashbin.po
index 93a413261a498c74ca5a056477e63886d8f09bd8..c1d5863d6790c37e1f0d71f1264c40dfb3daf536 100644
--- a/l10n/sk_SK/files_trashbin.po
+++ b/l10n/sk_SK/files_trashbin.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 22:50+0000\n"
-"Last-Translator: georg007 <georg007@gmail.com>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 09:50+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,7 +22,7 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Nemožno zmazať %s navždy"
 
 #: ajax/undelete.php:41
 #, php-format
diff --git a/l10n/sk_SK/files_versions.po b/l10n/sk_SK/files_versions.po
index 90a6c26e2409808e502e35b54f980b2446116a39..5cf9366ed688935fdaa85b654e0b01541a530665 100644
--- a/l10n/sk_SK/files_versions.po
+++ b/l10n/sk_SK/files_versions.po
@@ -4,14 +4,15 @@
 # 
 # Translators:
 # georg <georg007@gmail.com>, 2013.
+# Marián Hvolka <marian.hvolka@stuba.sk>, 2013.
 #   <martin.babik@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 22:40+0000\n"
-"Last-Translator: georg007 <georg007@gmail.com>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 13:10+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -22,16 +23,16 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Nemožno obnoviť: %s"
 
 #: history.php:40
 msgid "success"
-msgstr "uspech"
+msgstr "úspech"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr "Subror %s bol vrateny na verziu %s"
+msgstr "Súbor %s bol obnovený na verziu %s"
 
 #: history.php:49
 msgid "failure"
@@ -40,7 +41,7 @@ msgstr "chyba"
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Súbor %s nemohol byť obnovený na verziu %s"
 
 #: history.php:68
 msgid "No old versions available"
@@ -56,7 +57,7 @@ msgstr "História"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Obnovte súbor do predošlej verzie kliknutím na tlačítko obnoviť"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/sk_SK/lib.po b/l10n/sk_SK/lib.po
index 37ba5198f612397421c62e8422d9b8cb680af7dd..8a6e04468328c759a70b650ed9b2eeee38a9ab46 100644
--- a/l10n/sk_SK/lib.po
+++ b/l10n/sk_SK/lib.po
@@ -11,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -35,7 +35,7 @@ msgstr "Nastavenia"
 
 #: app.php:356
 msgid "Users"
-msgstr "Užívatelia"
+msgstr "Používatelia"
 
 #: app.php:363
 msgid "Apps"
@@ -43,7 +43,7 @@ msgstr "Aplikácie"
 
 #: app.php:365
 msgid "Admin"
-msgstr "Správca"
+msgstr "Administrátor"
 
 #: files.php:202
 msgid "ZIP download is turned off."
@@ -59,7 +59,7 @@ msgstr "Späť na súbory"
 
 #: files.php:227
 msgid "Selected files too large to generate zip file."
-msgstr "Zvolené súbory sú príliž veľké na vygenerovanie zip súboru."
+msgstr "Zvolené súbory sú príliš veľké na vygenerovanie zip súboru."
 
 #: helper.php:226
 msgid "couldn't be determined"
@@ -89,16 +89,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Obrázky"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr "Zadajte používateľské meno administrátora."
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr "Zadajte heslo administrátora."
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr "Zadajte priečinok pre dáta."
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr "Zadajte používateľské meno %s databázy.."
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr "Zadajte názov databázy pre %s databázy."
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr "V názve databázy %s nemôžete používať bodky"
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr "Zadajte názov počítača s databázou %s."
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr "Používateľské meno a/alebo heslo pre PostgreSQL databázu je neplatné"
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr "Musíte zadať jestvujúci účet alebo administrátora."
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr "Používateľské meno a/alebo heslo pre Oracle databázu je neplatné"
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr "Používateľské meno a/alebo heslo pre MySQL databázu je neplatné"
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr "Chyba DB: \"%s\""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr "Podozrivý príkaz bol: \"%s\""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr "Používateľ '%s'@'localhost' už v MySQL existuje."
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr "Zahodiť používateľa z MySQL."
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr "Používateľ '%s'@'%%' už v MySQL existuje"
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr "Zahodiť používateľa z MySQL."
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr "Podozrivý príkaz bol: \"%s\", meno: %s, heslo: %s"
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Váš webový server nie je správne nastavený na synchronizáciu, pretože rozhranie WebDAV je poškodené."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Prosím skontrolujte <a href='%s'>inštalačnú príručku</a>."
 
 #: template.php:113
 msgid "seconds ago"
@@ -155,7 +241,7 @@ msgstr "pred rokmi"
 #: updater.php:75
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
-msgstr "%s je dostupné. Získať <a href=\"%s\">viac informácií</a>"
+msgstr "%s je dostupné. Získať <a href=\"%s\">pre viac informácií</a>"
 
 #: updater.php:77
 msgid "up to date"
diff --git a/l10n/sk_SK/settings.po b/l10n/sk_SK/settings.po
index 3ba63102905c365b25ca407cc37009081b008d28..5df4ee90ecb39d867c54f37dc2fa6bfa4940f196 100644
--- a/l10n/sk_SK/settings.po
+++ b/l10n/sk_SK/settings.po
@@ -13,9 +13,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
+"PO-Revision-Date: 2013-02-14 14:00+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -27,14 +27,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Nie je možné nahrať zoznam z App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Chyba pri autentifikácii"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Nemožno zmeniť zobrazované meno"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -79,14 +79,14 @@ msgstr "Administrátori nesmú odstrániť sami seba zo skupiny admin"
 #: ajax/togglegroups.php:28
 #, php-format
 msgid "Unable to add user to group %s"
-msgstr "Nie je možné pridať užívateľa do skupiny %s"
+msgstr "Nie je možné pridať používateľa do skupiny %s"
 
 #: ajax/togglegroups.php:34
 #, php-format
 msgid "Unable to remove user from group %s"
 msgstr "Nie je možné odstrániť používateľa zo skupiny %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Nemožno aktualizovať aplikáciu."
 
@@ -112,7 +112,7 @@ msgstr "Aktualizujem..."
 
 #: js/apps.js:87
 msgid "Error while updating app"
-msgstr "hyba pri aktualizácii aplikácie"
+msgstr "chyba pri aktualizácii aplikácie"
 
 #: js/apps.js:87
 msgid "Error"
@@ -126,10 +126,216 @@ msgstr "Aktualizované"
 msgid "Saving..."
 msgstr "Ukladám..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "zmazané"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "vrátiť"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr "Nemožno odobrať používateľa"
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Skupiny"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Správca skupiny"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Odstrániť"
+
+#: js/users.js:191
+msgid "add group"
+msgstr "pridať skupinu"
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr "Musíte zadať platné používateľské meno"
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr "Chyba pri vytváraní používateľa"
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr "Musíte zadať platné heslo"
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Slovensky"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Bezpečnostné varovanie"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Váš priečinok s dátami a Vaše súbory sú pravdepodobne dostupné z internetu. .htaccess súbor dodávaný s inštaláciou ownCloud nespĺňa úlohu. Dôrazne Vám doporučujeme nakonfigurovať webserver takým spôsobom, aby dáta v priečinku neboli verejné, alebo presuňte dáta mimo štruktúry priečinkov webservera."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr "Nastavenia oznámení"
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Váš webový server nie je správne nastavený na synchronizáciu, pretože rozhranie WebDAV je poškodené."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Prosím skontrolujte <a href='%s'>inštalačnú príručku</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr "Chýba modul 'fileinfo'"
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr "Chýba modul 'fileinfo'. Dôrazne doporučujeme ho povoliť pre dosiahnutie najlepších výsledkov zisťovania mime-typu."
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr "Lokalizácia nefunguje"
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr "Tento server ownCloud nemôže nastaviť národné prostredie systému na \"en_US.UTF-8\" / \"en_US.UTF8\". To znamená, že by mohli byť problémy s niektorými znakmi v názvoch súborov. Veľmi odporúčame nainštalovať požadované balíky na podporu en_US.UTF-8/en_US.UTF8."
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr "Pripojenie na internet nefunguje"
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr "Tento server ownCloud nemá funkčné pripojenie k internetu. To znamená, že niektoré z funkcií, ako je pripojenie externého úložiska, oznámenia o aktualizáciách či inštalácia aplikácií tretích strán nefungujú. Prístup k súborom zo vzdialených miest a odosielanie oznamovacích e-mailov tiež nemusí fungovať. Odporúčame pripojiť tento server  k internetu, ak chcete využívať všetky vlastnosti ownCloud."
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr "Vykonať jednu úlohu s každým načítaní stránky"
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr "cron.php je registrovaná u služby webcron. Zavolá cron.php stránku v koreňovom priečinku owncloud raz za minútu cez protokol HTTP."
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr "Používať systémovú službu cron. Zavolať cron.php v priečinku owncloud cez systémovú úlohu raz za minútu"
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr "Zdieľanie"
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr "Povoliť API zdieľania"
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr "Povoliť aplikáciám používať API na zdieľanie"
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr "Povoliť odkazy"
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr "Povoliť používateľom zdieľať položky pre verejnosť cez odkazy"
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr "Povoliť zdieľanie ďalej"
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr "Povoliť používateľom ďalej zdieľať zdieľané položky"
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr "Povoliť používateľom zdieľať s kýmkoľvek"
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr "Povoliť používateľom zdieľať len s používateľmi v ich skupinách"
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr "Zabezpečenie"
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr "Vynútiť HTTPS"
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr "Vynúti pripojovanie klientov ownCloud cez šifrované pripojenie."
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr "Pripojte sa k tejto inštancii ownCloud cez HTTPS pre povolenie alebo zakázanie vynútenia SSL."
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr "Záznam"
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr "Úroveň záznamu"
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Viac"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Verzia"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencovaný pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Pridať vašu aplikáciu"
@@ -160,7 +366,7 @@ msgstr "Príručka používateľa"
 
 #: templates/help.php:4
 msgid "Administrator Documentation"
-msgstr "Príručka správcu"
+msgstr "Príručka administrátora"
 
 #: templates/help.php:6
 msgid "Online Documentation"
@@ -183,116 +389,86 @@ msgstr "Komerčná podpora"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Použili ste <strong>%s</strong> z <strong>%s</strong> dostupných "
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klienti"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Stiahnuť desktopového klienta"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Stiahnuť Android klienta"
+msgid "Get the apps to sync your files"
+msgstr "Získať aplikácie na synchronizáciu Vašich súborov"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Stiahnuť iOS klienta"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Znovu zobraziť sprievodcu prvým spustením"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Heslo"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Heslo bolo zmenené"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Nie je možné zmeniť vaše heslo"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Aktuálne heslo"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nové heslo"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "zobraziť"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Zmeniť heslo"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Zobrazované meno"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Vaše zobrazované meno bolo zmenené"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Nemožno zmeniť Vaše zobrazované meno"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Zmeniť zobrazované meno"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Vaša emailová adresa"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Vyplňte emailovú adresu pre aktivovanie obnovy hesla"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Jazyk"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Pomôcť s prekladom"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Použite túto adresu pre pripojenie vášho ownCloud k súborovému správcovi"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Verzia"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencovaný pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Prihlasovacie meno"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Skupiny"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Vytvoriť"
@@ -301,34 +477,26 @@ msgstr "Vytvoriť"
 msgid "Default Storage"
 msgstr "Predvolené úložisko"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Nelimitované"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Iné"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Správca skupiny"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Úložisko"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "zmeniť zobrazované meno"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "nastaviť nové heslo"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Predvolené"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Odstrániť"
diff --git a/l10n/sk_SK/user_ldap.po b/l10n/sk_SK/user_ldap.po
index 69f4aa7436b5b0980326bedf9c5c606325de3be6..6075f01a7d945159153f7ba09cc54a28c0a69f3f 100644
--- a/l10n/sk_SK/user_ldap.po
+++ b/l10n/sk_SK/user_ldap.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 13:20+0000\n"
+"Last-Translator: mhh <marian.hvolka@stuba.sk>\n"
 "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -76,13 +76,13 @@ msgid ""
 "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may"
 " experience unexpected behaviour. Please ask your system administrator to "
 "disable one of them."
-msgstr "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávať neočakávané správanie. Požiadajte správcu systému aby jednu z nich zakázal."
+msgstr "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávať neočakávané správanie. Požiadajte administrátora systému aby jednu z nich zakázal."
 
 #: templates/settings.php:11
 msgid ""
 "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not "
 "work. Please ask your system administrator to install it."
-msgstr "<b>Upozornenie:</b> nie je nainštalovaný LDAP modul pre PHP, backend vrstva nebude fungovať. Požádejte správcu systému aby ho nainštaloval."
+msgstr "<b>Upozornenie:</b> nie je nainštalovaný LDAP modul pre PHP, backend vrstva nebude fungovať. Požádejte administrátora systému aby ho nainštaloval."
 
 #: templates/settings.php:15
 msgid "Server configuration"
@@ -216,7 +216,7 @@ msgstr "Použi TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Nepoužívajte pre pripojenie LDAPS, zlyhá."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
@@ -290,7 +290,7 @@ msgstr "Atribúty vyhľadávania skupín"
 
 #: templates/settings.php:51
 msgid "Group-Member association"
-msgstr "Asociácia člena skupiny"
+msgstr "Priradenie člena skupiny"
 
 #: templates/settings.php:53
 msgid "Special Attributes"
diff --git a/l10n/sl/core.po b/l10n/sl/core.po
index 8f861f48a3a154f0ced740cd85beb52aafe22d13..57d87ce6bcc8179c7ddb36128b58c8a68ec15609 100644
--- a/l10n/sl/core.po
+++ b/l10n/sl/core.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -160,59 +160,59 @@ msgstr "november"
 msgid "December"
 msgstr "december"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Nastavitve"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "pred nekaj sekundami"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "pred minuto"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "pred {minutes} minutami"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "pred 1 uro"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "pred {hours} urami"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "danes"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "včeraj"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "pred {days} dnevi"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "zadnji mesec"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "pred {months} meseci"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "mesecev nazaj"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "lansko leto"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "let nazaj"
 
@@ -242,8 +242,8 @@ msgid "The object type is not specified."
 msgstr "Vrsta predmeta ni podana."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Napaka"
 
@@ -255,15 +255,15 @@ msgstr "Ime aplikacije ni podano."
 msgid "The required file {file} is not installed!"
 msgstr "Zahtevana datoteka {file} ni nameščena!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Souporaba"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Souporaba"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Napaka med souporabo"
 
@@ -359,23 +359,23 @@ msgstr "izbriše"
 msgid "share"
 msgstr "določi souporabo"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Zaščiteno z geslom"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Napaka brisanja datuma preteka"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Napaka med nastavljanjem datuma preteka"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Pošiljam ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-pošta je bila poslana"
 
diff --git a/l10n/sl/files.po b/l10n/sl/files.po
index 3482d91388aca4c69d0060882d0a324de341ed89..94b106efeaf650894fd76a313cbd57cf942ae61a 100644
--- a/l10n/sl/files.po
+++ b/l10n/sl/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr ""
 msgid "Files"
 msgstr "Datoteke"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Izbriši"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Preimenuj"
 
@@ -196,31 +196,31 @@ msgstr "Naslov URL ne sme biti prazen."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Ime"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Velikost"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Spremenjeno"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mapa"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} map"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 datoteka"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} datotek"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "Iz povezave"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sl/files_trashbin.po b/l10n/sl/files_trashbin.po
index 525f304069e588664d0a4ba17abbc1e0df21cfcc..6bcfe28d48a2acbd17e720774ecc896bbe002a31 100644
--- a/l10n/sl/files_trashbin.po
+++ b/l10n/sl/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/sl/lib.po b/l10n/sl/lib.po
index e0c60dd5cd20ad26835e2300f5ec02718b82d540..e3f61a640a8c6c88fb5a73344f07f40246a49cd6 100644
--- a/l10n/sl/lib.po
+++ b/l10n/sl/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "Besedilo"
 msgid "Images"
 msgstr "Slike"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/sl/settings.po b/l10n/sl/settings.po
index 9046223ab32844b3d6b97c8be58284153d91b222..f887087717cb63fec23b8ea85e86c244c66f3602 100644
--- a/l10n/sl/settings.po
+++ b/l10n/sl/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Ni mogoče naložiti seznama iz App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Napaka overitve"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -84,7 +84,7 @@ msgstr "Uporabnika ni mogoče dodati k skupini %s"
 msgid "Unable to remove user from group %s"
 msgstr "Uporabnika ni mogoče odstraniti iz skupine %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -124,10 +124,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Poteka shranjevanje ..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "izbrisano"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "razveljavi"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Skupine"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Skrbnik skupine"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Izbriši"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__ime_jezika__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Varnostno opozorilo"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Trenutno je dostop do podatkovne mape in datotek najverjetneje omogočen vsem uporabnikom na omrežju. Datoteka .htaccess, vključena v ownCloud namreč ni omogočena. Močno priporočamo nastavitev spletnega strežnika tako, da mapa podatkov ne bo javno dostopna ali pa, da jo prestavite ven iz korenske mape spletnega strežnika."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Več"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Različica"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Programski paket razvija <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnost ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je objavljena pod pogoji dovoljenja <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Splošno javno dovoljenje Affero\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Dodaj program"
@@ -181,116 +387,86 @@ msgstr "Komercialna podpora"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Uporabljate <strong>%s</strong> od razpoložljivih <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Stranka"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Prenesi namizne odjemalce"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Prenesi Android odjemalec"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Prenesi iOS odjemalec"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Geslo"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Vaše geslo je spremenjeno"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Gesla ni mogoče spremeniti."
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Trenutno geslo"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Novo geslo"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "pokaži"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Spremeni geslo"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Elektronska pošta"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Vaš elektronski poštni naslov"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Vpišite vaš elektronski naslov in s tem omogočite obnovitev gesla"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Jezik"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Pomagajte pri prevajanju"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Uporabite ta naslov za povezavo do ownCloud v vašem upravljalniku datotek."
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Različica"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Programski paket razvija <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnost ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je objavljena pod pogoji dovoljenja <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Splošno javno dovoljenje Affero\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Skupine"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Ustvari"
@@ -299,34 +475,26 @@ msgstr "Ustvari"
 msgid "Default Storage"
 msgstr "Privzeta shramba"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Neomejeno"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Drugo"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Skrbnik skupine"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Shramba"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Privzeto"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Izbriši"
diff --git a/l10n/sr/core.po b/l10n/sr/core.po
index c74ef339d87edbb5d7d6fd15f252cc7f3d40df11..2f0933563299c154da95bc494369ea4a66064bfc 100644
--- a/l10n/sr/core.po
+++ b/l10n/sr/core.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
@@ -159,59 +159,59 @@ msgstr "Новембар"
 msgid "December"
 msgstr "Децембар"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Подешавања"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "пре неколико секунди"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "пре 1 минут"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "пре {minutes} минута"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "Пре једног сата"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "Пре {hours} сата (сати)"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "данас"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "јуче"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "пре {days} дана"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "прошлог месеца"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "Пре {months} месеца (месеци)"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "месеци раније"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "прошле године"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "година раније"
 
@@ -241,8 +241,8 @@ msgid "The object type is not specified."
 msgstr "Врста објекта није подешена."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Грешка"
 
@@ -254,15 +254,15 @@ msgstr "Име програма није унето."
 msgid "The required file {file} is not installed!"
 msgstr "Потребна датотека {file} није инсталирана."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Дељење"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Дељење"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Грешка у дељењу"
 
@@ -358,23 +358,23 @@ msgstr "обриши"
 msgid "share"
 msgstr "подели"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Заштићено лозинком"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Грешка код поништавања датума истека"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Грешка код постављања датума истека"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Шаљем..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Порука је послата"
 
diff --git a/l10n/sr/files.po b/l10n/sr/files.po
index 23342d8cef9322299bc8cd94349f1befe7676654..949fbc2cfc6ca69a686c6bae89106fcd69eb0cf5 100644
--- a/l10n/sr/files.po
+++ b/l10n/sr/files.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
@@ -81,15 +81,15 @@ msgstr ""
 msgid "Files"
 msgstr "Датотеке"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Обриши"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Преименуј"
 
@@ -195,31 +195,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Назив"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Величина"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Измењено"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 фасцикла"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} фасцикле/и"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 датотека"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} датотеке/а"
 
@@ -276,7 +276,7 @@ msgid "From link"
 msgstr "Са везе"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sr/files_trashbin.po b/l10n/sr/files_trashbin.po
index 58c3430bb90617a90959e642dcc1c7080516b1f7..4e1a43a04958a77431033ffec43fe78d273caecc 100644
--- a/l10n/sr/files_trashbin.po
+++ b/l10n/sr/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/sr/lib.po b/l10n/sr/lib.po
index 1520b0230c2d43178f26c6b1bfe88c8eab4c820f..ac54addda50d2356391414544ad16015ba13ba34 100644
--- a/l10n/sr/lib.po
+++ b/l10n/sr/lib.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
@@ -88,13 +88,99 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Слике"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/sr/settings.po b/l10n/sr/settings.po
index 57f48decd5797afb26e177e6b12fe948bd506e26..46a0dd8a5c285043162b8cbedad5fbdc8796a891 100644
--- a/l10n/sr/settings.po
+++ b/l10n/sr/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Грешка приликом учитавања списка из Складишта Програма"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Грешка при аутентификацији"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr "Не могу да додам корисника у групу %s"
 msgid "Unable to remove user from group %s"
 msgstr "Не могу да уклоним корисника из групе %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Чување у току..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "опозови"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Групе"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Управник групе"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Обриши"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Сигурносно упозорење"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Тренутно су ваши подаци и датотеке доступне са интернета. Датотека .htaccess коју је обезбедио пакет ownCloud не функционише. Саветујемо вам да подесите веб сервер тако да директоријум са подацима не буде изложен или да га преместите изван коренског директоријума веб сервера."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Развијају <a href=\"http://ownCloud.org/contact\" target=\"_blank\">Оунклауд (ownCloud) заједница</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворни код</a> је издат под <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Аферо Јавном Лиценцом (Affero General Public License)\">АГПЛ лиценцом</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Додајте ваш програм"
@@ -179,116 +385,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Искористили сте <strong>%s</strong> од дозвољених <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Клијенти"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr ""
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Поново прикажи чаробњак за прво покретање"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Лозинка"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Лозинка је промењена"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Не могу да изменим вашу лозинку"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Тренутна лозинка"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Нова лозинка"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "прикажи"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Измени лозинку"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Е-пошта"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Ваша адреса е-поште"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Ун"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Језик"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr " Помозите у превођењу"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Развијају <a href=\"http://ownCloud.org/contact\" target=\"_blank\">Оунклауд (ownCloud) заједница</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворни код</a> је издат под <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Аферо Јавном Лиценцом (Affero General Public License)\">АГПЛ лиценцом</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Групе"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Направи"
@@ -297,34 +473,26 @@ msgstr "Направи"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Друго"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Управник групе"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Обриши"
diff --git a/l10n/sr@latin/files.po b/l10n/sr@latin/files.po
index b1035f141dce4bf21b23fc64b4519f834449420d..721a34c0996902991502cc3a8d50b8e484392d96 100644
--- a/l10n/sr@latin/files.po
+++ b/l10n/sr@latin/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "Fajlovi"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Obriši"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -193,31 +193,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Ime"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Veličina"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Zadnja izmena"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sr@latin/files_trashbin.po b/l10n/sr@latin/files_trashbin.po
index 1c241fa05a44dfa1f209e7c850576b5b2c86a8b9..a96b8aed4fc2bf60cbc7e3ed99c483f64b40845f 100644
--- a/l10n/sr@latin/files_trashbin.po
+++ b/l10n/sr@latin/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/sr@latin/lib.po b/l10n/sr@latin/lib.po
index 8d21e154552fdfd6395d84b07aa1ed829ce7c75f..602dcf788336b20871e26564682bd3a60efcb282 100644
--- a/l10n/sr@latin/lib.po
+++ b/l10n/sr@latin/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr "Tekst"
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/sr@latin/settings.po b/l10n/sr@latin/settings.po
index f5f05886b64ecd368594c68c308f0b20aa75469d..a275ec0d3a74ba1917c025d9784c662eed76200e 100644
--- a/l10n/sr@latin/settings.po
+++ b/l10n/sr@latin/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Greška pri autentifikaciji"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupe"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Obriši"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -178,116 +384,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Klijenti"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Lozinka"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Ne mogu da izmenim vašu lozinku"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Trenutna lozinka"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nova lozinka"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "prikaži"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Izmeni lozinku"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-mail"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Jezik"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupe"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Napravi"
@@ -296,34 +472,26 @@ msgstr "Napravi"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Drugo"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Obriši"
diff --git a/l10n/sv/core.po b/l10n/sv/core.po
index dbcbf991dacdc2c3030c72f6b140c472b337322e..eb1279048c5b3669320b61f84df06fbebf5440cc 100644
--- a/l10n/sv/core.po
+++ b/l10n/sv/core.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -59,7 +59,7 @@ msgstr "Ingen kategori att lägga till?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "Denna kategori finns redan: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -163,59 +163,59 @@ msgstr "November"
 msgid "December"
 msgstr "December"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Inställningar"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "sekunder sedan"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 minut sedan"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} minuter sedan"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 timme sedan"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} timmar sedan"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "i dag"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "i går"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} dagar sedan"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "förra månaden"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} månader sedan"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "månader sedan"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "förra året"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "år sedan"
 
@@ -245,8 +245,8 @@ msgid "The object type is not specified."
 msgstr "Objekttypen är inte specificerad."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Fel"
 
@@ -258,15 +258,15 @@ msgstr " Namnet på appen är inte specificerad."
 msgid "The required file {file} is not installed!"
 msgstr "Den nödvändiga filen {file} är inte installerad!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Dela"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Delad"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Dela"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Fel vid delning"
 
@@ -362,23 +362,23 @@ msgstr "radera"
 msgid "share"
 msgstr "dela"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Lösenordsskyddad"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Fel vid borttagning av utgångsdatum"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Fel vid sättning av utgångsdatum"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Skickar ..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "E-post skickat"
 
@@ -494,14 +494,14 @@ msgstr "Utan en säker slumptalsgenerator kan angripare få möjlighet att föru
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "Din datakatalog och filer är förmodligen tillgängliga från Internet, eftersom .htaccess-filen inte fungerar."
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "För information hur man korrekt konfigurera servern, var god se <a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">documentation</a>."
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -584,7 +584,7 @@ msgstr "Logga in"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "Alternativa inloggningar"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/sv/files.po b/l10n/sv/files.po
index edb0d69b8078ee125ecbdd05cd50057404f25977..4b3b2f578f0a5e70846cffc9cdc199f64cc5e92c 100644
--- a/l10n/sv/files.po
+++ b/l10n/sv/files.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -85,15 +85,15 @@ msgstr "Felaktig mapp."
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "Radera permanent"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Radera"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Byt namn"
 
@@ -199,31 +199,31 @@ msgstr "URL kan inte vara tom."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Ogiltigt mappnamn. Användande av 'Shared' är reserverat av ownCloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Namn"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Storlek"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Ändrad"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 mapp"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} mappar"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 fil"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} filer"
 
@@ -280,7 +280,7 @@ msgid "From link"
 msgstr "Från länk"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sv/files_trashbin.po b/l10n/sv/files_trashbin.po
index 177e741225d4b591ef3fda48f945e9d24cca2fc2..94410d99b970c5458178846d3ad897f5ce6cee1d 100644
--- a/l10n/sv/files_trashbin.po
+++ b/l10n/sv/files_trashbin.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 # André <lokal_profil@hotmail.com>, 2013.
+# Magnus Höglund <magnus@linux.com>, 2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
+"Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +22,12 @@ msgstr ""
 #: ajax/delete.php:22
 #, php-format
 msgid "Couldn't delete %s permanently"
-msgstr ""
+msgstr "Kunde inte radera %s permanent"
 
 #: ajax/undelete.php:41
 #, php-format
 msgid "Couldn't restore %s"
-msgstr ""
+msgstr "Kunde inte återställa %s"
 
 #: js/trash.js:7 js/trash.js:94
 msgid "perform restore operation"
@@ -34,7 +35,7 @@ msgstr "utför återställning"
 
 #: js/trash.js:33
 msgid "delete file permanently"
-msgstr ""
+msgstr "radera filen permanent"
 
 #: js/trash.js:125 templates/index.php:17
 msgid "Name"
diff --git a/l10n/sv/files_versions.po b/l10n/sv/files_versions.po
index 5efefb7d136b8c107f2d56b66229de9ffd76086e..3930feca0f403df306f7ad08237592a2ee614a4d 100644
--- a/l10n/sv/files_versions.po
+++ b/l10n/sv/files_versions.po
@@ -3,14 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Magnus Höglund <magnus@linux.com>, 2012.
+# Magnus Höglund <magnus@linux.com>, 2012-2013.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 07:20+0000\n"
+"Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,33 +21,33 @@ msgstr ""
 #: ajax/rollbackVersion.php:15
 #, php-format
 msgid "Could not revert: %s"
-msgstr ""
+msgstr "Kunde inte återställa: %s"
 
 #: history.php:40
 msgid "success"
-msgstr ""
+msgstr "lyckades"
 
 #: history.php:42
 #, php-format
 msgid "File %s was reverted to version %s"
-msgstr ""
+msgstr "Filen %s återställdes till version %s"
 
 #: history.php:49
 msgid "failure"
-msgstr ""
+msgstr "misslyckades"
 
 #: history.php:51
 #, php-format
 msgid "File %s could not be reverted to version %s"
-msgstr ""
+msgstr "Filen %s kunde inte återställas till version %s"
 
 #: history.php:68
 msgid "No old versions available"
-msgstr ""
+msgstr "Inga gamla versioner finns tillgängliga"
 
 #: history.php:73
 msgid "No path specified"
-msgstr ""
+msgstr "Ingen sökväg angiven"
 
 #: js/versions.js:16
 msgid "History"
@@ -55,7 +55,7 @@ msgstr "Historik"
 
 #: templates/history.php:20
 msgid "Revert a file to a previous version by clicking on its revert button"
-msgstr ""
+msgstr "Återställ en fil till en tidigare version genom att klicka på knappen"
 
 #: templates/settings.php:3
 msgid "Files Versioning"
diff --git a/l10n/sv/lib.po b/l10n/sv/lib.po
index 9d898da3010ebb271e183cb6d5e7560e713ac112..a9d9be915c25174e7e7f1502ba7634b90a815d49 100644
--- a/l10n/sv/lib.po
+++ b/l10n/sv/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -87,16 +87,102 @@ msgstr "Text"
 msgid "Images"
 msgstr "Bilder"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "Din webbserver är inte korrekt konfigurerad för att tillåta filsynkronisering eftersom WebDAV inte verkar fungera."
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "Var god kontrollera <a href='%s'>installationsguiden</a>."
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/sv/settings.po b/l10n/sv/settings.po
index c51345d4304293c9dff337bfb43be0c4a347f284..854e6c5dbac60bc2099bbd488e05813ee627c4f4 100644
--- a/l10n/sv/settings.po
+++ b/l10n/sv/settings.po
@@ -7,7 +7,7 @@
 # Christer Eriksson <post@hc3web.com>, 2012.
 # Daniel Sandman <revoltism@gmail.com>, 2012.
 #   <hakan.thn@gmail.com>, 2011.
-# Magnus Höglund <magnus@linux.com>, 2012.
+# Magnus Höglund <magnus@linux.com>, 2012-2013.
 #   <magnus@linux.com>, 2012.
 #   <q@xnq.me>, 2012.
 #   <revoltism@gmail.com>, 2011, 2012.
@@ -16,8 +16,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -30,14 +30,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Kan inte ladda listan från App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Autentiseringsfel"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "Kan inte ändra visningsnamn"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -89,7 +89,7 @@ msgstr "Kan inte lägga till användare i gruppen %s"
 msgid "Unable to remove user from group %s"
 msgstr "Kan inte radera användare från gruppen %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Kunde inte uppdatera appen"
 
@@ -129,10 +129,216 @@ msgstr "Uppdaterad"
 msgid "Saving..."
 msgstr "Sparar..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "raderad"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "ångra"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Grupper"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Gruppadministratör"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Radera"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Säkerhetsvarning"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Din datakatalog och dina filer är förmodligen tillgängliga från Internet. Den .htaccess-fil som ownCloud tillhandahåller fungerar inte. Vi rekommenderar starkt att du konfigurerar webbservern så att datakatalogen inte längre är tillgänglig eller att du flyttar datakatalogen utanför webbserverns dokument-root."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "Din webbserver är inte korrekt konfigurerad för att tillåta filsynkronisering eftersom WebDAV inte verkar fungera."
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "Var god kontrollera <a href='%s'>installationsguiden</a>."
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Mer"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Version"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kommunity</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">källkoden</a> är licenserad under <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Lägg till din applikation"
@@ -186,116 +392,86 @@ msgstr "Kommersiell support"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Du har använt <strong>%s</strong> av tillgängliga <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Kunder"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Ladda ner skrivbordsklienter"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Ladda ner klient för Android"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Ladda ner klient för iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Visa Första uppstarts-guiden igen"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Lösenord"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ditt lösenord har ändrats"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Kunde inte ändra ditt lösenord"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Nuvarande lösenord"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Nytt lösenord"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "visa"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Ändra lösenord"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Visat namn"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "Ditt visningsnamn har ändrats"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "Kan inte ändra ditt visningsnamn"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "Ändra visningsnamn"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "E-post"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Din e-postadress"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Fyll i en e-postadress för att aktivera återställning av lösenord"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Språk"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hjälp att översätta"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Använd denna adress för att ansluta till ownCloud i din filhanterare"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Version"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kommunity</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">källkoden</a> är licenserad under <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Inloggningsnamn"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Grupper"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Skapa"
@@ -304,34 +480,26 @@ msgstr "Skapa"
 msgid "Default Storage"
 msgstr "Förvald lagring"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Obegränsad"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Annat"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Gruppadministratör"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Lagring"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "ändra visat namn"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "ange nytt lösenord"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Förvald"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Radera"
diff --git a/l10n/sv/user_ldap.po b/l10n/sv/user_ldap.po
index 4eb8e55278d4f28349ebd24b599a1c82f11df6eb..148481a3560853e8e7fb77cecca14bf25c689359 100644
--- a/l10n/sv/user_ldap.po
+++ b/l10n/sv/user_ldap.po
@@ -10,9 +10,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 07:00+0000\n"
+"Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -217,7 +217,7 @@ msgstr "Använd TLS"
 
 #: templates/settings.php:38
 msgid "Do not use it additionally for LDAPS connections, it will fail."
-msgstr ""
+msgstr "Använd inte för LDAPS-anslutningar, det kommer inte att fungera."
 
 #: templates/settings.php:39
 msgid "Case insensitve LDAP server (Windows)"
diff --git a/l10n/sw_KE/files.po b/l10n/sw_KE/files.po
index 742adbe87b48cd07333a9c928977f192ae52af0f..7f9a342c8f66c1d7c233709c78702f4ad46b853a 100644
--- a/l10n/sw_KE/files.po
+++ b/l10n/sw_KE/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swahili (Kenya) (http://www.transifex.com/projects/p/owncloud/language/sw_KE/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/sw_KE/lib.po b/l10n/sw_KE/lib.po
index 239e879ce360575f859711a17928defd87f17ef6..803852d4296ae3de397bc20667e64834f42a4f9d 100644
--- a/l10n/sw_KE/lib.po
+++ b/l10n/sw_KE/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swahili (Kenya) (http://www.transifex.com/projects/p/owncloud/language/sw_KE/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/sw_KE/settings.po b/l10n/sw_KE/settings.po
index ebfabb7d98e6788a149ef15564f38da5040652ab..457728750c404d73d908743c79ba898853dd448d 100644
--- a/l10n/sw_KE/settings.po
+++ b/l10n/sw_KE/settings.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2011-07-25 16:05+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Swahili (Kenya) (http://www.transifex.com/projects/p/owncloud/language/sw_KE/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr ""
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr ""
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/ta_LK/core.po b/l10n/ta_LK/core.po
index a7f267a577048386e62597640f9abdcd4ba0c49d..0a06dc2c2a923a6f0bd914e25a52820234669bb3 100644
--- a/l10n/ta_LK/core.po
+++ b/l10n/ta_LK/core.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -157,59 +157,59 @@ msgstr "கார்த்திகை"
 msgid "December"
 msgstr "மார்கழி"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "அமைப்புகள்"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "செக்கன்களுக்கு முன்"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 நிமிடத்திற்கு முன் "
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{நிமிடங்கள்} நிமிடங்களுக்கு முன் "
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 மணித்தியாலத்திற்கு முன்"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{மணித்தியாலங்கள்} மணித்தியாலங்களிற்கு முன்"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "இன்று"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "நேற்று"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{நாட்கள்} நாட்களுக்கு முன்"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "கடந்த மாதம்"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{மாதங்கள்} மாதங்களிற்கு முன்"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "மாதங்களுக்கு முன்"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "கடந்த வருடம்"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "வருடங்களுக்கு முன்"
 
@@ -239,8 +239,8 @@ msgid "The object type is not specified."
 msgstr "பொருள் வகை குறிப்பிடப்படவில்லை."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "வழு"
 
@@ -252,15 +252,15 @@ msgstr "செயலி பெயர் குறிப்பிடப்பட
 msgid "The required file {file} is not installed!"
 msgstr "தேவைப்பட்ட கோப்பு {கோப்பு} நிறுவப்படவில்லை!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "பகிர்வு"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "பகிர்வு"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "பகிரும் போதான வழு"
 
@@ -356,23 +356,23 @@ msgstr "நீக்குக"
 msgid "share"
 msgstr "பகிர்தல்"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "கடவுச்சொல் பாதுகாக்கப்பட்டது"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "காலாவதியாகும் திகதியை குறிப்பிடாமைக்கான வழு"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "காலாவதியாகும் திகதியை குறிப்பிடுவதில் வழு"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/ta_LK/files.po b/l10n/ta_LK/files.po
index a6ead449b9345ab2c13392eeecf489cef8ec4792..f6d7c0f4462daeeba50480b8bbc0caf29c1bb99d 100644
--- a/l10n/ta_LK/files.po
+++ b/l10n/ta_LK/files.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -79,15 +79,15 @@ msgstr ""
 msgid "Files"
 msgstr "கோப்புகள்"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "அழிக்க"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "பெயர்மாற்றம்"
 
@@ -193,31 +193,31 @@ msgstr "URL  வெறுமையாக இருக்கமுடியாத
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "பெயர்"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "அளவு"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "மாற்றப்பட்டது"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 கோப்புறை"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{எண்ணிக்கை} கோப்புறைகள்"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 கோப்பு"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{எண்ணிக்கை} கோப்புகள்"
 
@@ -274,7 +274,7 @@ msgid "From link"
 msgstr "இணைப்பிலிருந்து"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/ta_LK/files_trashbin.po b/l10n/ta_LK/files_trashbin.po
index 731846dde06f1d754cae9e02c0a1200b604966ba..aa8e5682663d9d9f40ca1ca9e3f01c65f735b3f5 100644
--- a/l10n/ta_LK/files_trashbin.po
+++ b/l10n/ta_LK/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/ta_LK/lib.po b/l10n/ta_LK/lib.po
index 5817809e5b2c49518791d9b28b6866a41acd8692..80358acada19049f176260fb22a7594bf184370b 100644
--- a/l10n/ta_LK/lib.po
+++ b/l10n/ta_LK/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "உரை"
 msgid "Images"
 msgstr "படங்கள்"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/ta_LK/settings.po b/l10n/ta_LK/settings.po
index 6e3983c95c4eb0cafda168283ad167d67ba33809..9b7eecce540436575cf04b54e5bb57ddcb2c046f 100644
--- a/l10n/ta_LK/settings.po
+++ b/l10n/ta_LK/settings.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n"
 "MIME-Version: 1.0\n"
@@ -22,12 +22,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "செயலி சேமிப்பிலிருந்து பட்டியலை ஏற்றமுடியாதுள்ளது"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "அத்தாட்சிப்படுத்தலில் வழு"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -81,7 +81,7 @@ msgstr "குழு %s இல் பயனாளரை சேர்க்க 
 msgid "Unable to remove user from group %s"
 msgstr "குழு %s இலிருந்து பயனாளரை நீக்கமுடியாது"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -121,10 +121,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "இயலுமைப்படுத்துக"
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "முன் செயல் நீக்கம் "
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "குழுக்கள்"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "குழு நிர்வாகி"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "அழிக்க"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "_மொழி_பெயர்_"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "பாதுகாப்பு எச்சரிக்கை"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "உங்களுடைய தரவு அடைவு மற்றும் உங்களுடைய கோப்புக்களை பெரும்பாலும் இணையத்தினூடாக அணுகலாம். ownCloud இனால் வழங்கப்படுகின்ற .htaccess கோப்பு வேலை செய்யவில்லை. தரவு அடைவை நீண்ட நேரத்திற்கு அணுகக்கூடியதாக உங்களுடைய வலைய சேவையகத்தை தகவமைக்குமாறு நாங்கள் உறுதியாக கூறுகிறோம் அல்லது தரவு அடைவை வலைய சேவையக மூல ஆவணத்திலிருந்து வெளியே அகற்றுக.  "
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "மேலதிக"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "உங்களுடைய செயலியை சேர்க்க"
@@ -178,116 +384,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "நீங்கள் <strong>%s</strong> இலுள்ள <strong>%s</strong>பயன்படுத்தியுள்ளீர்கள்"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "வாடிக்கையாளர்கள்"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "கடவுச்சொல்"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "உங்களுடைய கடவுச்சொல் மாற்றப்பட்டுள்ளது"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "உங்களுடைய கடவுச்சொல்லை மாற்றமுடியாது"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "தற்போதைய கடவுச்சொல்"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "புதிய கடவுச்சொல்"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "காட்டு"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "கடவுச்சொல்லை மாற்றுக"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "மின்னஞ்சல்"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "உங்களுடைய மின்னஞ்சல் முகவரி"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "கடவுச்சொல் மீள் பெறுவதை இயலுமைப்படுத்துவதற்கு மின்னஞ்சல் முகவரியை இயலுமைப்படுத்துக"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "மொழி"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "மொழிபெயர்க்க உதவி"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "குழுக்கள்"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "உருவாக்குக"
@@ -296,34 +472,26 @@ msgstr "உருவாக்குக"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "மற்றவை"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "குழு நிர்வாகி"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "அழிக்க"
diff --git a/l10n/templates/core.pot b/l10n/templates/core.pot
index 6a00507c5fd920f34a97fc75335d58d1d6e14551..0cc8a3019e8fedde9455ac16f248cff1e08c962b 100644
--- a/l10n/templates/core.pot
+++ b/l10n/templates/core.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -160,55 +160,55 @@ msgstr ""
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr ""
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr ""
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr ""
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr ""
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr ""
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr ""
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr ""
 
@@ -251,12 +251,12 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
+#: js/share.js:29 js/share.js:43 js/share.js:90
+msgid "Shared"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Shared"
+#: js/share.js:93
+msgid "Share"
 msgstr ""
 
 #: js/share.js:141 js/share.js:622
diff --git a/l10n/templates/files.pot b/l10n/templates/files.pot
index e106765f56cd9f3799c729085f1c4396c5c94d20..078e0e4058517159546bff0aa2e3de4762ef3755 100644
--- a/l10n/templates/files.pot
+++ b/l10n/templates/files.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/templates/files_encryption.pot b/l10n/templates/files_encryption.pot
index b0e79f0c421c5917aecde065ef2518d72956ad03..6d0396470cb799142f4d314c02222467557a0ce8 100644
--- a/l10n/templates/files_encryption.pot
+++ b/l10n/templates/files_encryption.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/templates/files_external.pot b/l10n/templates/files_external.pot
index f3455db0320230fd8b76dc4409e23015abdfcbc0..db27055908338f1c1c5ebc7050101aa1c6cd86b5 100644
--- a/l10n/templates/files_external.pot
+++ b/l10n/templates/files_external.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -41,13 +41,13 @@ msgstr ""
 msgid "Error configuring Google Drive storage"
 msgstr ""
 
-#: lib/config.php:405
+#: lib/config.php:413
 msgid ""
 "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares "
 "is not possible. Please ask your system administrator to install it."
 msgstr ""
 
-#: lib/config.php:406
+#: lib/config.php:414
 msgid ""
 "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting "
 "of FTP shares is not possible. Please ask your system administrator to "
diff --git a/l10n/templates/files_sharing.pot b/l10n/templates/files_sharing.pot
index b6979782de6d787149fe15ad435a698cff1ec3f3..27454624e29d530b83ea2b7869bf1ab9392a5bf9 100644
--- a/l10n/templates/files_sharing.pot
+++ b/l10n/templates/files_sharing.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/templates/files_trashbin.pot b/l10n/templates/files_trashbin.pot
index cd80ec09183e518e58d41427a934af9d590667f2..dfb764945880d6da71e98afa15a21c837e168452 100644
--- a/l10n/templates/files_trashbin.pot
+++ b/l10n/templates/files_trashbin.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/templates/files_versions.pot b/l10n/templates/files_versions.pot
index 6aa08a41e57fc475918744b33ba61cbf498f0842..bbfa7fc167b647ef6b6f4004f08df6c606c2a263 100644
--- a/l10n/templates/files_versions.pot
+++ b/l10n/templates/files_versions.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/templates/lib.pot b/l10n/templates/lib.pot
index 87ad3ae49f29f938e684689497337e833a76859b..40dc2bee040cdbef4b21578e2f546c2623f4afb4 100644
--- a/l10n/templates/lib.pot
+++ b/l10n/templates/lib.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,27 +17,27 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: app.php:339
+#: app.php:349
 msgid "Help"
 msgstr ""
 
-#: app.php:346
+#: app.php:362
 msgid "Personal"
 msgstr ""
 
-#: app.php:351
+#: app.php:373
 msgid "Settings"
 msgstr ""
 
-#: app.php:356
+#: app.php:385
 msgid "Users"
 msgstr ""
 
-#: app.php:363
+#: app.php:398
 msgid "Apps"
 msgstr ""
 
-#: app.php:365
+#: app.php:406
 msgid "Admin"
 msgstr ""
 
@@ -49,15 +49,15 @@ msgstr ""
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:203 files.php:228
+#: files.php:204 files.php:231
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:227
+#: files.php:228
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
-#: helper.php:226
+#: helper.php:228
 msgid "couldn't be determined"
 msgstr ""
 
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:294 setup.php:339
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:427 setup.php:494
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397
+#: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534
+#: setup.php:545 setup.php:552 setup.php:561 setup.php:569 setup.php:578
+#: setup.php:584
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398
+#: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535
+#: setup.php:546 setup.php:562 setup.php:570 setup.php:579
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:273
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:274
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:279
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:280
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:553 setup.php:585
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:649
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:651
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
@@ -148,16 +234,16 @@ msgstr ""
 msgid "years ago"
 msgstr ""
 
-#: updater.php:75
+#: updater.php:78
 #, php-format
 msgid "%s is available. Get <a href=\"%s\">more information</a>"
 msgstr ""
 
-#: updater.php:77
+#: updater.php:81
 msgid "up to date"
 msgstr ""
 
-#: updater.php:80
+#: updater.php:84
 msgid "updates check is disabled"
 msgstr ""
 
diff --git a/l10n/templates/settings.pot b/l10n/templates/settings.pot
index 7c27552622c79379adc66a01356ab67cef6938df..afd2407497c28492fccef6bcd9707501c44fe353 100644
--- a/l10n/templates/settings.pot
+++ b/l10n/templates/settings.pot
@@ -6,27 +6,27 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: ajax/apps/ocs.php:20
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -120,10 +120,215 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:191
+msgid "add group"
+msgstr ""
+
+#: js/users.js:352
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:353 js/users.js:359 js/users.js:374
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:358
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the "
+"webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US."
+"UTF8\". This means that there might be problems with certain characters in "
+"file names. We strongly suggest to install the required packages on your "
+"system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to "
+"enable internet connection for this server if you want to have all features "
+"of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank"
+"\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" "
+"target=\"_blank\">source code</a> is licensed under the <a href=\"http://www."
+"gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero "
+"General Public License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -178,115 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr ""
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr ""
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank"
-"\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" "
-"target=\"_blank\">source code</a> is licensed under the <a href=\"http://www."
-"gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero "
-"General Public License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/templates/user_ldap.pot b/l10n/templates/user_ldap.pot
index d25554932968139c0f4f931f048aa29a19254b25..0a173656b5e3fb21f8c6df95a294624aaf3e9e81 100644
--- a/l10n/templates/user_ldap.pot
+++ b/l10n/templates/user_ldap.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/templates/user_webdavauth.pot b/l10n/templates/user_webdavauth.pot
index 2208724aa91897d9a8e57f8bd6f54e5647d7bc0a..0b84d4999f6fd0b66c42be410fd70518489597eb 100644
--- a/l10n/templates/user_webdavauth.pot
+++ b/l10n/templates/user_webdavauth.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
+"Project-Id-Version: ownCloud Core 5.0.0\n"
+"Report-Msgid-Bugs-To: translations@owncloud.org\n"
+"POT-Creation-Date: 2013-02-15 00:05+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/l10n/th_TH/core.po b/l10n/th_TH/core.po
index ae9a01253675040a5671f12d1830d5f76b385240..37394ee13a443c6578d6bd942a86b00bf3b01c5a 100644
--- a/l10n/th_TH/core.po
+++ b/l10n/th_TH/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "พฤศจิกายน"
 msgid "December"
 msgstr "ธันวาคม"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "ตั้งค่า"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "วินาที ก่อนหน้านี้"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 นาทีก่อนหน้านี้"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} นาทีก่อนหน้านี้"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 ชั่วโมงก่อนหน้านี้"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} ชั่วโมงก่อนหน้านี้"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "วันนี้"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "เมื่อวานนี้"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{day} วันก่อนหน้านี้"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "เดือนที่แล้ว"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} เดือนก่อนหน้านี้"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "เดือน ที่ผ่านมา"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "ปีที่แล้ว"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "ปี ที่ผ่านมา"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr "ชนิดของวัตถุยังไม่ได้รับการระบุ"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "พบข้อผิดพลาด"
 
@@ -253,15 +253,15 @@ msgstr "ชื่อของแอปยังไม่ได้รับกา
 msgid "The required file {file} is not installed!"
 msgstr "ไฟล์ {file} ซึ่งเป็นไฟล์ที่จำเป็นต้องได้รับการติดตั้งไว้ก่อน ยังไม่ได้ถูกติดตั้ง"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "แชร์"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "แชร์แล้ว"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "แชร์"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "เกิดข้อผิดพลาดในระหว่างการแชร์ข้อมูล"
 
@@ -357,23 +357,23 @@ msgstr "ลบ"
 msgid "share"
 msgstr "แชร์"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "ใส่รหัสผ่านไว้"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "เกิดข้อผิดพลาดในการยกเลิกการตั้งค่าวันที่หมดอายุ"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "เกิดข้อผิดพลาดในการตั้งค่าวันที่หมดอายุ"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "กำลังส่ง..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "ส่งอีเมล์แล้ว"
 
diff --git a/l10n/th_TH/files.po b/l10n/th_TH/files.po
index 2104d5cd25f78b43cd13a9e76b5a0b8cc4fb3787..295ad41356cae5f1872792c6349afbe1267dc0f5 100644
--- a/l10n/th_TH/files.po
+++ b/l10n/th_TH/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n"
 "MIME-Version: 1.0\n"
@@ -80,15 +80,15 @@ msgstr "ไดเร็กทอรี่ไม่ถูกต้อง"
 msgid "Files"
 msgstr "ไฟล์"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "ลบ"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "เปลี่ยนชื่อ"
 
@@ -194,31 +194,31 @@ msgstr "URL ไม่สามารถเว้นว่างได้"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "ชื่อโฟลเดอร์ไม่ถูกต้อง การใช้งาน 'แชร์' สงวนไว้สำหรับ Owncloud เท่านั้น"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "ชื่อ"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "ขนาด"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "ปรับปรุงล่าสุด"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 โฟลเดอร์"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} โฟลเดอร์"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 ไฟล์"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} ไฟล์"
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr "จากลิงก์"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/th_TH/files_trashbin.po b/l10n/th_TH/files_trashbin.po
index 45c363a10ad9c748133abc53cc619ff5e6c785b5..b7f0801c5e2e01e92ead454e5a237873aceb9699 100644
--- a/l10n/th_TH/files_trashbin.po
+++ b/l10n/th_TH/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/th_TH/lib.po b/l10n/th_TH/lib.po
index 5e486a7842d3e8b1b87f551a543b2b7bede86e58..b7a10f4fd26728d9124664379ece14d7dedd8a98 100644
--- a/l10n/th_TH/lib.po
+++ b/l10n/th_TH/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "ข้อความ"
 msgid "Images"
 msgstr "รูปภาพ"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/th_TH/settings.po b/l10n/th_TH/settings.po
index a04a575b536fe78baee0d7a5af3c153caebc4cad..6cc808ea8998520dd41985d4963adb0bf9f04092 100644
--- a/l10n/th_TH/settings.po
+++ b/l10n/th_TH/settings.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n"
 "MIME-Version: 1.0\n"
@@ -24,12 +24,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "ไม่สามารถโหลดรายการจาก App Store ได้"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "เกิดข้อผิดพลาดเกี่ยวกับสิทธิ์การเข้าใช้งาน"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr "ไม่สามารถเพิ่มผู้ใช้งานเ
 msgid "Unable to remove user from group %s"
 msgstr "ไม่สามารถลบผู้ใช้งานออกจากกลุ่ม %s ได้"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "ไม่สามารถอัพเดทแอปฯ"
 
@@ -123,10 +123,216 @@ msgstr "อัพเดทแล้ว"
 msgid "Saving..."
 msgstr "กำลังบันทึุกข้อมูล..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "ลบแล้ว"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "เลิกทำ"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "กลุ่ม"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "ผู้ดูแลกลุ่ม"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "ลบ"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "ภาษาไทย"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "คำเตือนเกี่ยวกับความปลอดภัย"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "ไดเร็กทอรี่ข้อมูลและไฟล์ของคุณสามารถเข้าถึงได้จากอินเทอร์เน็ต ไฟล์ .htaccess ที่ ownCloud มีให้ไม่สามารถทำงานได้อย่างเหมาะสม เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ใหม่ในรูปแบบที่ไดเร็กทอรี่เก็บข้อมูลไม่สามารถเข้าถึงได้อีกต่อไป หรือคุณได้ย้ายไดเร็กทอรี่ที่ใช้เก็บข้อมูลไปอยู่ภายนอกตำแหน่ง root ของเว็บเซิร์ฟเวอร์แล้ว"
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "มาก"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "รุ่น"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ชุมชนผู้ใช้งาน ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">ซอร์สโค้ด</a>อยู่ภายใต้สัญญาอนุญาตของ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "เพิ่มแอปของคุณ"
@@ -180,116 +386,86 @@ msgstr "บริการลูกค้าแบบเสียค่าใช
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "คุณได้ใช้งานไปแล้ว <strong>%s</strong> จากจำนวนที่สามารถใช้ได้ <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "ลูกค้า"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับเครื่องเดสก์ท็อป"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับแอนดรอยด์"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับ iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "แสดงหน้าจอวิซาร์ดนำทางครั้งแรกอีกครั้ง"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "รหัสผ่าน"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "รหัสผ่านของคุณถูกเปลี่ยนแล้ว"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "ไม่สามารถเปลี่ยนรหัสผ่านของคุณได้"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "รหัสผ่านปัจจุบัน"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "รหัสผ่านใหม่"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "แสดง"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "เปลี่ยนรหัสผ่าน"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "ชื่อที่ต้องการแสดง"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "อีเมล์"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "ที่อยู่อีเมล์ของคุณ"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "กรอกที่อยู่อีเมล์ของคุณเพื่อเปิดให้มีการกู้คืนรหัสผ่านได้"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "ภาษา"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "ช่วยกันแปล"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "ใช้ที่อยู่นี้เพื่อเชื่อมต่อกับ ownCloud ในโปรแกรมจัดการไฟล์ของคุณ"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "รุ่น"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ชุมชนผู้ใช้งาน ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">ซอร์สโค้ด</a>อยู่ภายใต้สัญญาอนุญาตของ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "ชื่อที่ใช้สำหรับเข้าสู่ระบบ"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "กลุ่ม"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "สร้าง"
@@ -298,34 +474,26 @@ msgstr "สร้าง"
 msgid "Default Storage"
 msgstr "พื้นที่จำกัดข้อมูลเริ่มต้น"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "ไม่จำกัดจำนวน"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "อื่นๆ"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "ผู้ดูแลกลุ่ม"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "พื้นที่จัดเก็บข้อมูล"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "เปลี่ยนชื่อที่ต้องการให้แสดง"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "ตั้งค่ารหัสผ่านใหม่"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "ค่าเริ่มต้น"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "ลบ"
diff --git a/l10n/tr/core.po b/l10n/tr/core.po
index e6ef436731dced9e9668472236ce0fda7de5686a..85393a3132ccd361e988c92c0838eebf9da5a26e 100644
--- a/l10n/tr/core.po
+++ b/l10n/tr/core.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
@@ -161,59 +161,59 @@ msgstr "Kasım"
 msgid "December"
 msgstr "Aralık"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Ayarlar"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "saniye önce"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 dakika önce"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} dakika önce"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 saat önce"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} saat önce"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "bugün"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "dün"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} gün önce"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "geçen ay"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} ay önce"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "ay önce"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "geçen yıl"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "yıl önce"
 
@@ -243,8 +243,8 @@ msgid "The object type is not specified."
 msgstr "Nesne türü belirtilmemiş."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Hata"
 
@@ -256,15 +256,15 @@ msgstr "uygulama adı belirtilmedi."
 msgid "The required file {file} is not installed!"
 msgstr "İhtiyaç duyulan {file} dosyası kurulu değil."
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Paylaş"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Paylaş"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Paylaşım sırasında hata  "
 
@@ -360,23 +360,23 @@ msgstr "sil"
 msgid "share"
 msgstr "paylaş"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Paralo korumalı"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Geçerlilik tarihi tanımlama kaldırma hatası"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Geçerlilik tarihi tanımlama hatası"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Gönderiliyor..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Eposta gönderildi"
 
diff --git a/l10n/tr/files.po b/l10n/tr/files.po
index 611384113cf993d1e1cca2217c633032a4c7d2d0..9656ce6720408de62a3ef044758e1ed0f63e905c 100644
--- a/l10n/tr/files.po
+++ b/l10n/tr/files.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
@@ -84,15 +84,15 @@ msgstr "Geçersiz dizin."
 msgid "Files"
 msgstr "Dosyalar"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Sil"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "İsim değiştir."
 
@@ -198,31 +198,31 @@ msgstr "URL boş olamaz."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Geçersiz dizin adı. Shared isminin kullanımı Owncloud tarafından rezerver edilmiştir."
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Ad"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Boyut"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Değiştirilme"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 dizin"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} dizin"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 dosya"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} dosya"
 
@@ -279,7 +279,7 @@ msgid "From link"
 msgstr "Bağlantıdan"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/tr/files_trashbin.po b/l10n/tr/files_trashbin.po
index fff563d2bf960a513199a9043a0ea2f4ecf16c2a..bce1ba1a18c553d435afc3c919b4744a77920065 100644
--- a/l10n/tr/files_trashbin.po
+++ b/l10n/tr/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/tr/lib.po b/l10n/tr/lib.po
index 524e298ee144712c499b97d46342f25e10751f84..0694caefa4887767cd0b02f2601e1d017c8cffb1 100644
--- a/l10n/tr/lib.po
+++ b/l10n/tr/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "Metin"
 msgid "Images"
 msgstr "Resimler"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/tr/settings.po b/l10n/tr/settings.po
index 0b51576c5a32beb03cf938152ec80c160a73c011..6fc21c7bed50be72c4932d0dad6283c6c26ab8ac 100644
--- a/l10n/tr/settings.po
+++ b/l10n/tr/settings.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "App Store'dan liste yüklenemiyor"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Eşleşme hata"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -84,7 +84,7 @@ msgstr "Kullanıcı %s grubuna eklenemiyor"
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -124,10 +124,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "Kaydediliyor..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "silindi"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "geri al"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Gruplar"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Yönetici Grubu "
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Sil"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__dil_adı__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Güvenlik Uyarisi"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "data dizininiz ve dosyalarınız büyük ihtimalle internet üzerinden erişilebilir. Owncloud tarafından sağlanan .htaccess  dosyası çalışmıyor. Web sunucunuzu yapılandırarak data dizinine erişimi kapatmanızı veya data dizinini web sunucu döküman dizini dışına almanızı şiddetle tavsiye ederiz."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Daha fazla"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Sürüm"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Geliştirilen Taraf<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is altında lisanslanmıştır <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Uygulamanı Ekle"
@@ -181,116 +387,86 @@ msgstr "Ticari Destek"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Müşteriler"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Masaüstü İstemcilerini İndir"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Android İstemcisini İndir"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "iOS İstemcisini İndir"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Parola"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Şifreniz değiştirildi"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Parolanız değiştirilemiyor"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Mevcut parola"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Yeni parola"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "göster"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Parola değiştir"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Eposta"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Eposta adresiniz"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Parola sıfırlamayı aktifleştirmek için eposta adresi girin"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Dil"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Çevirilere yardım edin"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Sürüm"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Geliştirilen Taraf<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is altında lisanslanmıştır <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Gruplar"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Oluştur"
@@ -299,34 +475,26 @@ msgstr "Oluştur"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Diğer"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Yönetici Grubu "
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Sil"
diff --git a/l10n/uk/core.po b/l10n/uk/core.po
index 78e4e2d04ce9c79fcaccd666ce84e1a9a2e4eba6..3c922b2b2b564c9c8d43bddbf45c8c74f83166c2 100644
--- a/l10n/uk/core.po
+++ b/l10n/uk/core.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n"
 "MIME-Version: 1.0\n"
@@ -162,59 +162,59 @@ msgstr "Листопад"
 msgid "December"
 msgstr "Грудень"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "Налаштування"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "секунди тому"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 хвилину тому"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} хвилин тому"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 годину тому"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} години тому"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "сьогодні"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "вчора"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} днів тому"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "минулого місяця"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} місяців тому"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "місяці тому"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "минулого року"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "роки тому"
 
@@ -244,8 +244,8 @@ msgid "The object type is not specified."
 msgstr "Не визначено тип об'єкту."
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "Помилка"
 
@@ -257,15 +257,15 @@ msgstr "Не визначено ім'я програми."
 msgid "The required file {file} is not installed!"
 msgstr "Необхідний файл {file} не встановлено!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Поділитися"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Опубліковано"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "Поділитися"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Помилка під час публікації"
 
@@ -361,23 +361,23 @@ msgstr "видалити"
 msgid "share"
 msgstr "опублікувати"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "Захищено паролем"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "Помилка при відміні терміна дії"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "Помилка при встановленні терміна дії"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "Надсилання..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Ел. пошта надіслана"
 
diff --git a/l10n/uk/files.po b/l10n/uk/files.po
index fd21387526b0e8bab6113e33e5ba6d326be1c2f9..6eeb4c0aa47e7b44b98dbb19c418c8d7deda40c9 100644
--- a/l10n/uk/files.po
+++ b/l10n/uk/files.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n"
 "MIME-Version: 1.0\n"
@@ -82,15 +82,15 @@ msgstr "Невірний каталог."
 msgid "Files"
 msgstr "Файли"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Видалити назавжди"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Видалити"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Перейменувати"
 
@@ -196,31 +196,31 @@ msgstr "URL не може бути пустим."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Невірне ім'я теки. Використання \"Shared\" зарезервовано Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Ім'я"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Розмір"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Змінено"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 папка"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} папок"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 файл"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} файлів"
 
@@ -277,7 +277,7 @@ msgid "From link"
 msgstr "З посилання"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/uk/files_trashbin.po b/l10n/uk/files_trashbin.po
index b33723c870293ad0c40469f20928847c334c2d10..d2cbb893abc43f5156dfd29fea664540bb6dfecc 100644
--- a/l10n/uk/files_trashbin.po
+++ b/l10n/uk/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/uk/lib.po b/l10n/uk/lib.po
index 977f361120ddb0c844520594d84463ca7d414d98..6380af6fb3db111be39c3c1514cec5d54a32dcba 100644
--- a/l10n/uk/lib.po
+++ b/l10n/uk/lib.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:40+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n"
 "MIME-Version: 1.0\n"
@@ -89,13 +89,99 @@ msgstr "Текст"
 msgid "Images"
 msgstr "Зображення"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/uk/settings.po b/l10n/uk/settings.po
index 1646712c6977c6c93e64f13bba385fcffdacefb7..8023ecb8b181812595cffec98b09a0fdb432e43e 100644
--- a/l10n/uk/settings.po
+++ b/l10n/uk/settings.po
@@ -11,9 +11,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 15:20+0000\n"
-"Last-Translator: volodya327 <volodya327@gmail.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,12 +25,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Не вдалося завантажити список з App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Помилка автентифікації"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Не вдалося змінити зображене ім'я"
 
@@ -84,7 +84,7 @@ msgstr "Не вдалося додати користувача у групу %s
 msgid "Unable to remove user from group %s"
 msgstr "Не вдалося видалити користувача із групи %s"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "Не вдалося оновити програму. "
 
@@ -124,10 +124,216 @@ msgstr "Оновлено"
 msgid "Saving..."
 msgstr "Зберігаю..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "видалені"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "відмінити"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Групи"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Адміністратор групи"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Видалити"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__language_name__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Попередження про небезпеку"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Ваш каталог з даними та Ваші файли можливо доступні з Інтернету. Файл .htaccess, наданий з ownCloud, не працює. Ми наполегливо рекомендуємо Вам налаштувати свій веб-сервер таким чином, щоб каталог data більше не був доступний, або перемістити каталог data за межі кореневого каталогу документів веб-сервера."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "Більше"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Версія"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Розроблено <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud громадою</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">вихідний код</a> має ліцензію <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Додати свою програму"
@@ -181,116 +387,86 @@ msgstr "Комерційна підтримка"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Ви використали <strong>%s</strong> із доступних <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Клієнти"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Завантажити клієнт для ПК"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Завантажити клієнт для Android"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Завантажити клієнт для iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Пароль"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Ваш пароль змінено"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Не вдалося змінити Ваш пароль"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Поточний пароль"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Новий пароль"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "показати"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Змінити пароль"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Показати Ім'я"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Ваше ім'я було змінене"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Неможливо змінити ваше зображене ім'я"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Змінити зображене ім'я"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Ел.пошта"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Ваша адреса електронної пошти"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Введіть адресу електронної пошти для відновлення паролю"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Мова"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Допомогти з перекладом"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Використовуйте цю адресу для під'єднання до вашого ownCloud у вашому файловому менеджері"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Версія"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Розроблено <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud громадою</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">вихідний код</a> має ліцензію <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Ім'я Логіну"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Групи"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Створити"
@@ -299,34 +475,26 @@ msgstr "Створити"
 msgid "Default Storage"
 msgstr "сховище за замовчуванням"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Необмежено"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Інше"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Адміністратор групи"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Сховище"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "змінити зображене ім'я"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "встановити новий пароль"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "За замовчуванням"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Видалити"
diff --git a/l10n/vi/core.po b/l10n/vi/core.po
index 24cd51e054dc30775c5583c637dca1729d53f5e3..f7bf90b56f15c03b98b1e85159530e53c63bd89e 100644
--- a/l10n/vi/core.po
+++ b/l10n/vi/core.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 18:20+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: saosangm <saosangmo@yahoo.com>\n"
 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n"
 "MIME-Version: 1.0\n"
@@ -166,55 +166,55 @@ msgstr "Tháng 12"
 msgid "Settings"
 msgstr "Cài đặt"
 
-#: js/js.js:766
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "vài giây trước"
 
-#: js/js.js:767
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 phút trước"
 
-#: js/js.js:768
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} phút trước"
 
-#: js/js.js:769
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 giờ trước"
 
-#: js/js.js:770
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} giờ trước"
 
-#: js/js.js:771
+#: js/js.js:772
 msgid "today"
 msgstr "hôm nay"
 
-#: js/js.js:772
+#: js/js.js:773
 msgid "yesterday"
 msgstr "hôm qua"
 
-#: js/js.js:773
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} ngày trước"
 
-#: js/js.js:774
+#: js/js.js:775
 msgid "last month"
 msgstr "tháng trước"
 
-#: js/js.js:775
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} tháng trước"
 
-#: js/js.js:776
+#: js/js.js:777
 msgid "months ago"
 msgstr "tháng trước"
 
-#: js/js.js:777
+#: js/js.js:778
 msgid "last year"
 msgstr "năm trước"
 
-#: js/js.js:778
+#: js/js.js:779
 msgid "years ago"
 msgstr "năm trước"
 
@@ -257,14 +257,14 @@ msgstr "Tên ứng dụng không được chỉ định."
 msgid "The required file {file} is not installed!"
 msgstr "Tập tin cần thiết {file} không được cài đặt!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "Chia sẻ"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "Được chia sẻ"
 
+#: js/share.js:93
+msgid "Share"
+msgstr "Chia sẻ"
+
 #: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "Lỗi trong quá trình chia sẻ"
diff --git a/l10n/vi/files.po b/l10n/vi/files.po
index eeabcf3ec53e9bc6d1cf48ea57daf46f2cd83260..d7eaa300bd9f575688be45bab74b5a396938f168 100644
--- a/l10n/vi/files.po
+++ b/l10n/vi/files.po
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n"
 "MIME-Version: 1.0\n"
@@ -83,15 +83,15 @@ msgstr "Thư mục không hợp lệ"
 msgid "Files"
 msgstr "Tập tin"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr "Xóa vĩnh vễn"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "Xóa"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "Sửa tên"
 
@@ -197,31 +197,31 @@ msgstr "URL không được để trống."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "Tên"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "Kích cỡ"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "Thay đổi"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 thư mục"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} thư mục"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 tập tin"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} tập tin"
 
@@ -278,7 +278,7 @@ msgid "From link"
 msgstr "Từ liên kết"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/vi/files_trashbin.po b/l10n/vi/files_trashbin.po
index 9293b13b7dde6bda2ba2317e28a89921603cb5c4..c5b1c4de22b8ebb50529b3e8caf8f31b25269c6a 100644
--- a/l10n/vi/files_trashbin.po
+++ b/l10n/vi/files_trashbin.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 19:10+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: saosangm <saosangmo@yahoo.com>\n"
 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/vi/lib.po b/l10n/vi/lib.po
index 13cc3e0968308d0e3db9f9420c15be23c71aa1a9..c8185ef509236c6bfa2966d1439994f1c924f041 100644
--- a/l10n/vi/lib.po
+++ b/l10n/vi/lib.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n"
 "MIME-Version: 1.0\n"
@@ -89,13 +89,99 @@ msgstr "Văn bản"
 msgid "Images"
 msgstr "Hình ảnh"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/vi/settings.po b/l10n/vi/settings.po
index 4b2e2d498d71bdb23a28dc7103b3a10847c01ebd..49ceed9259db2d88ff39323d890c4cbd40b3d54e 100644
--- a/l10n/vi/settings.po
+++ b/l10n/vi/settings.po
@@ -14,9 +14,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 18:50+0000\n"
-"Last-Translator: saosangm <saosangmo@yahoo.com>\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
+"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,12 +28,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "Không thể tải danh sách ứng dụng từ App Store"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "Lỗi xác thực"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr "Không thể thay đổi tên hiển thị"
 
@@ -127,10 +127,216 @@ msgstr "Đã cập nhật"
 msgid "Saving..."
 msgstr "Đang tiến hành lưu ..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "đã xóa"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "lùi lại"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "Nhóm"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "Nhóm quản trị"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "Xóa"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__Ngôn ngữ___"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "Cảnh bảo bảo mật"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "Thư mục dữ liệu và những tập tin của bạn có thể dễ dàng bị truy cập từ mạng. Tập tin .htaccess do ownCloud cung cấp không hoạt động. Chúng tôi đề nghị bạn nên cấu hình lại máy chủ web để thư mục dữ liệu không còn bị truy cập hoặc bạn nên di chuyển thư mục dữ liệu ra bên ngoài thư mục gốc của máy chủ."
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "hơn"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "Phiên bản"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Thêm ứng dụng của bạn"
@@ -184,116 +390,86 @@ msgstr "Hỗ trợ có phí"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "Bạn đã sử dụng <strong>%s </ strong> có sẵn <strong> %s </ strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "Khách hàng"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "Download bộ cài trên desktop"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "Download bộ cài trên Android"
+msgid "Get the apps to sync your files"
+msgstr "Nhận ứng dụng để đồng bộ file của bạn"
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "Download bộ cài trên iOS"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "Hiện lại việc chạy đồ thuật khởi đầu"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "Mật khẩu"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "Mật khẩu của bạn đã được thay đổi."
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "Không thể đổi mật khẩu"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "Mật khẩu cũ"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "Mật khẩu mới "
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "Hiện"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "Đổi mật khẩu"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "Tên hiển thị"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr "Tên hiển thị của bạn đã được thay đổi"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr "Không thể thay đổi tên hiển thị của bạn"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr "Thay đổi tên hiển thị"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "Email của bạn"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "Nhập địa chỉ email của bạn để khôi phục lại mật khẩu"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "Ngôn ngữ"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "Hỗ trợ dịch thuật"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "Sử dụng địa chỉ này để kết nối ownCloud của bạn trong trình quản lý file của bạn"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "Phiên bản"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "Tên đăng nhập"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "Nhóm"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "Tạo"
@@ -302,34 +478,26 @@ msgstr "Tạo"
 msgid "Default Storage"
 msgstr "Bộ nhớ mặc định"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "Không giới hạn"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "Khác"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "Nhóm quản trị"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "Bộ nhớ"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "Thay đổi tên hiển thị"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "đặt mật khẩu mới"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "Mặc định"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "Xóa"
diff --git a/l10n/zh_CN.GB2312/core.po b/l10n/zh_CN.GB2312/core.po
index 1d9bf29559fc1b36ea80b1ae6dfbdda4faf17891..e8be26bcfea3d101b35c8c1010f85691c19b066b 100644
--- a/l10n/zh_CN.GB2312/core.po
+++ b/l10n/zh_CN.GB2312/core.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:31+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n"
 "MIME-Version: 1.0\n"
@@ -158,59 +158,59 @@ msgstr "十一月"
 msgid "December"
 msgstr "十二月"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "设置"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "秒前"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 分钟前"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} 分钟前"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr ""
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr ""
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "今天"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "昨天"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} 天前"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "上个月"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr ""
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "月前"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "去年"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "年前"
 
@@ -240,8 +240,8 @@ msgid "The object type is not specified."
 msgstr ""
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "错误"
 
@@ -253,15 +253,15 @@ msgstr ""
 msgid "The required file {file} is not installed!"
 msgstr ""
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "分享"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr ""
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "分享"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "分享出错"
 
@@ -357,23 +357,23 @@ msgstr "删除"
 msgid "share"
 msgstr "分享"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "密码保护"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "取消设置失效日期出错"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "设置失效日期出错"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr ""
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr ""
 
diff --git a/l10n/zh_CN.GB2312/files.po b/l10n/zh_CN.GB2312/files.po
index 009c2cf3629e493a27561f0e72c64026a9e5e847..a9b6ba1536fb8ee2b65ec8ca0c8e07257fb6fa6e 100644
--- a/l10n/zh_CN.GB2312/files.po
+++ b/l10n/zh_CN.GB2312/files.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n"
 "MIME-Version: 1.0\n"
@@ -80,15 +80,15 @@ msgstr ""
 msgid "Files"
 msgstr "文件"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "删除"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "重命名"
 
@@ -194,31 +194,31 @@ msgstr "网址不能为空。"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "名字"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "修改日期"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 个文件夹"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} 个文件夹"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 个文件"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} 个文件"
 
@@ -275,7 +275,7 @@ msgid "From link"
 msgstr "来自链接"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/zh_CN.GB2312/files_trashbin.po b/l10n/zh_CN.GB2312/files_trashbin.po
index cc9c96f2f0632a0be2217d6971eda043911a422f..4432759cfe377aba05e715b8b932463a577dd961 100644
--- a/l10n/zh_CN.GB2312/files_trashbin.po
+++ b/l10n/zh_CN.GB2312/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/zh_CN.GB2312/lib.po b/l10n/zh_CN.GB2312/lib.po
index 54a6583f57673a399ff92bd85310bd3597682eef..79d527ff6d7ce0cfb9eb1339adec399fdd838e7d 100644
--- a/l10n/zh_CN.GB2312/lib.po
+++ b/l10n/zh_CN.GB2312/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n"
 "MIME-Version: 1.0\n"
@@ -86,13 +86,99 @@ msgstr "文本"
 msgid "Images"
 msgstr "图片"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/zh_CN.GB2312/settings.po b/l10n/zh_CN.GB2312/settings.po
index 3335b000123b4bbbafc2caabeaab1221ee2af0c6..b2a1a746277d46b8cf0c92c96755ce2afacae2bc 100644
--- a/l10n/zh_CN.GB2312/settings.po
+++ b/l10n/zh_CN.GB2312/settings.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n"
 "MIME-Version: 1.0\n"
@@ -23,12 +23,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "不能从App Store 中加载列表"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "认证错误"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -82,7 +82,7 @@ msgstr "未能添加用户到群组 %s"
 msgid "Unable to remove user from group %s"
 msgstr "未能将用户从群组 %s 移除"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -122,10 +122,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "保存中..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "删除"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "撤销"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "组"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "群组管理员"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "删除"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "Chinese"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "安全警告"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "您的数据文件夹和您的文件或许能够从互联网访问。ownCloud 提供的 .htaccesss 文件未其作用。我们强烈建议您配置网络服务器以使数据文件夹不能从互联网访问,或将移动数据文件夹移出网络服务器文档根目录。"
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "更多"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "由 <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社区</a>开发,<a href=\"https://github.com/owncloud\" target=\"_blank\">s源代码</a> 以 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> 许可协议发布。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "添加你的应用程序"
@@ -179,116 +385,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "客户"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "密码"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "您的密码以变更"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "不能改变你的密码"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "现在的密码"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "新密码"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "展示"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "改变密码"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "Email"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "你的email地址"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "输入一个邮箱地址以激活密码恢复功能"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "语言"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "帮助翻译"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "由 <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社区</a>开发,<a href=\"https://github.com/owncloud\" target=\"_blank\">s源代码</a> 以 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> 许可协议发布。"
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "组"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "新建"
@@ -297,34 +473,26 @@ msgstr "新建"
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "其他的"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "群组管理员"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "删除"
diff --git a/l10n/zh_CN/core.po b/l10n/zh_CN/core.po
index be5884a27777e80c7c43a8c14ac4d96c56c8d31f..1ea389e0f222591f91b03f53b8f30cc51dcc1e22 100644
--- a/l10n/zh_CN/core.po
+++ b/l10n/zh_CN/core.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
@@ -162,59 +162,59 @@ msgstr "十一月"
 msgid "December"
 msgstr "十二月"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "设置"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "秒前"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "一分钟前"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} 分钟前"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1小时前"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} 小时前"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "今天"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "昨天"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} 天前"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "上月"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} 月前"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "月前"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "去年"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "年前"
 
@@ -244,8 +244,8 @@ msgid "The object type is not specified."
 msgstr "未指定对象类型。"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "错误"
 
@@ -257,15 +257,15 @@ msgstr "未指定App名称。"
 msgid "The required file {file} is not installed!"
 msgstr "所需文件{file}未安装!"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "共享"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "已共享"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "共享"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "共享时出错"
 
@@ -361,23 +361,23 @@ msgstr "删除"
 msgid "share"
 msgstr "共享"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "密码已受保护"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "取消设置过期日期时出错"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "设置过期日期时出错"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "正在发送..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "邮件已发送"
 
diff --git a/l10n/zh_CN/files.po b/l10n/zh_CN/files.po
index adec54ddf3d85e3a0067a8c84edc456bd6a2ff4d..76347b180a28a339945f8f0295b7c9391cbcc277 100644
--- a/l10n/zh_CN/files.po
+++ b/l10n/zh_CN/files.po
@@ -14,8 +14,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
@@ -85,15 +85,15 @@ msgstr "无效文件夹。"
 msgid "Files"
 msgstr "文件"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "删除"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "重命名"
 
@@ -199,31 +199,31 @@ msgstr "URL不能为空"
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "无效文件夹名。'共享' 是 Owncloud 预留的文件夹名。"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "名称"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "修改日期"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1个文件夹"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} 个文件夹"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 个文件"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} 个文件"
 
@@ -280,7 +280,7 @@ msgid "From link"
 msgstr "来自链接"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/zh_CN/files_trashbin.po b/l10n/zh_CN/files_trashbin.po
index 2d95abe67ee0cd430da550467ff7f68375184b32..74ce3be6ba6d4c2058f959aa70b2bbdbe3c1ffc6 100644
--- a/l10n/zh_CN/files_trashbin.po
+++ b/l10n/zh_CN/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/zh_CN/lib.po b/l10n/zh_CN/lib.po
index fb9d07ad2c3b190c5155c13577b78929288ff9b6..a1f1c4684229c21f4b46bb85d0f120d4bf02e1f1 100644
--- a/l10n/zh_CN/lib.po
+++ b/l10n/zh_CN/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
@@ -87,13 +87,99 @@ msgstr "文本"
 msgid "Images"
 msgstr "图像"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/zh_CN/settings.po b/l10n/zh_CN/settings.po
index 51c13db8795c6a14d8bb3083526d8bfb55ec621b..aeb9677b6716209b8bf1cf52b2e410eb9c790625 100644
--- a/l10n/zh_CN/settings.po
+++ b/l10n/zh_CN/settings.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
@@ -27,12 +27,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "无法从应用商店载入列表"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "认证错误"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -86,7 +86,7 @@ msgstr "无法把用户添加到组 %s"
 msgid "Unable to remove user from group %s"
 msgstr "无法从组%s中移除用户"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -126,10 +126,216 @@ msgstr ""
 msgid "Saving..."
 msgstr "正在保存"
 
+#: js/users.js:30
+msgid "deleted"
+msgstr "已经删除"
+
+#: js/users.js:30
+msgid "undo"
+msgstr "撤销"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "组"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "组管理员"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "删除"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "简体中文"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "安全警告"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "您的数据文件夹和文件可由互联网访问。OwnCloud提供的.htaccess文件未生效。我们强烈建议您配置服务器,以使数据文件夹不可被访问,或者将数据文件夹移到web服务器根目录以外。"
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "更多"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "版本"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud社区</a>开发,  <a href=\"https://github.com/owncloud\" target=\"_blank\">源代码</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>许可证下发布。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "添加应用"
@@ -183,116 +389,86 @@ msgstr "商业支持"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "你已使用 <strong>%s</strong>,有效空间 <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "客户"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "下载桌面客户端"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "下载 Android 客户端"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "下载 iOS 客户端"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "密码"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "密码已修改"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "无法修改密码"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "当前密码"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "新密码"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "显示"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "修改密码"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "电子邮件"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "您的电子邮件"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "填写电子邮件地址以启用密码恢复功能"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "语言"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "帮助翻译"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "用该地址来连接文件管理器中的 ownCloud"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "版本"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud社区</a>开发,  <a href=\"https://github.com/owncloud\" target=\"_blank\">源代码</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>许可证下发布。"
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "组"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "创建"
@@ -301,34 +477,26 @@ msgstr "创建"
 msgid "Default Storage"
 msgstr "默认存储"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "无限"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "其它"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "组管理员"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "存储"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "默认"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "删除"
diff --git a/l10n/zh_HK/files.po b/l10n/zh_HK/files.po
index 215528e3273c4cf66dc415abb5787e674e161ffe..81c2adf9f00ce93c4f6ca90db122e57fa7396483 100644
--- a/l10n/zh_HK/files.po
+++ b/l10n/zh_HK/files.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n"
 "MIME-Version: 1.0\n"
@@ -78,15 +78,15 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
 msgstr ""
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr ""
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr ""
 
@@ -192,31 +192,31 @@ msgstr ""
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr ""
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr ""
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr ""
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr ""
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr ""
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr ""
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr ""
 
@@ -273,7 +273,7 @@ msgid "From link"
 msgstr ""
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/zh_HK/lib.po b/l10n/zh_HK/lib.po
index f59d6a5279a3836bd7179d2be4b3cb0823b97f45..9962c216301cb632b77a2bc333c88eced264231b 100644
--- a/l10n/zh_HK/lib.po
+++ b/l10n/zh_HK/lib.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-11 15:39+0100\n"
+"PO-Revision-Date: 2013-02-11 14:41+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n"
 "MIME-Version: 1.0\n"
@@ -85,13 +85,99 @@ msgstr ""
 msgid "Images"
 msgstr ""
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
 msgstr ""
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
 msgstr ""
diff --git a/l10n/zh_HK/settings.po b/l10n/zh_HK/settings.po
index e9501109c5af6fd6e266389f9e746b8ab071ea32..b5a84c03753be669bf327bfe8253187bb3778750 100644
--- a/l10n/zh_HK/settings.po
+++ b/l10n/zh_HK/settings.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr ""
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
 msgstr ""
 
@@ -80,7 +80,7 @@ msgstr ""
 msgid "Unable to remove user from group %s"
 msgstr ""
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr ""
 
@@ -120,10 +120,216 @@ msgstr ""
 msgid "Saving..."
 msgstr ""
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr ""
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr ""
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr ""
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr ""
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr ""
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr ""
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr ""
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr ""
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr ""
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr ""
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -177,116 +383,86 @@ msgstr ""
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr ""
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr ""
-
 #: templates/personal.php:14
-msgid "Download Android Client"
+msgid "Get the apps to sync your files"
 msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
 msgstr ""
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr ""
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr ""
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr ""
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr ""
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr ""
 
-#: templates/personal.php:28
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr ""
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr ""
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
 msgstr ""
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
 msgstr ""
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
 msgstr ""
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr ""
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr ""
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr ""
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr ""
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr ""
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr ""
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr ""
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr ""
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr ""
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr ""
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr ""
-
 #: templates/users.php:32
 msgid "Create"
 msgstr ""
@@ -295,34 +471,26 @@ msgstr ""
 msgid "Default Storage"
 msgstr ""
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr ""
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr ""
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr ""
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr ""
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr ""
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr ""
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr ""
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr ""
diff --git a/l10n/zh_TW/core.po b/l10n/zh_TW/core.po
index e060611cd6ad30b778120f607f06aa1400e1aa43..6aa6cc3d4c2af90cb82d748a6c90aa5bf26c877a 100644
--- a/l10n/zh_TW/core.po
+++ b/l10n/zh_TW/core.po
@@ -12,9 +12,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-09 00:12+0100\n"
-"PO-Revision-Date: 2013-02-08 23:12+0000\n"
-"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:32+0000\n"
+"Last-Translator: pellaeon <nfsmwlin@gmail.com>\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -57,7 +57,7 @@ msgstr "沒有可增加的分類?"
 #: ajax/vcategories/add.php:37
 #, php-format
 msgid "This category already exists: %s"
-msgstr ""
+msgstr "分類已經存在: %s"
 
 #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27
 #: ajax/vcategories/favorites.php:24
@@ -161,59 +161,59 @@ msgstr "十一月"
 msgid "December"
 msgstr "十二月"
 
-#: js/js.js:284
+#: js/js.js:286
 msgid "Settings"
 msgstr "設定"
 
-#: js/js.js:764
+#: js/js.js:767
 msgid "seconds ago"
 msgstr "幾秒前"
 
-#: js/js.js:765
+#: js/js.js:768
 msgid "1 minute ago"
 msgstr "1 分鐘前"
 
-#: js/js.js:766
+#: js/js.js:769
 msgid "{minutes} minutes ago"
 msgstr "{minutes} 分鐘前"
 
-#: js/js.js:767
+#: js/js.js:770
 msgid "1 hour ago"
 msgstr "1 個小時前"
 
-#: js/js.js:768
+#: js/js.js:771
 msgid "{hours} hours ago"
 msgstr "{hours} 小時前"
 
-#: js/js.js:769
+#: js/js.js:772
 msgid "today"
 msgstr "今天"
 
-#: js/js.js:770
+#: js/js.js:773
 msgid "yesterday"
 msgstr "昨天"
 
-#: js/js.js:771
+#: js/js.js:774
 msgid "{days} days ago"
 msgstr "{days} 天前"
 
-#: js/js.js:772
+#: js/js.js:775
 msgid "last month"
 msgstr "上個月"
 
-#: js/js.js:773
+#: js/js.js:776
 msgid "{months} months ago"
 msgstr "{months} 個月前"
 
-#: js/js.js:774
+#: js/js.js:777
 msgid "months ago"
 msgstr "幾個月前"
 
-#: js/js.js:775
+#: js/js.js:778
 msgid "last year"
 msgstr "去年"
 
-#: js/js.js:776
+#: js/js.js:779
 msgid "years ago"
 msgstr "幾年前"
 
@@ -243,8 +243,8 @@ msgid "The object type is not specified."
 msgstr "未指定物件類型。"
 
 #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136
-#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571
-#: js/share.js:583
+#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:582
+#: js/share.js:594
 msgid "Error"
 msgstr "錯誤"
 
@@ -256,15 +256,15 @@ msgstr "沒有指定 app 名稱。"
 msgid "The required file {file} is not installed!"
 msgstr "沒有安裝所需的檔案 {file} !"
 
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
-msgid "Share"
-msgstr "分享"
-
-#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93
+#: js/share.js:29 js/share.js:43 js/share.js:90
 msgid "Shared"
 msgstr "已分享"
 
-#: js/share.js:141 js/share.js:611
+#: js/share.js:93
+msgid "Share"
+msgstr "分享"
+
+#: js/share.js:141 js/share.js:622
 msgid "Error while sharing"
 msgstr "分享時發生錯誤"
 
@@ -360,23 +360,23 @@ msgstr "刪除"
 msgid "share"
 msgstr "分享"
 
-#: js/share.js:373 js/share.js:558
+#: js/share.js:373 js/share.js:569
 msgid "Password protected"
 msgstr "受密碼保護"
 
-#: js/share.js:571
+#: js/share.js:582
 msgid "Error unsetting expiration date"
 msgstr "解除過期日設定失敗"
 
-#: js/share.js:583
+#: js/share.js:594
 msgid "Error setting expiration date"
 msgstr "錯誤的到期日設定"
 
-#: js/share.js:598
+#: js/share.js:609
 msgid "Sending ..."
 msgstr "正在寄出..."
 
-#: js/share.js:609
+#: js/share.js:620
 msgid "Email sent"
 msgstr "Email 已寄出"
 
@@ -492,14 +492,14 @@ msgstr "若沒有安全的亂數產生器,攻擊者可能可以預測密碼重
 msgid ""
 "Your data directory and files are probably accessible from the internet "
 "because the .htaccess file does not work."
-msgstr ""
+msgstr "您的資料目錄看起來可以被 Internet 公開存取,因為 .htaccess 設定並未生效。"
 
 #: templates/installation.php:32
 msgid ""
 "For information how to properly configure your server, please see the <a "
 "href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" "
 "target=\"_blank\">documentation</a>."
-msgstr ""
+msgstr "請參考<a href=\"http://doc.owncloud.org/server/5.0/admin_manual/installation.html\" target=\"_blank\">說明文件</a>以瞭解如何正確設定您的伺服器。"
 
 #: templates/installation.php:36
 msgid "Create an <strong>admin account</strong>"
@@ -582,7 +582,7 @@ msgstr "登入"
 
 #: templates/login.php:49
 msgid "Alternative Logins"
-msgstr ""
+msgstr "替代登入方法"
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
diff --git a/l10n/zh_TW/files.po b/l10n/zh_TW/files.po
index 230cb568282be41f501a041822ba16c7b694168d..4532870022c62257ee61af217835b3989e024e8f 100644
--- a/l10n/zh_TW/files.po
+++ b/l10n/zh_TW/files.po
@@ -13,8 +13,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-15 00:04+0100\n"
+"PO-Revision-Date: 2013-02-14 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
@@ -74,7 +74,7 @@ msgstr "寫入硬碟失敗"
 
 #: ajax/upload.php:52
 msgid "Not enough storage available"
-msgstr ""
+msgstr "儲存空間不足"
 
 #: ajax/upload.php:83
 msgid "Invalid directory."
@@ -84,15 +84,15 @@ msgstr "無效的資料夾。"
 msgid "Files"
 msgstr "檔案"
 
-#: js/fileactions.js:116
+#: js/fileactions.js:125
 msgid "Delete permanently"
-msgstr ""
+msgstr "永久刪除"
 
-#: js/fileactions.js:118 templates/index.php:91 templates/index.php:92
+#: js/fileactions.js:127 templates/index.php:91 templates/index.php:92
 msgid "Delete"
 msgstr "刪除"
 
-#: js/fileactions.js:184
+#: js/fileactions.js:193
 msgid "Rename"
 msgstr "重新命名"
 
@@ -198,31 +198,31 @@ msgstr "URL 不能為空白."
 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud"
 msgstr "無效的資料夾名稱,'Shared' 的使用被 Owncloud 保留"
 
-#: js/files.js:947 templates/index.php:67
+#: js/files.js:948 templates/index.php:67
 msgid "Name"
 msgstr "名稱"
 
-#: js/files.js:948 templates/index.php:78
+#: js/files.js:949 templates/index.php:78
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:949 templates/index.php:80
+#: js/files.js:950 templates/index.php:80
 msgid "Modified"
 msgstr "修改"
 
-#: js/files.js:968
+#: js/files.js:969
 msgid "1 folder"
 msgstr "1 個資料夾"
 
-#: js/files.js:970
+#: js/files.js:971
 msgid "{count} folders"
 msgstr "{count} 個資料夾"
 
-#: js/files.js:978
+#: js/files.js:979
 msgid "1 file"
 msgstr "1 個檔案"
 
-#: js/files.js:980
+#: js/files.js:981
 msgid "{count} files"
 msgstr "{count} 個檔案"
 
@@ -279,7 +279,7 @@ msgid "From link"
 msgstr "從連結"
 
 #: templates/index.php:40
-msgid "Trash bin"
+msgid "Deleted files"
 msgstr ""
 
 #: templates/index.php:46
diff --git a/l10n/zh_TW/files_trashbin.po b/l10n/zh_TW/files_trashbin.po
index ffbd5fd24eaa9c4d9dbe9353e75617989dafa416..ae0e1da91d89ec89afb942f3289a1eeadaaaacd0 100644
--- a/l10n/zh_TW/files_trashbin.po
+++ b/l10n/zh_TW/files_trashbin.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-08 00:10+0100\n"
-"PO-Revision-Date: 2013-02-07 23:11+0000\n"
+"POT-Creation-Date: 2013-02-12 15:10+0100\n"
+"PO-Revision-Date: 2013-02-12 10:07+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
diff --git a/l10n/zh_TW/lib.po b/l10n/zh_TW/lib.po
index 97f9bbed32fb437404225cb990c8ff3a534f3977..bee087a4a7021694dd3c78b615aea28ee1b8fc05 100644
--- a/l10n/zh_TW/lib.po
+++ b/l10n/zh_TW/lib.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-10 00:08+0100\n"
-"PO-Revision-Date: 2013-02-09 23:08+0000\n"
+"POT-Creation-Date: 2013-02-13 00:03+0100\n"
+"PO-Revision-Date: 2013-02-12 14:33+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
@@ -89,16 +89,102 @@ msgstr "文字"
 msgid "Images"
 msgstr "圖片"
 
-#: setup.php:624
+#: setup.php:34
+msgid "Set an admin username."
+msgstr ""
+
+#: setup.php:37
+msgid "Set an admin password."
+msgstr ""
+
+#: setup.php:40
+msgid "Specify a data folder."
+msgstr ""
+
+#: setup.php:53
+#, php-format
+msgid "%s enter the database username."
+msgstr ""
+
+#: setup.php:56
+#, php-format
+msgid "%s enter the database name."
+msgstr ""
+
+#: setup.php:59
+#, php-format
+msgid "%s you may not use dots in the database name"
+msgstr ""
+
+#: setup.php:62
+#, php-format
+msgid "%s set the database host."
+msgstr ""
+
+#: setup.php:126 setup.php:291 setup.php:336
+msgid "PostgreSQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:127 setup.php:150 setup.php:204
+msgid "You need to enter either an existing account or the administrator."
+msgstr ""
+
+#: setup.php:149 setup.php:423 setup.php:489
+msgid "Oracle username and/or password not valid"
+msgstr ""
+
+#: setup.php:203
+msgid "MySQL username and/or password not valid"
+msgstr ""
+
+#: setup.php:255 setup.php:357 setup.php:366 setup.php:384 setup.php:394
+#: setup.php:403 setup.php:430 setup.php:496 setup.php:522 setup.php:529
+#: setup.php:540 setup.php:547 setup.php:556 setup.php:564 setup.php:573
+#: setup.php:579
+#, php-format
+msgid "DB Error: \"%s\""
+msgstr ""
+
+#: setup.php:256 setup.php:358 setup.php:367 setup.php:385 setup.php:395
+#: setup.php:404 setup.php:431 setup.php:497 setup.php:523 setup.php:530
+#: setup.php:541 setup.php:557 setup.php:565 setup.php:574
+#, php-format
+msgid "Offending command was: \"%s\""
+msgstr ""
+
+#: setup.php:270
+#, php-format
+msgid "MySQL user '%s'@'localhost' exists already."
+msgstr ""
+
+#: setup.php:271
+msgid "Drop this user from MySQL"
+msgstr ""
+
+#: setup.php:276
+#, php-format
+msgid "MySQL user '%s'@'%%' already exists"
+msgstr ""
+
+#: setup.php:277
+msgid "Drop this user from MySQL."
+msgstr ""
+
+#: setup.php:548 setup.php:580
+#, php-format
+msgid "Offending command was: \"%s\", name: %s, password: %s"
+msgstr ""
+
+#: setup.php:644
 msgid ""
 "Your web server is not yet properly setup to allow files synchronization "
 "because the WebDAV interface seems to be broken."
-msgstr ""
+msgstr "您的網頁伺服器尚未被正確設定來進行檔案同步,因為您的 WebDAV 界面似乎無法使用。"
 
-#: setup.php:625
+#: setup.php:645
 #, php-format
 msgid "Please double check the <a href='%s'>installation guides</a>."
-msgstr ""
+msgstr "請參考<a href='%s'>安裝指南</a>。"
 
 #: template.php:113
 msgid "seconds ago"
diff --git a/l10n/zh_TW/settings.po b/l10n/zh_TW/settings.po
index b1edf5e53938f333ecc32278693ccfd1657e6cdf..2962f45fcb86bacf0bf8c00b509c1a0a679ad453 100644
--- a/l10n/zh_TW/settings.po
+++ b/l10n/zh_TW/settings.po
@@ -15,8 +15,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2013-02-07 00:07+0100\n"
-"PO-Revision-Date: 2013-02-06 23:08+0000\n"
+"POT-Creation-Date: 2013-02-14 00:05+0100\n"
+"PO-Revision-Date: 2013-02-13 23:05+0000\n"
 "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
@@ -29,14 +29,14 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr "無法從 App Store 讀取清單"
 
-#: ajax/changedisplayname.php:19 ajax/removeuser.php:15 ajax/setquota.php:15
+#: ajax/changedisplayname.php:23 ajax/removeuser.php:15 ajax/setquota.php:15
 #: ajax/togglegroups.php:18
 msgid "Authentication error"
 msgstr "認證錯誤"
 
-#: ajax/changedisplayname.php:28
+#: ajax/changedisplayname.php:32
 msgid "Unable to change display name"
-msgstr ""
+msgstr "無法更改顯示名稱"
 
 #: ajax/creategroup.php:10
 msgid "Group already exists"
@@ -88,7 +88,7 @@ msgstr "使用者加入群組%s錯誤"
 msgid "Unable to remove user from group %s"
 msgstr "使用者移出群組%s錯誤"
 
-#: ajax/updateapp.php:13
+#: ajax/updateapp.php:14
 msgid "Couldn't update app."
 msgstr "無法更新應用程式"
 
@@ -128,10 +128,216 @@ msgstr "已更新"
 msgid "Saving..."
 msgstr "儲存中..."
 
+#: js/users.js:30
+msgid "deleted"
+msgstr ""
+
+#: js/users.js:30
+msgid "undo"
+msgstr "復原"
+
+#: js/users.js:62
+msgid "Unable to remove user"
+msgstr ""
+
+#: js/users.js:75 templates/users.php:26 templates/users.php:80
+#: templates/users.php:105
+msgid "Groups"
+msgstr "群組"
+
+#: js/users.js:78 templates/users.php:82 templates/users.php:119
+msgid "Group Admin"
+msgstr "群組 管理員"
+
+#: js/users.js:99 templates/users.php:161
+msgid "Delete"
+msgstr "刪除"
+
+#: js/users.js:190
+msgid "add group"
+msgstr ""
+
+#: js/users.js:351
+msgid "A valid username must be provided"
+msgstr ""
+
+#: js/users.js:352 js/users.js:358 js/users.js:373
+msgid "Error creating user"
+msgstr ""
+
+#: js/users.js:357
+msgid "A valid password must be provided"
+msgstr ""
+
 #: personal.php:34 personal.php:35
 msgid "__language_name__"
 msgstr "__語言_名稱__"
 
+#: templates/admin.php:15
+msgid "Security Warning"
+msgstr "安全性警告"
+
+#: templates/admin.php:18
+msgid ""
+"Your data directory and your files are probably accessible from the "
+"internet. The .htaccess file that ownCloud provides is not working. We "
+"strongly suggest that you configure your webserver in a way that the data "
+"directory is no longer accessible or you move the data directory outside the"
+" webserver document root."
+msgstr "您的資料目錄 (Data Directory) 和檔案可能可以由網際網路上面公開存取。Owncloud 所提供的 .htaccess 設定檔並未生效,我們強烈建議您設定您的網頁伺服器以防止資料目錄被公開存取,或將您的資料目錄移出網頁伺服器的 document root 。"
+
+#: templates/admin.php:29
+msgid "Setup Warning"
+msgstr ""
+
+#: templates/admin.php:32
+msgid ""
+"Your web server is not yet properly setup to allow files synchronization "
+"because the WebDAV interface seems to be broken."
+msgstr "您的網頁伺服器尚未被正確設定來進行檔案同步,因為您的 WebDAV 界面似乎無法使用。"
+
+#: templates/admin.php:33
+#, php-format
+msgid "Please double check the <a href='%s'>installation guides</a>."
+msgstr "請參考<a href='%s'>安裝指南</a>。"
+
+#: templates/admin.php:44
+msgid "Module 'fileinfo' missing"
+msgstr ""
+
+#: templates/admin.php:47
+msgid ""
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this "
+"module to get best results with mime-type detection."
+msgstr ""
+
+#: templates/admin.php:58
+msgid "Locale not working"
+msgstr ""
+
+#: templates/admin.php:61
+msgid ""
+"This ownCloud server can't set system locale to "
+"\"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with"
+" certain characters in file names. We strongly suggest to install the "
+"required packages on your system to support en_US.UTF-8/en_US.UTF8."
+msgstr ""
+
+#: templates/admin.php:72
+msgid "Internet connection not working"
+msgstr ""
+
+#: templates/admin.php:75
+msgid ""
+"This ownCloud server has no working internet connection. This means that "
+"some of the features like mounting of external storage, notifications about "
+"updates or installation of 3rd party apps don´t work. Accessing files from "
+"remote and sending of notification emails might also not work. We suggest to"
+" enable internet connection for this server if you want to have all features"
+" of ownCloud."
+msgstr ""
+
+#: templates/admin.php:89
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:98
+msgid "Execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:108
+msgid ""
+"cron.php is registered at a webcron service. Call the cron.php page in the "
+"owncloud root once a minute over http."
+msgstr ""
+
+#: templates/admin.php:118
+msgid ""
+"Use systems cron service. Call the cron.php file in the owncloud folder via "
+"a system cronjob once a minute."
+msgstr ""
+
+#: templates/admin.php:125
+msgid "Sharing"
+msgstr ""
+
+#: templates/admin.php:131
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:132
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:139
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:140
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:147
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:148
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:155
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:158
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:165
+msgid "Security"
+msgstr ""
+
+#: templates/admin.php:178
+msgid "Enforce HTTPS"
+msgstr ""
+
+#: templates/admin.php:179
+msgid ""
+"Enforces the clients to connect to ownCloud via an encrypted connection."
+msgstr ""
+
+#: templates/admin.php:182
+msgid ""
+"Please connect to this ownCloud instance via HTTPS to enable or disable the "
+"SSL enforcement."
+msgstr ""
+
+#: templates/admin.php:192
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:193
+msgid "Log level"
+msgstr ""
+
+#: templates/admin.php:220
+msgid "More"
+msgstr "更多"
+
+#: templates/admin.php:227 templates/personal.php:98
+msgid "Version"
+msgstr "版本"
+
+#: templates/admin.php:230 templates/personal.php:100
+msgid ""
+"Developed by the <a href=\"http://ownCloud.org/contact\" "
+"target=\"_blank\">ownCloud community</a>, the <a "
+"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
+"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
+"target=\"_blank\"><abbr title=\"Affero General Public "
+"License\">AGPL</abbr></a>."
+msgstr "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社區</a>開發,<a href=\"https://github.com/owncloud\" target=\"_blank\">源代碼</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>許可證下發布。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "添加你的 App"
@@ -185,116 +391,86 @@ msgstr "商用支援"
 msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>"
 msgstr "您已經使用了 <strong>%s</strong> ,目前可用空間為 <strong>%s</strong>"
 
-#: templates/personal.php:12
-msgid "Clients"
-msgstr "客戶"
-
-#: templates/personal.php:13
-msgid "Download Desktop Clients"
-msgstr "下載桌面客戶端"
-
 #: templates/personal.php:14
-msgid "Download Android Client"
-msgstr "下載 Android 客戶端"
+msgid "Get the apps to sync your files"
+msgstr ""
 
-#: templates/personal.php:15
-msgid "Download iOS Client"
-msgstr "下載 iOS 客戶端"
+#: templates/personal.php:25
+msgid "Show First Run Wizard again"
+msgstr "再次顯示首次使用精靈"
 
-#: templates/personal.php:23 templates/users.php:23 templates/users.php:81
+#: templates/personal.php:36 templates/users.php:23 templates/users.php:79
 msgid "Password"
 msgstr "密碼"
 
-#: templates/personal.php:24
+#: templates/personal.php:37
 msgid "Your password was changed"
 msgstr "你的密碼已更改"
 
-#: templates/personal.php:25
+#: templates/personal.php:38
 msgid "Unable to change your password"
 msgstr "無法變更你的密碼"
 
-#: templates/personal.php:26
+#: templates/personal.php:39
 msgid "Current password"
 msgstr "目前密碼"
 
-#: templates/personal.php:27
+#: templates/personal.php:40
 msgid "New password"
 msgstr "新密碼"
 
-#: templates/personal.php:28
-msgid "show"
-msgstr "顯示"
-
-#: templates/personal.php:29
+#: templates/personal.php:42
 msgid "Change password"
 msgstr "變更密碼"
 
-#: templates/personal.php:41 templates/users.php:80
+#: templates/personal.php:54 templates/users.php:78
 msgid "Display Name"
 msgstr "顯示名稱"
 
-#: templates/personal.php:42
+#: templates/personal.php:55
 msgid "Your display name was changed"
-msgstr ""
+msgstr "已更改顯示名稱"
 
-#: templates/personal.php:43
+#: templates/personal.php:56
 msgid "Unable to change your display name"
-msgstr ""
+msgstr "無法更改您的顯示名稱"
 
-#: templates/personal.php:46
+#: templates/personal.php:59
 msgid "Change display name"
-msgstr ""
+msgstr "更改顯示名稱"
 
-#: templates/personal.php:55
+#: templates/personal.php:68
 msgid "Email"
 msgstr "電子郵件"
 
-#: templates/personal.php:56
+#: templates/personal.php:69
 msgid "Your email address"
 msgstr "你的電子郵件信箱"
 
-#: templates/personal.php:57
+#: templates/personal.php:70
 msgid "Fill in an email address to enable password recovery"
 msgstr "請填入電子郵件信箱以便回復密碼"
 
-#: templates/personal.php:63 templates/personal.php:64
+#: templates/personal.php:76 templates/personal.php:77
 msgid "Language"
 msgstr "語言"
 
-#: templates/personal.php:69
+#: templates/personal.php:82
 msgid "Help translate"
 msgstr "幫助翻譯"
 
-#: templates/personal.php:74
+#: templates/personal.php:87
 msgid "WebDAV"
 msgstr "WebDAV"
 
-#: templates/personal.php:76
+#: templates/personal.php:89
 msgid "Use this address to connect to your ownCloud in your file manager"
 msgstr "在您的檔案管理員中使用這個地址來連線到 ownCloud"
 
-#: templates/personal.php:85
-msgid "Version"
-msgstr "版本"
-
-#: templates/personal.php:87
-msgid ""
-"Developed by the <a href=\"http://ownCloud.org/contact\" "
-"target=\"_blank\">ownCloud community</a>, the <a "
-"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is "
-"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" "
-"target=\"_blank\"><abbr title=\"Affero General Public "
-"License\">AGPL</abbr></a>."
-msgstr "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社區</a>開發,<a href=\"https://github.com/owncloud\" target=\"_blank\">源代碼</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>許可證下發布。"
-
-#: templates/users.php:21 templates/users.php:79
+#: templates/users.php:21 templates/users.php:77
 msgid "Login Name"
 msgstr "登入名稱"
 
-#: templates/users.php:26 templates/users.php:82 templates/users.php:107
-msgid "Groups"
-msgstr "群組"
-
 #: templates/users.php:32
 msgid "Create"
 msgstr "創造"
@@ -303,34 +479,26 @@ msgstr "創造"
 msgid "Default Storage"
 msgstr "預設儲存區"
 
-#: templates/users.php:42 templates/users.php:142
+#: templates/users.php:41 templates/users.php:139
 msgid "Unlimited"
 msgstr "無限制"
 
-#: templates/users.php:60 templates/users.php:157
+#: templates/users.php:59 templates/users.php:154
 msgid "Other"
 msgstr "其他"
 
-#: templates/users.php:84 templates/users.php:121
-msgid "Group Admin"
-msgstr "群組 管理員"
-
-#: templates/users.php:86
+#: templates/users.php:84
 msgid "Storage"
 msgstr "儲存區"
 
-#: templates/users.php:97
+#: templates/users.php:95
 msgid "change display name"
 msgstr "修改顯示名稱"
 
-#: templates/users.php:101
+#: templates/users.php:99
 msgid "set new password"
 msgstr "設定新密碼"
 
-#: templates/users.php:137
+#: templates/users.php:134
 msgid "Default"
 msgstr "預設"
-
-#: templates/users.php:165
-msgid "Delete"
-msgstr "刪除"
diff --git a/lib/api.php b/lib/api.php
index abf1c3b003668b11c768c96030d330954441aac4..70e3028b68a95cfef127b71a6d990ce5a774acec 100644
--- a/lib/api.php
+++ b/lib/api.php
@@ -82,7 +82,7 @@ class OC_API {
 		// Prepare the request variables
 		if($_SERVER['REQUEST_METHOD'] == 'PUT') {
 			parse_str(file_get_contents("php://input"), $parameters['_put']);
-		} else if($_SERVER['REQUEST_METHOD'] == 'DELETE'){
+		} else if($_SERVER['REQUEST_METHOD'] == 'DELETE') {
 			parse_str(file_get_contents("php://input"), $parameters['_delete']);
 		}
 		$name = $parameters['_route'];
diff --git a/lib/app.php b/lib/app.php
index 901a8171ef34c545fb0ebb44030ff55d3647d8b1..e653c30b2d92bd1c94c525ac62557fd7c86666aa 100644
--- a/lib/app.php
+++ b/lib/app.php
@@ -76,14 +76,14 @@ class OC_App{
 				&& empty(OC_Util::$core_scripts)
 				&& empty(OC_Util::$core_styles)) {
 				OC_Util::$core_scripts = OC_Util::$scripts;
-			OC_Util::$scripts = array();
-			OC_Util::$core_styles = OC_Util::$styles;
-			OC_Util::$styles = array();
+				OC_Util::$scripts = array();
+				OC_Util::$core_styles = OC_Util::$styles;
+				OC_Util::$styles = array();
+			}
 		}
-	}
 		// return
-	return true;
-}
+		return true;
+	}
 
 	/**
 	 * load a single app
@@ -157,7 +157,7 @@ class OC_App{
 	 */
 	public static function isShipped($appid){
 		$info = self::getAppInfo($appid);
-		if(isset($info['shipped']) && $info['shipped']=='true'){
+		if(isset($info['shipped']) && $info['shipped']=='true') {
 			return true;
 		} else {
 			return false;
@@ -168,10 +168,12 @@ class OC_App{
 	 * get all enabled apps
 	 */
 	public static function getEnabledApps() {
-		if(!OC_Config::getValue('installed', false))
+		if(!OC_Config::getValue('installed', false)) {
 			return array();
+		}
 		$apps=array('files');
-		$query = OC_DB::prepare( 'SELECT `appid` FROM `*PREFIX*appconfig` WHERE `configkey` = \'enabled\' AND `configvalue`=\'yes\'' );
+		$query = OC_DB::prepare( 'SELECT `appid` FROM `*PREFIX*appconfig`'
+			.' WHERE `configkey` = \'enabled\' AND `configvalue`=\'yes\'' );
 		$result=$query->execute();
 		while($row=$result->fetchRow()) {
 			if(array_search($row['appid'], $apps)===false) {
@@ -212,7 +214,8 @@ class OC_App{
 				$appdata=OC_OCSClient::getApplication($app);
 				$download=OC_OCSClient::getApplicationDownload($app, 1);
 				if(isset($download['downloadlink']) and $download['downloadlink']!='') {
-					$app=OC_Installer::installApp(array('source'=>'http', 'href'=>$download['downloadlink'],'appdata'=>$appdata));
+					$info = array('source'=>'http', 'href'=>$download['downloadlink'], 'appdata'=>$appdata);
+					$app=OC_Installer::installApp($info);
 				}
 			}
 		}
@@ -221,7 +224,10 @@ class OC_App{
 			$info=OC_App::getAppInfo($app);
 			$version=OC_Util::getVersion();
 			if(!isset($info['require']) or ($version[0]>$info['require'])) {
-				OC_Log::write('core', 'App "'.$info['name'].'" can\'t be installed because it is not compatible with this version of ownCloud', OC_Log::ERROR);
+				OC_Log::write('core',
+					'App "'.$info['name'].'" can\'t be installed because it is'
+					.' not compatible with this version of ownCloud',
+					OC_Log::ERROR);
 				return false;
 			}else{
 				OC_Appconfig::setValue( $app, 'enabled', 'yes' );
@@ -247,7 +253,7 @@ class OC_App{
 		OC_Appconfig::setValue( $app, 'enabled', 'no' );
 
 		// check if app is a shipped app or not. if not delete
-		if(!OC_App::isShipped( $app )){
+		if(!OC_App::isShipped( $app )) {
 			OC_Installer::removeApp( $app );
 		}
 	}
@@ -336,33 +342,70 @@ class OC_App{
 		// by default, settings only contain the help menu
 		if(OC_Config::getValue('knowledgebaseenabled', true)==true) {
 			$settings = array(
-				array( "id" => "help", "order" => 1000, "href" => OC_Helper::linkToRoute( "settings_help" ), "name" => $l->t("Help"), "icon" => OC_Helper::imagePath( "settings", "help.svg" ))
-				);
+				array(
+					"id" => "help",
+					"order" => 1000,
+					"href" => OC_Helper::linkToRoute( "settings_help" ),
+					"name" => $l->t("Help"),
+					"icon" => OC_Helper::imagePath( "settings", "help.svg" )
+				)
+			);
 		}
 
 		// if the user is logged-in
 		if (OC_User::isLoggedIn()) {
 			// personal menu
-			$settings[] = array( "id" => "personal", "order" => 1, "href" => OC_Helper::linkToRoute( "settings_personal" ), "name" => $l->t("Personal"), "icon" => OC_Helper::imagePath( "settings", "personal.svg" ));
+			$settings[] = array(
+				"id" => "personal",
+				"order" => 1,
+				"href" => OC_Helper::linkToRoute( "settings_personal" ),
+				"name" => $l->t("Personal"),
+				"icon" => OC_Helper::imagePath( "settings", "personal.svg" )
+			);
 
 			// if there are some settings forms
-			if(!empty(self::$settingsForms))
+			if(!empty(self::$settingsForms)) {
 				// settings menu
-				$settings[]=array( "id" => "settings", "order" => 1000, "href" => OC_Helper::linkToRoute( "settings_settings" ), "name" => $l->t("Settings"), "icon" => OC_Helper::imagePath( "settings", "settings.svg" ));
+				$settings[]=array(
+					"id" => "settings",
+					"order" => 1000,
+					"href" => OC_Helper::linkToRoute( "settings_settings" ),
+					"name" => $l->t("Settings"),
+					"icon" => OC_Helper::imagePath( "settings", "settings.svg" )
+				);
+			}
 
 			//SubAdmins are also allowed to access user management
 			if(OC_SubAdmin::isSubAdmin(OC_User::getUser())) {
 				// admin users menu
-				$settings[] = array( "id" => "core_users", "order" => 2, "href" => OC_Helper::linkToRoute( "settings_users" ), "name" => $l->t("Users"), "icon" => OC_Helper::imagePath( "settings", "users.svg" ));
+				$settings[] = array(
+					"id" => "core_users",
+					"order" => 2,
+					"href" => OC_Helper::linkToRoute( "settings_users" ),
+					"name" => $l->t("Users"),
+					"icon" => OC_Helper::imagePath( "settings", "users.svg" )
+				);
 			}
 
 
 			// if the user is an admin
 			if(OC_User::isAdminUser(OC_User::getUser())) {
 				// admin apps menu
-				$settings[] = array( "id" => "core_apps", "order" => 3, "href" => OC_Helper::linkToRoute( "settings_apps" ).'?installed', "name" => $l->t("Apps"), "icon" => OC_Helper::imagePath( "settings", "apps.svg" ));
+				$settings[] = array(
+					"id" => "core_apps",
+					"order" => 3,
+					"href" => OC_Helper::linkToRoute( "settings_apps" ).'?installed',
+					"name" => $l->t("Apps"),
+					"icon" => OC_Helper::imagePath( "settings", "apps.svg" )
+				);
 
-				$settings[]=array( "id" => "admin", "order" => 1000, "href" => OC_Helper::linkToRoute( "settings_admin" ), "name" => $l->t("Admin"), "icon" => OC_Helper::imagePath( "settings", "admin.svg" ));
+				$settings[]=array(
+					"id" => "admin",
+					"order" => 1000,
+					"href" => OC_Helper::linkToRoute( "settings_admin" ),
+					"name" => $l->t("Admin"),
+					"icon" => OC_Helper::imagePath( "settings", "admin.svg" )
+				);
 			}
 		}
 
@@ -395,8 +438,9 @@ class OC_App{
 		}
 
 		foreach(OC::$APPSROOTS as $dir) {
-			if(isset($dir['writable']) && $dir['writable']===true)
+			if(isset($dir['writable']) && $dir['writable']===true) {
 				return $dir['path'];
+			}
 		}
 
 		OC_Log::write('core', 'No application directories are marked as writable.', OC_Log::ERROR);
@@ -557,16 +601,16 @@ class OC_App{
 		$forms=array();
 		switch($type) {
 			case 'settings':
-			$source=self::$settingsForms;
-			break;
+				$source=self::$settingsForms;
+				break;
 			case 'admin':
-			$source=self::$adminForms;
-			break;
+				$source=self::$adminForms;
+				break;
 			case 'personal':
-			$source=self::$personalForms;
-			break;
+				$source=self::$personalForms;
+				break;
 			default:
-			return array();
+				return array();
 		}
 		foreach($source as $form) {
 			$forms[]=include $form;
@@ -641,7 +685,8 @@ class OC_App{
 	public static function listAllApps() {
 		$installedApps = OC_App::getAllApps();
 
-		//TODO which apps do we want to blacklist and how do we integrate blacklisting with the multi apps folder feature?
+		//TODO which apps do we want to blacklist and how do we integrate
+		// blacklisting with the multi apps folder feature?
 
 		$blacklist = array('files');//we dont want to show configuration for these
 		$appList = array();
@@ -671,7 +716,7 @@ class OC_App{
 					$info['update']=false;
 				} else {
 					$info['internal']=false;
-					$info['internallabel']='3rd Party App';
+					$info['internallabel']='3rd Party';
 					$info['internalclass']='externalapp';
 					$info['update']=OC_Installer::isUpdateAvailable($app);
 				}
@@ -694,19 +739,20 @@ class OC_App{
 						// OR $app['ocs_id'] == $remote['ocs_id']
 						) {
 						unset( $remoteApps[$key]);
+					}
 				}
 			}
+			$combinedApps = array_merge( $appList, $remoteApps );
+		} else {
+			$combinedApps = $appList;
 		}
-		$combinedApps = array_merge( $appList, $remoteApps );
-	} else {
-		$combinedApps = $appList;
-	}	
-	return $combinedApps;	
-}
+		return $combinedApps;
+	}
 
 	/**
 	 * @brief: get a list of all apps on apps.owncloud.com
-	 * @return array, multi-dimensional array of apps. Keys: id, name, type, typename, personid, license, detailpage, preview, changed, description
+	 * @return array, multi-dimensional array of apps.
+	 *     Keys: id, name, type, typename, personid, license, detailpage, preview, changed, description
 	 */
 	public static function getAppstoreApps( $filter = 'approved' ) {
 		$categoryNames = OC_OCSClient::getCategories();
@@ -726,7 +772,7 @@ class OC_App{
 				$app1[$i]['ocs_id'] = $app['id'];
 				$app1[$i]['internal'] = $app1[$i]['active'] = 0;
 				$app1[$i]['update'] = false;
-				if($app['label']=='recommended'){
+				if($app['label']=='recommended') {
 					$app1[$i]['internallabel'] = 'Recommended';
 					$app1[$i]['internalclass'] = 'recommendedapp';
 				}else{
@@ -774,7 +820,9 @@ class OC_App{
 			$installedVersion = $versions[$app];
 			if (version_compare($currentVersion, $installedVersion, '>')) {
 				$info = self::getAppInfo($app);
-				OC_Log::write($app, 'starting app upgrade from '.$installedVersion.' to '.$currentVersion, OC_Log::DEBUG);
+				OC_Log::write($app,
+					'starting app upgrade from '.$installedVersion.' to '.$currentVersion,
+					OC_Log::DEBUG);
 				try {
 					OC_App::updateApp($app);
 					OC_Hook::emit('update', 'success', 'Updated '.$info['name'].' app');
@@ -804,7 +852,10 @@ class OC_App{
 			// check if the app is compatible with this version of ownCloud
 			$info = OC_App::getAppInfo($app);
 			if(!isset($info['require']) or (($version[0].'.'.$version[1])>$info['require'])) {
-				OC_Log::write('core', 'App "'.$info['name'].'" ('.$app.') can\'t be used because it is not compatible with this version of ownCloud', OC_Log::ERROR);
+				OC_Log::write('core',
+					'App "'.$info['name'].'" ('.$app.') can\'t be used because it is'
+					.' not compatible with this version of ownCloud',
+					OC_Log::ERROR);
 				OC_App::disable( $app );
 				OC_Hook::emit('update', 'success', 'Disabled '.$info['name'].' app because it is not compatible');
 			}
@@ -820,7 +871,8 @@ class OC_App{
 			return $versions; // when function is used besides in checkUpgrade
 		}
 		$versions=array();
-		$query = OC_DB::prepare( 'SELECT `appid`, `configvalue` FROM `*PREFIX*appconfig` WHERE `configkey` = \'installed_version\'' );
+		$query = OC_DB::prepare( 'SELECT `appid`, `configvalue` FROM `*PREFIX*appconfig`'
+			.' WHERE `configkey` = \'installed_version\'' );
 		$result = $query->execute();
 		while($row = $result->fetchRow()) {
 			$versions[$row['appid']]=$row['configvalue'];
diff --git a/lib/appconfig.php b/lib/appconfig.php
index 1f2d576af877c0c2cbea553d258077568a3f6d2e..e615d838173e9a182d2397be10a9d5cad98577f9 100644
--- a/lib/appconfig.php
+++ b/lib/appconfig.php
@@ -91,7 +91,8 @@ class OC_Appconfig{
 	 */
 	public static function getValue( $app, $key, $default = null ) {
 		// At least some magic in here :-)
-		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*appconfig` WHERE `appid` = ? AND `configkey` = ?' );
+		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*appconfig`'
+			.' WHERE `appid` = ? AND `configkey` = ?' );
 		$result = $query->execute( array( $app, $key ));
 		$row = $result->fetchRow();
 		if($row) {
@@ -124,11 +125,13 @@ class OC_Appconfig{
 	public static function setValue( $app, $key, $value ) {
 		// Does the key exist? yes: update. No: insert
 		if(! self::hasKey($app, $key)) {
-			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*appconfig` ( `appid`, `configkey`, `configvalue` ) VALUES( ?, ?, ? )' );
+			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*appconfig` ( `appid`, `configkey`, `configvalue` )'
+				.' VALUES( ?, ?, ? )' );
 			$query->execute( array( $app, $key, $value ));
 		}
 		else{
-			$query = OC_DB::prepare( 'UPDATE `*PREFIX*appconfig` SET `configvalue` = ? WHERE `appid` = ? AND `configkey` = ?' );
+			$query = OC_DB::prepare( 'UPDATE `*PREFIX*appconfig` SET `configvalue` = ?'
+				.' WHERE `appid` = ? AND `configkey` = ?' );
 			$query->execute( array( $value, $app, $key ));
 		}
 	}
diff --git a/lib/backgroundjob/queuedtask.php b/lib/backgroundjob/queuedtask.php
index 8264e1a0ae66d97c46dbe728bcf969bf9e902966..b2ce6f39ed8ed365346e0508f400b592baf23837 100644
--- a/lib/backgroundjob/queuedtask.php
+++ b/lib/backgroundjob/queuedtask.php
@@ -82,7 +82,8 @@ class OC_BackgroundJob_QueuedTask{
 	 * @return id of task
 	 */
 	public static function add( $app, $klass, $method, $parameters ) {
-		$stmt = OC_DB::prepare( 'INSERT INTO `*PREFIX*queuedtasks` (`app`, `klass`, `method`, `parameters`) VALUES(?,?,?,?)' );
+		$stmt = OC_DB::prepare( 'INSERT INTO `*PREFIX*queuedtasks` (`app`, `klass`, `method`, `parameters`)'
+			.' VALUES(?,?,?,?)' );
 		$result = $stmt->execute(array($app, $klass, $method, $parameters ));
 
 		return OC_DB::insertid();
diff --git a/lib/base.php b/lib/base.php
index c60a97100f42859fa5d4a466f078c33d533f74e1..b5439c00abfcd9afc2eae23415e985d88f3c8577 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -162,7 +162,9 @@ class OC {
 			OC::$THIRDPARTYWEBROOT = rtrim(dirname(OC::$WEBROOT), '/');
 			OC::$THIRDPARTYROOT = rtrim(dirname(OC::$SERVERROOT), '/');
 		} else {
-			echo("3rdparty directory not found! Please put the ownCloud 3rdparty folder in the ownCloud folder or the folder above. You can also configure the location in the config.php file.");
+			echo("3rdparty directory not found! Please put the ownCloud 3rdparty'
+				.' folder in the ownCloud folder or the folder above.'
+				.' You can also configure the location in the config.php file.");
 			exit;
 		}
 		// search the apps folder
@@ -178,11 +180,16 @@ class OC {
 		} elseif (file_exists(OC::$SERVERROOT . '/apps')) {
 			OC::$APPSROOTS[] = array('path' => OC::$SERVERROOT . '/apps', 'url' => '/apps', 'writable' => true);
 		} elseif (file_exists(OC::$SERVERROOT . '/../apps')) {
-			OC::$APPSROOTS[] = array('path' => rtrim(dirname(OC::$SERVERROOT), '/') . '/apps', 'url' => '/apps', 'writable' => true);
+			OC::$APPSROOTS[] = array(
+				'path' => rtrim(dirname(OC::$SERVERROOT), '/') . '/apps',
+				'url' => '/apps',
+				'writable' => true
+			);
 		}
 
 		if (empty(OC::$APPSROOTS)) {
-			echo("apps directory not found! Please put the ownCloud apps folder in the ownCloud folder or the folder above. You can also configure the location in the config.php file.");
+			echo("apps directory not found! Please put the ownCloud apps folder in the ownCloud folder'
+				.' or the folder above. You can also configure the location in the config.php file.");
 			exit;
 		}
 		$paths = array();
@@ -202,9 +209,14 @@ class OC {
 	}
 
 	public static function checkConfig() {
-		if (file_exists(OC::$SERVERROOT . "/config/config.php") and !is_writable(OC::$SERVERROOT . "/config/config.php")) {
+		if (file_exists(OC::$SERVERROOT . "/config/config.php")
+			and !is_writable(OC::$SERVERROOT . "/config/config.php")) {
 			$tmpl = new OC_Template('', 'error', 'guest');
-			$tmpl->assign('errors', array(1 => array('error' => "Can't write into config directory 'config'", 'hint' => "You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
+			$tmpl->assign('errors', array(1 => array(
+				'error' => "Can't write into config directory 'config'",
+				'hint' => "You can usually fix this by giving the webserver user write access'
+					.' to the config directory in owncloud"
+			)));
 			$tmpl->printPage();
 			exit();
 		}
@@ -231,6 +243,11 @@ class OC {
 				header("Location: $url");
 				exit();
 			}
+		} else {
+			// Invalidate HSTS headers
+			if (OC_Request::serverProtocol() === 'https') {
+				header('Strict-Transport-Security: max-age=0');
+			}
 		}
 	}
 
@@ -257,7 +274,9 @@ class OC {
 			if (version_compare($currentVersion, $installedVersion, '>')) {
 				if ($showTemplate && !OC_Config::getValue('maintenance', false)) {
 					OC_Config::setValue('maintenance', true);
-					OC_Log::write('core', 'starting upgrade from ' . $installedVersion . ' to ' . $currentVersion, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'starting upgrade from ' . $installedVersion . ' to ' . $currentVersion,
+						OC_Log::DEBUG);
 					OC_Util::addscript('update');
 					$tmpl = new OC_Template('', 'update', 'guest');
 					$tmpl->assign('version', OC_Util::getVersionString());
@@ -278,6 +297,7 @@ class OC {
 		OC_Util::addScript("jquery-showpassword");
 		OC_Util::addScript("jquery.infieldlabel");
 		OC_Util::addScript("jquery-tipsy");
+		OC_Util::addScript("compatibility");
 		OC_Util::addScript("oc-dialogs");
 		OC_Util::addScript("js");
 		OC_Util::addScript("eventsource");
@@ -387,14 +407,16 @@ class OC {
 		}
 
 		//set http auth headers for apache+php-cgi work around
-		if (isset($_SERVER['HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) {
+		if (isset($_SERVER['HTTP_AUTHORIZATION'])
+			&& preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) {
 			list($name, $password) = explode(':', base64_decode($matches[1]), 2);
 			$_SERVER['PHP_AUTH_USER'] = strip_tags($name);
 			$_SERVER['PHP_AUTH_PW'] = strip_tags($password);
 		}
 
 		//set http auth headers for apache+php-cgi work around if variable gets renamed by apache
-		if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['REDIRECT_HTTP_AUTHORIZATION'], $matches)) {
+		if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION'])
+			&& preg_match('/Basic\s+(.*)$/i', $_SERVER['REDIRECT_HTTP_AUTHORIZATION'], $matches)) {
 			list($name, $password) = explode(':', base64_decode($matches[1]), 2);
 			$_SERVER['PHP_AUTH_USER'] = strip_tags($name);
 			$_SERVER['PHP_AUTH_PW'] = strip_tags($password);
@@ -402,12 +424,6 @@ class OC {
 
 		self::initPaths();
 
-		if (!defined('PHPUNIT_RUN')) {
-			register_shutdown_function(array('OC_Log', 'onShutdown'));
-			set_error_handler(array('OC_Log', 'onError'));
-			set_exception_handler(array('OC_Log', 'onException'));
-		}
-
 		// set debug mode if an xdebug session is active
 		if (!defined('DEBUG') || !DEBUG) {
 			if (isset($_COOKIE['XDEBUG_SESSION'])) {
@@ -415,6 +431,12 @@ class OC {
 			}
 		}
 
+		if (!defined('PHPUNIT_RUN') and !(defined('DEBUG') and DEBUG)) {
+			register_shutdown_function(array('OC_Log', 'onShutdown'));
+			set_error_handler(array('OC_Log', 'onError'));
+			set_exception_handler(array('OC_Log', 'onException'));
+		}
+
 		// register the stream wrappers
 		stream_wrapper_register('fakedir', 'OC\Files\Stream\Dir');
 		stream_wrapper_register('static', 'OC\Files\Stream\StaticStream');
@@ -441,7 +463,8 @@ class OC {
 		OC_User::useBackend(new OC_User_Database());
 		OC_Group::useBackend(new OC_Group_Database());
 
-		if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SESSION['user_id']) && $_SERVER['PHP_AUTH_USER'] != $_SESSION['user_id']) {
+		if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SESSION['user_id'])
+			&& $_SERVER['PHP_AUTH_USER'] != $_SESSION['user_id']) {
 			OC_User::logout();
 		}
 
@@ -498,7 +521,9 @@ class OC {
 
 		// write error into log if locale can't be set
 		if (OC_Util::issetlocaleworking() == false) {
-			OC_Log::write('core', 'setting locale to en_US.UTF-8/en_US.UTF8 failed. Support is probably not installed on your system', OC_Log::ERROR);
+			OC_Log::write('core',
+				'setting locale to en_US.UTF-8/en_US.UTF8 failed. Support is probably not installed on your system',
+				OC_Log::ERROR);
 		}
 		if (OC_Config::getValue('installed', false)) {
 			if (OC_Appconfig::getValue('core', 'backgroundjobs_mode', 'ajax') == 'ajax') {
@@ -550,7 +575,7 @@ class OC {
 		}
 
 		$request = OC_Request::getPathInfo();
-		if(substr($request, -3) !== '.js'){// we need these files during the upgrade
+		if(substr($request, -3) !== '.js') {// we need these files during the upgrade
 			self::checkMaintenanceMode();
 			self::checkUpgrade();
 		}
diff --git a/lib/config.php b/lib/config.php
index cbea9199320dec0b156200cedc7cfc62a4b5e0ce..a5c11b466f74db61e9052bbcc4d4207ed71ffa4e 100644
--- a/lib/config.php
+++ b/lib/config.php
@@ -166,7 +166,8 @@ class OC_Config{
 			$tmpl = new OC_Template( '', 'error', 'guest' );
 			$tmpl->assign('errors', array(1=>array(
 				'error'=>"Can't write into config directory 'config'",
-				'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
+				'hint'=>"You can usually fix this by giving the webserver user write access'
+					.' to the config directory in owncloud")));
 			$tmpl->printPage();
 			exit;
 		}
diff --git a/lib/connector/sabre/directory.php b/lib/connector/sabre/directory.php
index b210602bbf48f2a5cfd1697af349fec0713c94c0..a9aa891d40997c82b2c22a43b84fba42a0346610 100644
--- a/lib/connector/sabre/directory.php
+++ b/lib/connector/sabre/directory.php
@@ -62,7 +62,36 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
 			}
 		} else {
 			$newPath = $this->path . '/' . $name;
-			\OC\Files\Filesystem::file_put_contents($newPath, $data);
+			
+			// mark file as partial while uploading (ignored by the scanner)
+			$partpath = $newPath . '.part';
+		
+			\OC\Files\Filesystem::file_put_contents($partpath, $data);
+			
+			//detect aborted upload
+			if (isset ($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'PUT' ) {
+				if (isset($_SERVER['CONTENT_LENGTH'])) {
+					$expected = $_SERVER['CONTENT_LENGTH'];
+					$actual = \OC\Files\Filesystem::filesize($partpath);
+					if ($actual != $expected) {
+						\OC\Files\Filesystem::unlink($partpath);
+						throw new Sabre_DAV_Exception_BadRequest(
+								'expected filesize ' . $expected . ' got ' . $actual);
+					}
+				}
+			}
+			
+			// rename to correct path
+			\OC\Files\Filesystem::rename($partpath, $newPath);
+			
+			// allow sync clients to send the mtime along in a header
+			$mtime = OC_Request::hasModificationTime();
+			if ($mtime !== false) {
+				if(\OC\Files\Filesystem::touch($newPath, $mtime)) {
+					header('X-OC-MTime: accepted');
+				}
+			}
+			
 			return OC_Connector_Sabre_Node::getETagPropertyForPath($newPath);
 		}
 
@@ -121,7 +150,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
 		$paths = array();
 		foreach($folder_content as $info) {
 			$paths[] = $this->path.'/'.$info['name'];
-			$properties[$this->path.'/'.$info['name']][self::GETETAG_PROPERTYNAME] = $info['etag'];
+			$properties[$this->path.'/'.$info['name']][self::GETETAG_PROPERTYNAME] = '"' . $info['etag'] . '"';
 		}
 		if(count($paths)>0) {
 			//
@@ -131,7 +160,8 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
 			$chunks = array_chunk($paths, 200, false);
 			foreach ($chunks as $pack) {
 				$placeholders = join(',', array_fill(0, count($pack), '?'));
-				$query = OC_DB::prepare( 'SELECT * FROM `*PREFIX*properties` WHERE `userid` = ?' . ' AND `propertypath` IN ('.$placeholders.')' );
+				$query = OC_DB::prepare( 'SELECT * FROM `*PREFIX*properties`'
+					.' WHERE `userid` = ?' . ' AND `propertypath` IN ('.$placeholders.')' );
 				array_unshift($pack, OC_User::getUser()); // prepend userid
 				$result = $query->execute( $pack );
 				while($row = $result->fetchRow()) {
diff --git a/lib/connector/sabre/file.php b/lib/connector/sabre/file.php
index 1c18a391742aabbc87519310b6a7b57ae1a364c8..c4c27e9225186d751c68b64c71bdc44fb056c6b8 100644
--- a/lib/connector/sabre/file.php
+++ b/lib/connector/sabre/file.php
@@ -45,7 +45,34 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D
 	 */
 	public function put($data) {
 
-		\OC\Files\Filesystem::file_put_contents($this->path,$data);
+		// mark file as partial while uploading (ignored by the scanner)
+		$partpath = $this->path . '.part';
+		
+		\OC\Files\Filesystem::file_put_contents($partpath, $data);
+		
+		//detect aborted upload
+		if (isset ($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'PUT' ) {
+			if (isset($_SERVER['CONTENT_LENGTH'])) {
+				$expected = $_SERVER['CONTENT_LENGTH'];
+				$actual = \OC\Files\Filesystem::filesize($partpath);
+				if ($actual != $expected) {
+					\OC\Files\Filesystem::unlink($partpath);
+					throw new Sabre_DAV_Exception_BadRequest(
+							'expected filesize ' . $expected . ' got ' . $actual);
+				}
+			}
+		}
+		
+		// rename to correct path
+		\OC\Files\Filesystem::rename($partpath, $this->path);
+		
+		//allow sync clients to send the mtime along in a header
+		$mtime = OC_Request::hasModificationTime();
+		if ($mtime !== false) {
+			if(\OC\Files\Filesystem::touch($this->path, $mtime)) {
+				header('X-OC-MTime: accepted');
+			}
+		}
 
 		return OC_Connector_Sabre_Node::getETagPropertyForPath($this->path);
 	}
@@ -57,7 +84,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D
 	 */
 	public function get() {
 
-		return \OC\Files\Filesystem::fopen($this->path,'rb');
+		return \OC\Files\Filesystem::fopen($this->path, 'rb');
 
 	}
 
@@ -86,8 +113,9 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D
 	/**
 	 * Returns the ETag for a file
 	 *
-	 * An ETag is a unique identifier representing the current version of the file. If the file changes, the ETag MUST change.
-	 * The ETag is an arbritrary string, but MUST be surrounded by double-quotes.
+	 * An ETag is a unique identifier representing the current version of the
+	 * file. If the file changes, the ETag MUST change.  The ETag is an
+	 * arbritrary string, but MUST be surrounded by double-quotes.
 	 *
 	 * Return null if the ETag can not effectively be determined
 	 *
diff --git a/lib/connector/sabre/locks.php b/lib/connector/sabre/locks.php
index a72d003bc72d08cdd255ebaf93ebe4c9dfe1ac71..e58e584fb4117594c5602b12604e5fde497e8cba 100644
--- a/lib/connector/sabre/locks.php
+++ b/lib/connector/sabre/locks.php
@@ -44,7 +44,8 @@ class OC_Connector_Sabre_Locks extends Sabre_DAV_Locks_Backend_Abstract {
 		// NOTE: SQLite requires time() to be inserted directly. That's ugly
 		// but otherwise reading locks from SQLite Databases will return
 		// nothing
-		$query = 'SELECT * FROM `*PREFIX*locks` WHERE `userid` = ? AND (`created` + `timeout`) > '.time().' AND (( `uri` = ?)';
+		$query = 'SELECT * FROM `*PREFIX*locks`'
+			.' WHERE `userid` = ? AND (`created` + `timeout`) > '.time().' AND (( `uri` = ?)';
 		$params = array(OC_User::getUser(), $uri);
 
 		// We need to check locks for every part in the uri.
@@ -116,11 +117,33 @@ class OC_Connector_Sabre_Locks extends Sabre_DAV_Locks_Backend_Abstract {
 		}
 
 		if ($exists) {
-			$query = OC_DB::prepare( 'UPDATE `*PREFIX*locks` SET `owner` = ?, `timeout` = ?, `scope` = ?, `depth` = ?, `uri` = ?, `created` = ? WHERE `userid` = ? AND `token` = ?' );
-			$result = $query->execute( array($lockInfo->owner,$lockInfo->timeout,$lockInfo->scope,$lockInfo->depth,$uri,$lockInfo->created,OC_User::getUser(),$lockInfo->token));
+			$query = OC_DB::prepare( 'UPDATE `*PREFIX*locks`'
+				.' SET `owner` = ?, `timeout` = ?, `scope` = ?, `depth` = ?, `uri` = ?, `created` = ?'
+				.' WHERE `userid` = ? AND `token` = ?' );
+			$result = $query->execute( array(
+				$lockInfo->owner,
+				$lockInfo->timeout,
+				$lockInfo->scope,
+				$lockInfo->depth,
+				$uri,
+				$lockInfo->created,
+				OC_User::getUser(),
+				$lockInfo->token)
+			);
 		} else {
-			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*locks` (`userid`,`owner`,`timeout`,`scope`,`depth`,`uri`,`created`,`token`) VALUES (?,?,?,?,?,?,?,?)' );
-			$result = $query->execute( array(OC_User::getUser(),$lockInfo->owner,$lockInfo->timeout,$lockInfo->scope,$lockInfo->depth,$uri,$lockInfo->created,$lockInfo->token));
+			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*locks`'
+				.' (`userid`,`owner`,`timeout`,`scope`,`depth`,`uri`,`created`,`token`)'
+				.' VALUES (?,?,?,?,?,?,?,?)' );
+			$result = $query->execute( array(
+				OC_User::getUser(),
+				$lockInfo->owner,
+				$lockInfo->timeout,
+				$lockInfo->scope,
+				$lockInfo->depth,
+				$uri,
+				$lockInfo->created,
+				$lockInfo->token)
+			);
 		}
 
 		return true;
diff --git a/lib/connector/sabre/node.php b/lib/connector/sabre/node.php
index 52995630211fe2a9c012420ecbef320af8697397..360c3066d05086e2687b139f8a80a705683d1251 100644
--- a/lib/connector/sabre/node.php
+++ b/lib/connector/sabre/node.php
@@ -84,12 +84,13 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 		$newPath = $parentPath . '/' . $newName;
 		$oldPath = $this->path;
 
-		\OC\Files\Filesystem::rename($this->path,$newPath);
+		\OC\Files\Filesystem::rename($this->path, $newPath);
 
 		$this->path = $newPath;
 
-		$query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertypath` = ? WHERE `userid` = ? AND `propertypath` = ?' );
-		$query->execute( array( $newPath,OC_User::getUser(), $oldPath ));
+		$query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertypath` = ?'
+			.' WHERE `userid` = ? AND `propertypath` = ?' );
+		$query->execute( array( $newPath, OC_User::getUser(), $oldPath ));
 
 	}
 
@@ -149,7 +150,8 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 			// If it was null, we need to delete the property
 			if (is_null($propertyValue)) {
 				if(array_key_exists( $propertyName, $existing )) {
-					$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*properties` WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' );
+					$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*properties`'
+						.' WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' );
 					$query->execute( array( OC_User::getUser(), $this->path, $propertyName ));
 				}
 			}
@@ -160,10 +162,12 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 					$this->touch($propertyValue);
 				} else {
 					if(!array_key_exists( $propertyName, $existing )) {
-						$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*properties` (`userid`,`propertypath`,`propertyname`,`propertyvalue`) VALUES(?,?,?,?)' );
+						$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*properties`'
+							.' (`userid`,`propertypath`,`propertyname`,`propertyvalue`) VALUES(?,?,?,?)' );
 						$query->execute( array( OC_User::getUser(), $this->path, $propertyName,$propertyValue ));
 					} else {
-						$query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertyvalue` = ? WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' );
+						$query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertyvalue` = ?'
+							.' WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' );
 						$query->execute( array( $propertyValue,OC_User::getUser(), $this->path, $propertyName ));
 					}
 				}
diff --git a/lib/connector/sabre/request.php b/lib/connector/sabre/request.php
index 97a27996bf364f165b11c69cdd0d4d2947ccb50c..d70c25c4e702b7b512ff2a8b17d63c099baf2e59 100644
--- a/lib/connector/sabre/request.php
+++ b/lib/connector/sabre/request.php
@@ -40,7 +40,7 @@ class OC_Connector_Sabre_Request extends Sabre_HTTP_Request {
 	 * @return string
 	 */
 	public function getRawServerValue($field) {
-		if($field == 'REQUEST_URI'){
+		if($field == 'REQUEST_URI') {
 			return $this->getUri();
 		}
 		else{
diff --git a/lib/db.php b/lib/db.php
index 51f7c7679d4c4777380815be816b1f75dc1ea721..edbc2fe13edbca62aea008fdb12abd232b4052b7 100644
--- a/lib/db.php
+++ b/lib/db.php
@@ -228,11 +228,12 @@ class OC_DB {
 
 			// Prepare options array
 			$options = array(
-			  'portability' => MDB2_PORTABILITY_ALL - MDB2_PORTABILITY_FIX_CASE,
-			  'log_line_break' => '<br>',
-			  'idxname_format' => '%s',
-			  'debug' => true,
-			  'quote_identifier' => true  );
+					'portability' => MDB2_PORTABILITY_ALL - MDB2_PORTABILITY_FIX_CASE,
+					'log_line_break' => '<br>',
+					'idxname_format' => '%s',
+					'debug' => true,
+					'quote_identifier' => true
+					);
 
 			// Add the dsn according to the database type
 			switch($type) {
@@ -474,7 +475,8 @@ class OC_DB {
 		 * http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions037.htm
 		 */
 		if( $CONFIG_DBTYPE == 'pgsql' ) { //mysql support it too but sqlite doesn't
-			$content = str_replace( '<default>0000-00-00 00:00:00</default>', '<default>CURRENT_TIMESTAMP</default>', $content );
+			$content = str_replace( '<default>0000-00-00 00:00:00</default>',
+				'<default>CURRENT_TIMESTAMP</default>', $content );
 		}
 
 		file_put_contents( $file2, $content );
@@ -495,11 +497,15 @@ class OC_DB {
 			$definition['name']=OC_Config::getValue( "dbuser", $oldname );
 		}
 
+		// we should never drop a database
+		$definition['overwrite'] = false;
+
 		$ret=self::$schema->createDatabase( $definition );
 
 		// Die in case something went wrong
 		if( $ret instanceof MDB2_Error ) {
-			OC_Template::printErrorPage( self::$MDB2->getDebugOutput().' '.$ret->getMessage() . ': ' . $ret->getUserInfo() );
+			OC_Template::printErrorPage( self::$MDB2->getDebugOutput().' '.$ret->getMessage() . ': '
+				. $ret->getUserInfo() );
 		}
 
 		return true;
@@ -541,7 +547,8 @@ class OC_DB {
 		 * http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions037.htm
 		 */
 		if( $CONFIG_DBTYPE == 'pgsql' ) { //mysql support it too but sqlite doesn't
-			$content = str_replace( '<default>0000-00-00 00:00:00</default>', '<default>CURRENT_TIMESTAMP</default>', $content );
+			$content = str_replace( '<default>0000-00-00 00:00:00</default>',
+				'<default>CURRENT_TIMESTAMP</default>', $content );
 		}
 		file_put_contents( $file2, $content );
 		$op = self::$schema->updateDatabase($file2, $previousSchema, array(), false);
@@ -679,7 +686,8 @@ class OC_DB {
 			$query = str_ireplace( 'UNIX_TIMESTAMP()', 'strftime(\'%s\',\'now\')', $query );
 		}elseif( $type == 'pgsql' ) {
 			$query = str_replace( '`', '"', $query );
-			$query = str_ireplace( 'UNIX_TIMESTAMP()', 'cast(extract(epoch from current_timestamp) as integer)', $query );
+			$query = str_ireplace( 'UNIX_TIMESTAMP()', 'cast(extract(epoch from current_timestamp) as integer)',
+				$query );
 		}elseif( $type == 'oci'  ) {
 			$query = str_replace( '`', '"', $query );
 			$query = str_ireplace( 'NOW()', 'CURRENT_TIMESTAMP', $query );
diff --git a/lib/eventsource.php b/lib/eventsource.php
index 1b8033943a19d6d984a48fe43b82c1efb78d1d65..63f197925293d97a6ae5bba8bbc605bb08b6b435 100644
--- a/lib/eventsource.php
+++ b/lib/eventsource.php
@@ -62,7 +62,8 @@ class OC_EventSource{
 			$type=null;
 		}
 		if($this->fallback) {
-			$response='<script type="text/javascript">window.parent.OC.EventSource.fallBackCallBack('.$this->fallBackId.',"'.$type.'",'.json_encode($data).')</script>'.PHP_EOL;
+			$response='<script type="text/javascript">window.parent.OC.EventSource.fallBackCallBack('
+				.$this->fallBackId.',"'.$type.'",'.json_encode($data).')</script>'.PHP_EOL;
 			echo $response;
 		}else{
 			if($type) {
diff --git a/lib/filechunking.php b/lib/filechunking.php
index d63a0d72c830b88f438ba85e9f399aab795fa6ff..e6d69273a44a6e08e4ad1bcf728c6cea78808ea2 100644
--- a/lib/filechunking.php
+++ b/lib/filechunking.php
@@ -97,7 +97,8 @@ class OC_FileChunking {
 		$absolutePath = \OC\Files\Filesystem::normalizePath(\OC\Files\Filesystem::getView()->getAbsolutePath($path));
 		$data = '';
 		// use file_put_contents as method because that best matches what this function does
-		if (OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && \OC\Files\Filesystem::isValidPath($path)) {
+		if (OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data)
+			&& \OC\Files\Filesystem::isValidPath($path)) {
 			$path = \OC\Files\Filesystem::getView()->getRelativePath($absolutePath);
 			$exists = \OC\Files\Filesystem::file_exists($path);
 			$run = true;
diff --git a/lib/fileproxy/fileoperations.php b/lib/fileproxy/fileoperations.php
index 47ccd8f8c26241a51df49fec4af2c0da41c0babe..b2ff2e7e5e99b605a52f0baf2bfb10d5851e7f0c 100644
--- a/lib/fileproxy/fileoperations.php
+++ b/lib/fileproxy/fileoperations.php
@@ -28,7 +28,7 @@ class OC_FileProxy_FileOperations extends OC_FileProxy{
 	static $rootView;
 
 	public function premkdir($path) {
-		if(!self::$rootView){
+		if(!self::$rootView) {
 			self::$rootView = new \OC\Files\View('');
 		}
 		return !self::$rootView->file_exists($path);
diff --git a/lib/fileproxy/quota.php b/lib/fileproxy/quota.php
index 7e0f631c8fb1724ffbef157e36f2fa6f2fab5236..07d1d250e4d033bfc1537e3b1b0a61b3bf9175b2 100644
--- a/lib/fileproxy/quota.php
+++ b/lib/fileproxy/quota.php
@@ -95,7 +95,7 @@ class OC_FileProxy_Quota extends OC_FileProxy{
 	}
 
 	public function preCopy($path1, $path2) {
-		if(!self::$rootView){
+		if(!self::$rootView) {
 			self::$rootView = new \OC\Files\View('');
 		}
 		return (self::$rootView->filesize($path1)<$this->getFreeSpace($path2) or $this->getFreeSpace($path2)==-1);
diff --git a/lib/files.php b/lib/files.php
index e3245653f99ea7c28f8d51fe1759b04af643978d..b594b78c4b768d7225368859535a76eb07b62ddd 100644
--- a/lib/files.php
+++ b/lib/files.php
@@ -200,7 +200,8 @@ class OC_Files {
 			$errors = array(
 				array(
 					'error' => $l->t('ZIP download is turned off.'),
-					'hint' => $l->t('Files need to be downloaded one by one.') . '<br/><a href="javascript:history.back()">' . $l->t('Back to Files') . '</a>',
+					'hint' => $l->t('Files need to be downloaded one by one.')
+						. '<br/><a href="javascript:history.back()">' . $l->t('Back to Files') . '</a>',
 				)
 			);
 			$tmpl->assign('errors', $errors);
@@ -225,7 +226,9 @@ class OC_Files {
 				$errors = array(
 					array(
 						'error' => $l->t('Selected files too large to generate zip file.'),
-						'hint' => 'Download the files in smaller chunks, seperately or kindly ask your administrator.<br/><a href="javascript:history.back()">' . $l->t('Back to Files') . '</a>',
+						'hint' => 'Download the files in smaller chunks, seperately'
+							.' or kindly ask your administrator.<br/><a href="javascript:history.back()">'
+							. $l->t('Back to Files') . '</a>',
 					)
 				);
 				$tmpl->assign('errors', $errors);
@@ -287,7 +290,9 @@ class OC_Files {
 			file_put_contents(OC::$SERVERROOT . '/.htaccess', $htaccess);
 			return OC_Helper::computerFileSize($size);
 		} else {
-			OC_Log::write('files', 'Can\'t write upload limit to ' . OC::$SERVERROOT . '/.htaccess. Please check the file permissions', OC_Log::WARN);
+			OC_Log::write('files',
+				'Can\'t write upload limit to ' . OC::$SERVERROOT . '/.htaccess. Please check the file permissions',
+				OC_Log::WARN);
 		}
 		return false;
 	}
diff --git a/lib/files/cache/cache.php b/lib/files/cache/cache.php
index d696f003c57c13f6943be85ae5841fb3907a7ee8..65f33c5f797cf9952091f8ca0c6ee67f3b4d7aff 100644
--- a/lib/files/cache/cache.php
+++ b/lib/files/cache/cache.php
@@ -56,7 +56,7 @@ class Cache {
 		} else {
 			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*storages`(`id`) VALUES(?)');
 			$query->execute(array($this->storageId));
-			$this->numericId = \OC_DB::insertid('*PREFIX*filecache');
+			$this->numericId = \OC_DB::insertid('*PREFIX*storages');
 		}
 	}
 
@@ -204,7 +204,8 @@ class Cache {
 			$params[] = $this->numericId;
 			$valuesPlaceholder = array_fill(0, count($queryParts), '?');
 
-			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*filecache`(' . implode(', ', $queryParts) . ') VALUES(' . implode(', ', $valuesPlaceholder) . ')');
+			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*filecache`(' . implode(', ', $queryParts) . ')'
+				.' VALUES(' . implode(', ', $valuesPlaceholder) . ')');
 			$query->execute($params);
 
 			return (int)\OC_DB::insertid('*PREFIX*filecache');
@@ -221,7 +222,8 @@ class Cache {
 		list($queryParts, $params) = $this->buildParts($data);
 		$params[] = $id;
 
-		$query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET ' . implode(' = ?, ', $queryParts) . '=? WHERE fileid = ?');
+		$query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET ' . implode(' = ?, ', $queryParts) . '=?'
+			.' WHERE fileid = ?');
 		$query->execute($params);
 	}
 
@@ -343,7 +345,8 @@ class Cache {
 			$query->execute(array($targetPath, md5($targetPath), $child['fileid']));
 		}
 
-		$query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET `path` = ?, `path_hash` = ?, `parent` =? WHERE `fileid` = ?');
+		$query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET `path` = ?, `path_hash` = ?, `parent` =?'
+			.' WHERE `fileid` = ?');
 		$query->execute(array($target, md5($target), $newParentId, $sourceId));
 	}
 
@@ -503,7 +506,8 @@ class Cache {
 	 * @return string|bool the path of the folder or false when no folder matched
 	 */
 	public function getIncomplete() {
-		$query = \OC_DB::prepare('SELECT `path` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `size` = -1 ORDER BY `fileid` DESC LIMIT 1');
+		$query = \OC_DB::prepare('SELECT `path` FROM `*PREFIX*filecache`'
+			.' WHERE `storage` = ? AND `size` = -1 ORDER BY `fileid` DESC LIMIT 1');
 		$query->execute(array($this->numericId));
 		if ($row = $query->fetchRow()) {
 			return $row['path'];
diff --git a/lib/files/cache/legacy.php b/lib/files/cache/legacy.php
index 33d4b8e7c9f037a717d8e64f61e4b7dcabab1fb2..6d1ffa7b40b2f19bd899d9d8ee003259cf80d053 100644
--- a/lib/files/cache/legacy.php
+++ b/lib/files/cache/legacy.php
@@ -51,6 +51,12 @@ class Legacy {
 			$this->cacheHasItems = false;
 			return false;
 		}
+		
+		if ($result === false || property_exists($result, 'error_message_prefix')) {
+			$this->cacheHasItems = false;
+			return false;
+		}		
+		
 		$this->cacheHasItems = (bool)$result->fetchRow();
 		return $this->cacheHasItems;
 	}
diff --git a/lib/files/cache/permissions.php b/lib/files/cache/permissions.php
index d0968337f02cd62f02d175f3c4265ca58531e811..e1735831b9447773d250eeb4386ad1769257452a 100644
--- a/lib/files/cache/permissions.php
+++ b/lib/files/cache/permissions.php
@@ -18,7 +18,7 @@ class Permissions {
 	 * @param \OC\Files\Storage\Storage|string $storage
 	 */
 	public function __construct($storage){
-		if($storage instanceof \OC\Files\Storage\Storage){
+		if($storage instanceof \OC\Files\Storage\Storage) {
 			$this->storageId = $storage->getId();
 		}else{
 			$this->storageId = $storage;
@@ -51,9 +51,11 @@ class Permissions {
 	 */
 	public function set($fileId, $user, $permissions) {
 		if (self::get($fileId, $user) !== -1) {
-			$query = \OC_DB::prepare('UPDATE `*PREFIX*permissions` SET `permissions` = ? WHERE `user` = ? AND `fileid` = ?');
+			$query = \OC_DB::prepare('UPDATE `*PREFIX*permissions` SET `permissions` = ?'
+				.' WHERE `user` = ? AND `fileid` = ?');
 		} else {
-			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*permissions`(`permissions`, `user`, `fileid`) VALUES(?, ?,? )');
+			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*permissions`(`permissions`, `user`, `fileid`)'
+				.' VALUES(?, ?,? )');
 		}
 		$query->execute(array($permissions, $user, $fileId));
 	}
@@ -73,7 +75,8 @@ class Permissions {
 		$params[] = $user;
 		$inPart = implode(', ', array_fill(0, count($fileIds), '?'));
 
-		$query = \OC_DB::prepare('SELECT `fileid`, `permissions` FROM `*PREFIX*permissions` WHERE  `fileid` IN (' . $inPart . ') AND `user` = ?');
+		$query = \OC_DB::prepare('SELECT `fileid`, `permissions` FROM `*PREFIX*permissions`'
+			.' WHERE `fileid` IN (' . $inPart . ') AND `user` = ?');
 		$result = $query->execute($params);
 		$filePermissions = array();
 		while ($row = $result->fetchRow()) {
diff --git a/lib/files/cache/scanner.php b/lib/files/cache/scanner.php
index 2623a167e9f66bf831f03d44a8f9f2b8a235ab07..9c5ce9df7fc1ad2079aef0d962484e3c63b6a521 100644
--- a/lib/files/cache/scanner.php
+++ b/lib/files/cache/scanner.php
@@ -59,9 +59,10 @@ class Scanner {
 	 * scan a single file and store it in the cache
 	 *
 	 * @param string $file
+	 * @param bool $checkExisting check existing folder sizes in the cache instead of always using -1 for folder size
 	 * @return array with metadata of the scanned file
 	 */
-	public function scanFile($file) {
+	public function scanFile($file, $checkExisting = false) {
 		\OC_Hook::emit('\OC\Files\Cache\Scanner', 'scan_file', array('path' => $file, 'storage' => $this->storageId));
 		$data = $this->getData($file);
 		if ($data) {
@@ -74,7 +75,15 @@ class Scanner {
 					$this->scanFile($parent);
 				}
 			}
-			$id = $this->cache->put($file, $data);
+			if ($checkExisting and $cacheData = $this->cache->get($file)) {
+				if ($data['size'] === -1) {
+					$data['size'] = $cacheData['size'];
+				}
+				if ($data['mtime'] === $cacheData['mtime']) {
+					$data['etag'] = $cacheData['etag'];
+				}
+			}
+			$this->cache->put($file, $data);
 		}
 		return $data;
 	}
@@ -98,22 +107,20 @@ class Scanner {
 		if ($this->storage->is_dir($path) && ($dh = $this->storage->opendir($path))) {
 			\OC_DB::beginTransaction();
 			while ($file = readdir($dh)) {
-				if ($file !== '.' and $file !== '..') {
+				if (!$this->isIgnoredFile($file)) {
 					$child = ($path) ? $path . '/' . $file : $file;
-					$data = $this->scanFile($child);
+					$data = $this->scanFile($child, $recursive === self::SCAN_SHALLOW);
 					if ($data) {
-						if ($data['mimetype'] === 'httpd/unix-directory') {
+						if ($data['size'] === -1) {
 							if ($recursive === self::SCAN_RECURSIVE) {
 								$childQueue[] = $child;
 								$data['size'] = 0;
 							} else {
-								$data['size'] = -1;
+								$size = -1;
 							}
-						} else {
 						}
-						if ($data['size'] === -1) {
-							$size = -1;
-						} elseif ($size !== -1) {
+
+						if ($size !== -1) {
 							$size += $data['size'];
 						}
 					}
@@ -135,6 +142,22 @@ class Scanner {
 		return $size;
 	}
 
+	/**
+	 * @brief check if the file should be ignored when scanning
+	 * NOTE: files with a '.part' extension are ignored as well!
+	 *       prevents unfinished put requests to be scanned
+	 * @param String $file
+	 * @return boolean
+	 */
+	private function isIgnoredFile($file) {
+		if ($file === '.' || $file === '..'
+			|| pathinfo($file, PATHINFO_EXTENSION) === 'part'
+		) {
+			return true;
+		}
+		return false;
+	}
+
 	/**
 	 * walk over any folders that are not fully scanned yet and scan them
 	 */
diff --git a/lib/files/cache/upgrade.php b/lib/files/cache/upgrade.php
index eb8c7297c3e6938b7f0f229697318c9777283546..1fe4c5846867b20b5f1bb15803a0000038a6b0eb 100644
--- a/lib/files/cache/upgrade.php
+++ b/lib/files/cache/upgrade.php
@@ -69,7 +69,8 @@ class Upgrade {
 					( `fileid`, `storage`, `path`, `path_hash`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted` )
 					VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
 
-			$insertQuery->execute(array($data['id'], $data['storage'], $data['path'], $data['path_hash'], $data['parent'], $data['name'],
+			$insertQuery->execute(array($data['id'], $data['storage'],
+				$data['path'], $data['path_hash'], $data['parent'], $data['name'],
 				$data['mimetype'], $data['mimepart'], $data['size'], $data['mtime'], $data['encrypted']));
 		}
 	}
diff --git a/lib/files/filesystem.php b/lib/files/filesystem.php
index 71bf3d8708d2f5e6cb9c9489050d4b3972077048..f45308680777d81fc39676f77cbb28806d1fa7ce 100644
--- a/lib/files/filesystem.php
+++ b/lib/files/filesystem.php
@@ -135,7 +135,9 @@ class Filesystem {
 
 	/**
 	 * get the mountpoint of the storage object for a path
-	( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account
+	 * ( note: because a storage is not always mounted inside the fakeroot, the
+	 * returned mountpoint is relative to the absolute root of the filesystem
+	 * and doesn't take the chroot into account )
 	 *
 	 * @param string $path
 	 * @return string
@@ -190,14 +192,14 @@ class Filesystem {
 		}
 	}
 
-	static public function init($root) {
+	static public function init($user, $root) {
 		if (self::$defaultInstance) {
 			return false;
 		}
 		self::$defaultInstance = new View($root);
 
 		//load custom mount config
-		self::initMountPoints();
+		self::initMountPoints($user);
 
 		self::$loaded = true;
 
@@ -318,7 +320,8 @@ class Filesystem {
 
 	/**
 	 * return the path to a local version of the file
-	 * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed
+	 * we need this because we can't know if a file is stored local or not from
+	 * outside the filestorage and for some purposes a local file is needed
 	 *
 	 * @param string $path
 	 * @return string
diff --git a/lib/files/mapper.php b/lib/files/mapper.php
index 90e4e1ca669a9f44d6f2ffc850924001fc2ee9a1..cd163dcbfcd90732d6f1c3e4e13489d229cf6bd4 100644
--- a/lib/files/mapper.php
+++ b/lib/files/mapper.php
@@ -107,24 +107,27 @@ class Mapper
 
 	private function stripLast($path) {
 		if (substr($path, -1) == '/') {
-			$path = substr_replace($path ,'',-1);
+			$path = substr_replace($path, '', -1);
 		}
 		return $path;
 	}
 
 	private function resolveLogicPath($logicPath) {
 		$logicPath = $this->stripLast($logicPath);
-		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*file_map` WHERE `logic_path` = ?');
-		$result = $query->execute(array($logicPath));
+		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*file_map` WHERE `logic_path_hash` = ?');
+		$result = $query->execute(array(md5($logicPath)));
 		$result = $result->fetchRow();
+		if ($result === false) {
+			return null;
+		}
 
 		return $result['physic_path'];
 	}
 
 	private function resolvePhysicalPath($physicalPath) {
 		$physicalPath = $this->stripLast($physicalPath);
-		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*file_map` WHERE `physic_path` = ?');
-		$result = $query->execute(array($physicalPath));
+		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*file_map` WHERE `physic_path_hash` = ?');
+		$result = $query->execute(array(md5($physicalPath)));
 		$result = $result->fetchRow();
 
 		return $result['logic_path'];
@@ -151,8 +154,8 @@ class Mapper
 	}
 
 	private function insert($logicPath, $physicalPath) {
-		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*file_map`(`logic_path`,`physic_path`) VALUES(?,?)');
-		$query->execute(array($logicPath, $physicalPath));
+		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*file_map`(`logic_path`, `physic_path`, `logic_path_hash`, `physic_path_hash`) VALUES(?, ?, ?, ?)');
+		$query->execute(array($logicPath, $physicalPath, md5($logicPath), md5($physicalPath)));
 	}
 
 	private function slugifyPath($path, $index=null) {
@@ -160,11 +163,16 @@ class Mapper
 		$sluggedElements = array();
 
 		// skip slugging the drive letter on windows - TODO: test if local path
-		if (strpos(strtolower(php_uname('s')), 'win') !== false) {
+		if (\OC_Util::runningOnWindows()) {
 			$sluggedElements[]= $pathElements[0];
 			array_shift($pathElements);
 		}
 		foreach ($pathElements as $pathElement) {
+			// remove empty elements
+			if (empty($pathElement)) {
+				continue;
+			}
+
 			// TODO: remove file ext before slugify on last element
 			$sluggedElements[] = self::slugify($pathElement);
 		}
@@ -177,6 +185,12 @@ class Mapper
 			array_pop($sluggedElements);
 			array_push($sluggedElements, $last.'-'.$index);
 		}
+
+		// on non-windows systems add the leading / if necessary
+		if (!\OC_Util::runningOnWindows() and $path[0] === '/') {
+			return DIRECTORY_SEPARATOR.implode(DIRECTORY_SEPARATOR, $sluggedElements);
+		}
+
 		return implode(DIRECTORY_SEPARATOR, $sluggedElements);
 	}
 
diff --git a/lib/files/storage/common.php b/lib/files/storage/common.php
index 591803f0440988895b1aed1daf1e1475396d70bd..4cdabf1c8a6ebc59c908bbb8379b01250f2735b7 100644
--- a/lib/files/storage/common.php
+++ b/lib/files/storage/common.php
@@ -51,19 +51,19 @@ abstract class Common implements \OC\Files\Storage\Storage {
 	}
 	public function getPermissions($path){
 		$permissions = 0;
-		if($this->isCreatable($path)){
+		if($this->isCreatable($path)) {
 			$permissions |= \OCP\PERMISSION_CREATE;
 		}
-		if($this->isReadable($path)){
+		if($this->isReadable($path)) {
 			$permissions |= \OCP\PERMISSION_READ;
 		}
-		if($this->isUpdatable($path)){
+		if($this->isUpdatable($path)) {
 			$permissions |= \OCP\PERMISSION_UPDATE;
 		}
-		if($this->isDeletable($path)){
+		if($this->isDeletable($path)) {
 			$permissions |= \OCP\PERMISSION_DELETE;
 		}
-		if($this->isSharable($path)){
+		if($this->isSharable($path)) {
 			$permissions |= \OCP\PERMISSION_SHARE;
 		}
 		return $permissions;
@@ -83,21 +83,21 @@ abstract class Common implements \OC\Files\Storage\Storage {
 		}
 		return fread($handle, $size);
 	}
-	public function file_put_contents($path,$data) {
+	public function file_put_contents($path, $data) {
 		$handle = $this->fopen($path, "w");
 		return fwrite($handle, $data);
 	}
-	public function rename($path1,$path2) {
-		if($this->copy($path1,$path2)) {
+	public function rename($path1, $path2) {
+		if($this->copy($path1, $path2)) {
 			return $this->unlink($path1);
 		}else{
 			return false;
 		}
 	}
-	public function copy($path1,$path2) {
-		$source=$this->fopen($path1,'r');
-		$target=$this->fopen($path2,'w');
-		$count=\OC_Helper::streamCopy($source,$target);
+	public function copy($path1, $path2) {
+		$source=$this->fopen($path1, 'r');
+		$target=$this->fopen($path2, 'w');
+		$count=\OC_Helper::streamCopy($source, $target);
 		return $count>0;
 	}
 
@@ -111,9 +111,10 @@ abstract class Common implements \OC\Files\Storage\Storage {
 	 * deleted together with its contents. To avoid this set $empty to true
 	 */
 	public function deleteAll( $directory, $empty = false ) {
-		$directory = trim($directory,'/');
+		$directory = trim($directory, '/');
 
-		if ( !$this->file_exists( \OCP\USER::getUser() . '/' . $directory ) || !$this->is_dir( \OCP\USER::getUser() . '/' . $directory ) ) {
+		if ( !$this->file_exists( \OCP\USER::getUser() . '/' . $directory )
+			|| !$this->is_dir( \OCP\USER::getUser() . '/' . $directory ) ) {
 			return false;
 		} elseif( !$this->isReadable( \OCP\USER::getUser() . '/' . $directory ) ) {
 			return false;
@@ -132,7 +133,7 @@ abstract class Common implements \OC\Files\Storage\Storage {
 			//$this->closedir( $directoryHandle ); // TODO: implement closedir in OC_FSV
 			if ( $empty == false ) {
 				if ( !$this->rmdir( $directory ) ) {
-				return false;
+					return false;
 				}
 			}
 			return true;
@@ -146,25 +147,25 @@ abstract class Common implements \OC\Files\Storage\Storage {
 		if($this->is_dir($path)) {
 			return 'httpd/unix-directory';
 		}
-		$source=$this->fopen($path,'r');
+		$source=$this->fopen($path, 'r');
 		if(!$source) {
 			return false;
 		}
-		$head=fread($source,8192);//8kb should suffice to determine a mimetype
-		if($pos=strrpos($path,'.')) {
-			$extension=substr($path,$pos);
+		$head=fread($source, 8192);//8kb should suffice to determine a mimetype
+		if($pos=strrpos($path, '.')) {
+			$extension=substr($path, $pos);
 		}else{
 			$extension='';
 		}
 		$tmpFile=\OC_Helper::tmpFile($extension);
-		file_put_contents($tmpFile,$head);
+		file_put_contents($tmpFile, $head);
 		$mime=\OC_Helper::getMimeType($tmpFile);
 		unlink($tmpFile);
 		return $mime;
 	}
-	public function hash($type,$path,$raw = false) {
+	public function hash($type, $path, $raw = false) {
 		$tmpFile=$this->getLocalFile($path);
-		$hash=hash($type,$tmpFile,$raw);
+		$hash=hash($type, $tmpFile, $raw);
 		unlink($tmpFile);
 		return $hash;
 	}
@@ -175,42 +176,42 @@ abstract class Common implements \OC\Files\Storage\Storage {
 		return $this->toTmpFile($path);
 	}
 	private function toTmpFile($path) {//no longer in the storage api, still useful here
-		$source=$this->fopen($path,'r');
+		$source=$this->fopen($path, 'r');
 		if(!$source) {
 			return false;
 		}
-		if($pos=strrpos($path,'.')) {
-			$extension=substr($path,$pos);
+		if($pos=strrpos($path, '.')) {
+			$extension=substr($path, $pos);
 		}else{
 			$extension='';
 		}
 		$tmpFile=\OC_Helper::tmpFile($extension);
-		$target=fopen($tmpFile,'w');
-		\OC_Helper::streamCopy($source,$target);
+		$target=fopen($tmpFile, 'w');
+		\OC_Helper::streamCopy($source, $target);
 		return $tmpFile;
 	}
 	public function getLocalFolder($path) {
 		$baseDir=\OC_Helper::tmpFolder();
-		$this->addLocalFolder($path,$baseDir);
+		$this->addLocalFolder($path, $baseDir);
 		return $baseDir;
 	}
-	private function addLocalFolder($path,$target) {
+	private function addLocalFolder($path, $target) {
 		if($dh=$this->opendir($path)) {
 			while($file=readdir($dh)) {
 				if($file!=='.' and $file!=='..') {
 					if($this->is_dir($path.'/'.$file)) {
 						mkdir($target.'/'.$file);
-						$this->addLocalFolder($path.'/'.$file,$target.'/'.$file);
+						$this->addLocalFolder($path.'/'.$file, $target.'/'.$file);
 					}else{
 						$tmp=$this->toTmpFile($path.'/'.$file);
-						rename($tmp,$target.'/'.$file);
+						rename($tmp, $target.'/'.$file);
 					}
 				}
 			}
 		}
 	}
 
-	protected function searchInDir($query,$dir='') {
+	protected function searchInDir($query, $dir='') {
 		$files=array();
 		$dh=$this->opendir($dir);
 		if($dh) {
@@ -220,7 +221,7 @@ abstract class Common implements \OC\Files\Storage\Storage {
 					$files[]=$dir.'/'.$item;
 				}
 				if($this->is_dir($dir.'/'.$item)) {
-					$files=array_merge($files,$this->searchInDir($query,$dir.'/'.$item));
+					$files=array_merge($files, $this->searchInDir($query, $dir.'/'.$item));
 				}
 			}
 		}
@@ -233,7 +234,7 @@ abstract class Common implements \OC\Files\Storage\Storage {
 	 * @param int $time
 	 * @return bool
 	 */
-	public function hasUpdated($path,$time) {
+	public function hasUpdated($path, $time) {
 		return $this->filemtime($path)>$time;
 	}
 
@@ -277,4 +278,27 @@ abstract class Common implements \OC\Files\Storage\Storage {
 			return uniqid();
 		}
 	}
+	
+	/**
+	 * clean a path, i.e. remove all redundant '.' and '..'
+	 * making sure that it can't point to higher than '/'
+	 * @param $path The path to clean
+	 * @return string cleaned path
+	 */
+	public function cleanPath($path) {
+		if (strlen($path) == 0 or $path[0] != '/') {
+			$path = '/' . $path;
+		}
+		
+		$output = array();
+		foreach (explode('/', $path) as $chunk) {
+			if ($chunk == '..') {
+				array_pop($output);
+			} else if ($chunk == '.') {
+			} else {
+				$output[] = $chunk;
+			}
+		}
+		return implode('/', $output);
+	}
 }
diff --git a/lib/files/storage/local.php b/lib/files/storage/local.php
index d387a89832015be212061ab06ce6b116c506a94a..da6597c805772d8b5e6c26cc8976f7cd30aedb0a 100644
--- a/lib/files/storage/local.php
+++ b/lib/files/storage/local.php
@@ -9,7 +9,9 @@
 namespace OC\Files\Storage;
 
 if (\OC_Util::runningOnWindows()) {
-	require_once 'mappedlocal.php';
+	class Local extends MappedLocal {
+
+	}
 } else {
 
 /**
@@ -23,6 +25,8 @@ class Local extends \OC\Files\Storage\Common{
 			$this->datadir.='/';
 		}
 	}
+	public function __destruct() {
+	}
 	public function getId(){
 		return 'local::'.$this->datadir;
 	}
@@ -36,7 +40,7 @@ class Local extends \OC\Files\Storage\Common{
 		return opendir($this->datadir.$path);
 	}
 	public function is_dir($path) {
-		if(substr($path,-1)=='/') {
+		if(substr($path, -1)=='/') {
 			$path=substr($path, 0, -1);
 		}
 		return is_dir($this->datadir.$path);
@@ -113,11 +117,11 @@ class Local extends \OC\Files\Storage\Common{
 	}
 	public function rename($path1, $path2) {
 		if (!$this->isUpdatable($path1)) {
-			\OC_Log::write('core','unable to rename, file is not writable : '.$path1,\OC_Log::ERROR);
+			\OC_Log::write('core', 'unable to rename, file is not writable : '.$path1, \OC_Log::ERROR);
 			return false;
 		}
 		if(! $this->file_exists($path1)) {
-			\OC_Log::write('core','unable to rename, file does not exists : '.$path1,\OC_Log::ERROR);
+			\OC_Log::write('core', 'unable to rename, file does not exists : '.$path1, \OC_Log::ERROR);
 			return false;
 		}
 
@@ -201,7 +205,9 @@ class Local extends \OC\Files\Storage\Common{
 				return (float)exec('stat -c %s ' . escapeshellarg($fullPath));
 			}
 		} else {
-			\OC_Log::write('core', 'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name, \OC_Log::ERROR);
+			\OC_Log::write('core',
+				'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name,
+				\OC_Log::ERROR);
 		}
 
 		return 0;
diff --git a/lib/files/storage/mappedlocal.php b/lib/files/storage/mappedlocal.php
index 80dd79bc41fb4d7228b5d59c544cdd93a48201f1..e707f71d71ce0610a03646fb900340b54b1a84a2 100644
--- a/lib/files/storage/mappedlocal.php
+++ b/lib/files/storage/mappedlocal.php
@@ -10,7 +10,7 @@ namespace OC\Files\Storage;
 /**
  * for local filestore, we only have to map the paths
  */
-class Local extends \OC\Files\Storage\Common{
+class MappedLocal extends \OC\Files\Storage\Common{
 	protected $datadir;
 	private $mapper;
 
@@ -61,7 +61,7 @@ class Local extends \OC\Files\Storage\Common{
 		return opendir('fakedir://local-win32'.$path);
 	}
 	public function is_dir($path) {
-		if(substr($path,-1)=='/') {
+		if(substr($path, -1)=='/') {
 			$path=substr($path, 0, -1);
 		}
 		return is_dir($this->buildPath($path));
@@ -138,11 +138,11 @@ class Local extends \OC\Files\Storage\Common{
 	}
 	public function rename($path1, $path2) {
 		if (!$this->isUpdatable($path1)) {
-			\OC_Log::write('core','unable to rename, file is not writable : '.$path1,\OC_Log::ERROR);
+			\OC_Log::write('core', 'unable to rename, file is not writable : '.$path1, \OC_Log::ERROR);
 			return false;
 		}
 		if(! $this->file_exists($path1)) {
-			\OC_Log::write('core','unable to rename, file does not exists : '.$path1,\OC_Log::ERROR);
+			\OC_Log::write('core', 'unable to rename, file does not exists : '.$path1, \OC_Log::ERROR);
 			return false;
 		}
 
@@ -248,7 +248,9 @@ class Local extends \OC\Files\Storage\Common{
 				return (float)exec('stat -c %s ' . escapeshellarg($fullPath));
 			}
 		} else {
-			\OC_Log::write('core', 'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name, \OC_Log::ERROR);
+			\OC_Log::write('core',
+				'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name,
+				\OC_Log::ERROR);
 		}
 
 		return 0;
@@ -329,6 +331,9 @@ class Local extends \OC\Files\Storage\Common{
 		if(strpos($path, '/') === 0) {
 			$path = substr($path, 1);
 		}
+		if ($path === false) {
+			return '';
+		}
 
 		return $path;
 	}
diff --git a/lib/files/storage/temporary.php b/lib/files/storage/temporary.php
index 542d2cd9f48ad466da6abe4a5346ac1edfa1afbd..d84dbda2e39dd844e68ddf0c9bad7cfb2206fe3c 100644
--- a/lib/files/storage/temporary.php
+++ b/lib/files/storage/temporary.php
@@ -21,6 +21,7 @@ class Temporary extends Local{
 	}
 
 	public function __destruct() {
+		parent::__destruct();
 		$this->cleanUp();
 	}
 }
diff --git a/lib/files/view.php b/lib/files/view.php
index 69e2f1ad349bb68978e28497d0c4a43f2688ee9a..3348244715eb4537d80dc35e38a7d81d9b2562b8 100644
--- a/lib/files/view.php
+++ b/lib/files/view.php
@@ -92,7 +92,9 @@ class View {
 
 	/**
 	 * get the mountpoint of the storage object for a path
-	( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account
+	 * ( note: because a storage is not always mounted inside the fakeroot, the
+	 * returned mountpoint is relative to the absolute root of the filesystem
+	 * and doesn't take the chroot into account )
 	 *
 	 * @param string $path
 	 * @return string
@@ -113,7 +115,8 @@ class View {
 
 	/**
 	 * return the path to a local version of the file
-	 * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed
+	 * we need this because we can't know if a file is stored local or not from
+	 * outside the filestorage and for some purposes a local file is needed
 	 *
 	 * @param string $path
 	 * @return string
@@ -256,7 +259,8 @@ class View {
 	public function file_put_contents($path, $data) {
 		if (is_resource($data)) { //not having to deal with streams in file_put_contents makes life easier
 			$absolutePath = Filesystem::normalizePath($this->getAbsolutePath($path));
-			if (\OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && Filesystem::isValidPath($path)) {
+			if (\OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data)
+				&& Filesystem::isValidPath($path)) {
 				$path = $this->getRelativePath($absolutePath);
 				$exists = $this->file_exists($path);
 				$run = true;
@@ -328,7 +332,8 @@ class View {
 		$postFix2 = (substr($path2, -1, 1) === '/') ? '/' : '';
 		$absolutePath1 = Filesystem::normalizePath($this->getAbsolutePath($path1));
 		$absolutePath2 = Filesystem::normalizePath($this->getAbsolutePath($path2));
-		if (\OC_FileProxy::runPreProxies('rename', $absolutePath1, $absolutePath2) and Filesystem::isValidPath($path2)) {
+		if (\OC_FileProxy::runPreProxies('rename', $absolutePath1, $absolutePath2)
+			and Filesystem::isValidPath($path2)) {
 			$path1 = $this->getRelativePath($absolutePath1);
 			$path2 = $this->getRelativePath($absolutePath2);
 
@@ -780,7 +785,8 @@ class View {
 					$rootEntry = $subCache->get('');
 					if ($rootEntry) {
 						$relativePath = trim(substr($mountPoint, $dirLength), '/');
-						if ($pos = strpos($relativePath, '/')) { //mountpoint inside subfolder add size to the correct folder
+						if ($pos = strpos($relativePath, '/')) {
+							//mountpoint inside subfolder add size to the correct folder
 							$entryName = substr($relativePath, 0, $pos);
 							foreach ($files as &$entry) {
 								if ($entry['name'] === $entryName) {
diff --git a/lib/filesystem.php b/lib/filesystem.php
index 57cca9023031fcb3171b98075d852e9a4b797b6f..34f92b357ca51d95c480b8aceecce8c28e040550 100644
--- a/lib/filesystem.php
+++ b/lib/filesystem.php
@@ -34,7 +34,9 @@
 class OC_Filesystem {
 	/**
 	 * get the mountpoint of the storage object for a path
-	( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account
+	 * ( note: because a storage is not always mounted inside the fakeroot, the
+	 * returned mountpoint is relative to the absolute root of the filesystem
+	 * and doesn't take the chroot into account )
 	 *
 	 * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem
 	 * @param string $path
@@ -58,8 +60,8 @@ class OC_Filesystem {
 	/**
 	 * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem
 	 */
-	static public function init($root) {
-		return \OC\Files\Filesystem::init($root);
+	static public function init($user, $root) {
+		return \OC\Files\Filesystem::init($user, $root);
 	}
 
 	/**
@@ -115,7 +117,8 @@ class OC_Filesystem {
 
 	/**
 	 * return the path to a local version of the file
-	 * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed
+	 * we need this because we can't know if a file is stored local or not from
+	 * outside the filestorage and for some purposes a local file is needed
 	 *
 	 * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem
 	 * @param string $path
diff --git a/lib/group.php b/lib/group.php
index 5afef7693610ac4018945afdf52718b0ab24bee0..6afe1440030f8fe35cd981da03cb3d09ed810170 100644
--- a/lib/group.php
+++ b/lib/group.php
@@ -311,7 +311,12 @@ class OC_Group {
 		$displayNames = array();
 		foreach ($gids as $gid) {
 			// TODO Need to apply limits to groups as total
-			$displayNames = array_merge(array_diff(self::displayNamesInGroup($gid, $search, $limit, $offset), $displayNames), $displayNames);
+			$displayNames = array_merge(
+				array_diff(
+					self::displayNamesInGroup($gid, $search, $limit, $offset),
+					$displayNames
+				),
+				$displayNames);
 		}
 		return $displayNames;
 	}
diff --git a/lib/group/database.php b/lib/group/database.php
index 1e2328f4c08f32c59c6e87bea2fba82ef1fbcd3b..8816dd8169c216f4b79b20994ea306c81a24eec6 100644
--- a/lib/group/database.php
+++ b/lib/group/database.php
@@ -200,7 +200,9 @@ class OC_Group_Database extends OC_Group_Backend {
 	 * @return array with user ids
 	 */
 	public function usersInGroup($gid, $search = '', $limit = null, $offset = null) {
-		$stmt = OC_DB::prepare('SELECT `uid` FROM `*PREFIX*group_user` WHERE `gid` = ? AND `uid` LIKE ?', $limit, $offset);
+		$stmt = OC_DB::prepare('SELECT `uid` FROM `*PREFIX*group_user` WHERE `gid` = ? AND `uid` LIKE ?',
+			$limit,
+			$offset);
 		$result = $stmt->execute(array($gid, $search.'%'));
 		$users = array();
 		while ($row = $result->fetchRow()) {
@@ -220,7 +222,12 @@ class OC_Group_Database extends OC_Group_Backend {
 	public function DisplayNamesInGroup($gid, $search = '', $limit = -1, $offset = 0) {
 		$displayNames = '';
 
-		$stmt = OC_DB::prepare('SELECT `*PREFIX*users`.`uid`, `*PREFIX*users`.`displayname` FROM `*PREFIX*users` INNER JOIN `*PREFIX*group_user` ON `*PREFIX*group_user`.`uid` = `*PREFIX*users`.`uid`  WHERE `gid` = ? AND `*PREFIX*group_user.uid` LIKE ?', $limit, $offset);
+		$stmt = OC_DB::prepare('SELECT `*PREFIX*users`.`uid`, `*PREFIX*users`.`displayname`'
+			.' FROM `*PREFIX*users`'
+			.' INNER JOIN `*PREFIX*group_user` ON `*PREFIX*group_user`.`uid` = `*PREFIX*users`.`uid`'
+			.' WHERE `gid` = ? AND `*PREFIX*group_user.uid` LIKE ?',
+			$limit,
+			$offset);
 		$result = $stmt->execute(array($gid, $search.'%'));
 		$users = array();
 		while ($row = $result->fetchRow()) {
diff --git a/lib/helper.php b/lib/helper.php
index a0fbdd10394f3e904d71fe0d24b62d76cb22aa05..0f810ffc0c2dc885749a6992ad9eaf43f9006fa2 100644
--- a/lib/helper.php
+++ b/lib/helper.php
@@ -132,7 +132,8 @@ class OC_Helper {
 	 * Returns a absolute url to the given service.
 	 */
 	public static function linkToRemote( $service, $add_slash = true ) {
-		return self::makeURLAbsolute(self::linkToRemoteBase($service)) . (($add_slash && $service[strlen($service)-1]!='/')?'/':'');
+		return self::makeURLAbsolute(self::linkToRemoteBase($service))
+			. (($add_slash && $service[strlen($service)-1]!='/')?'/':'');
 	}
 
 	/**
@@ -144,7 +145,8 @@ class OC_Helper {
 	 * Returns a absolute url to the given service.
 	 */
 	public static function linkToPublic($service, $add_slash = false) {
-		return self::linkToAbsolute( '', 'public.php') . '?service=' . $service . (($add_slash && $service[strlen($service)-1]!='/')?'/':'');
+		return self::linkToAbsolute( '', 'public.php') . '?service=' . $service
+			. (($add_slash && $service[strlen($service)-1]!='/')?'/':'');
 	}
 
 	/**
@@ -379,7 +381,8 @@ class OC_Helper {
 			$mimeType='application/octet-stream';
 		}
 
-		if($mimeType=='application/octet-stream' and function_exists('finfo_open') and function_exists('finfo_file') and $finfo=finfo_open(FILEINFO_MIME)) {
+		if($mimeType=='application/octet-stream' and function_exists('finfo_open')
+			and function_exists('finfo_file') and $finfo=finfo_open(FILEINFO_MIME)) {
 			$info = @strtolower(finfo_file($finfo, $path));
 			if($info) {
 				$mimeType=substr($info, 0, strpos($info, ';'));
@@ -436,14 +439,16 @@ class OC_Helper {
 	//FIXME: should also check for value validation (i.e. the email is an email).
 	public static function init_var($s, $d="") {
 		$r = $d;
-		if(isset($_REQUEST[$s]) && !empty($_REQUEST[$s]))
-			$r = stripslashes(htmlspecialchars($_REQUEST[$s]));
+		if(isset($_REQUEST[$s]) && !empty($_REQUEST[$s])) {
+			$r = OC_Util::sanitizeHTML($_REQUEST[$s]);
+		}
 
 		return $r;
 	}
 
 	/**
-	 * returns "checked"-attribute if request contains selected radio element OR if radio element is the default one -- maybe?
+	 * returns "checked"-attribute if request contains selected radio element
+	 * OR if radio element is the default one -- maybe?
 	 * @param string $s Name of radio-button element name
 	 * @param string $v Value of current radio-button element
 	 * @param string $d Value of default radio-button element
diff --git a/lib/hook.php b/lib/hook.php
index e30aefb5e1814efcda7f25306767edf0f55cf9fd..554381251d6db749513c64bc3d783a111d8a52e5 100644
--- a/lib/hook.php
+++ b/lib/hook.php
@@ -33,8 +33,9 @@ class OC_Hook{
 		
 		// Connect the hook handler to the requested emitter
 		self::$registered[$signalclass][$signalname][] = array(
-		  "class" => $slotclass,
-		  "name" => $slotname );
+				"class" => $slotclass,
+				"name" => $slotname
+		);
 		
 		// No chance for failure ;-)
 		return true;
@@ -70,7 +71,9 @@ class OC_Hook{
 			try {
 				call_user_func( array( $i["class"], $i["name"] ), $params );
 			} catch (Exception $e){
-				OC_Log::write('hook', 'error while running hook (' . $i["class"] . '::' . $i["name"] . '): '.$e->getMessage(), OC_Log::ERROR);
+				OC_Log::write('hook',
+					'error while running hook (' . $i["class"] . '::' . $i["name"] . '): '.$e->getMessage(),
+					OC_Log::ERROR);
 			}
 		}
 
diff --git a/lib/image.php b/lib/image.php
index eaa35350bcb562c5bad2e9fb3a7dd72c005fcc15..7b0cbefd6570fa0c2dd7ff2f5a7fd3bf6dc45a48 100644
--- a/lib/image.php
+++ b/lib/image.php
@@ -169,7 +169,9 @@ class OC_Image {
 			if (!file_exists(dirname($filepath)))
 				mkdir(dirname($filepath), 0777, true);
 			if(!is_writable(dirname($filepath))) {
-				OC_Log::write('core', __METHOD__.'(): Directory \''.dirname($filepath).'\' is not writable.', OC_Log::ERROR);
+				OC_Log::write('core',
+					__METHOD__.'(): Directory \''.dirname($filepath).'\' is not writable.',
+					OC_Log::ERROR);
 				return false;
 			} elseif(is_writable(dirname($filepath)) && file_exists($filepath) && !is_writable($filepath)) {
 				OC_Log::write('core', __METHOD__.'(): File \''.$filepath.'\' is not writable.', OC_Log::ERROR);
@@ -394,35 +396,45 @@ class OC_Image {
 				if (imagetypes() & IMG_GIF) {
 					$this->resource = imagecreatefromgif($imagepath);
 				} else {
-					OC_Log::write('core', 'OC_Image->loadFromFile, GIF images not supported: '.$imagepath, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'OC_Image->loadFromFile, GIF images not supported: '.$imagepath,
+						OC_Log::DEBUG);
 				}
 				break;
 			case IMAGETYPE_JPEG:
 				if (imagetypes() & IMG_JPG) {
 					$this->resource = imagecreatefromjpeg($imagepath);
 				} else {
-					OC_Log::write('core', 'OC_Image->loadFromFile, JPG images not supported: '.$imagepath, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'OC_Image->loadFromFile, JPG images not supported: '.$imagepath,
+						OC_Log::DEBUG);
 				}
 				break;
 			case IMAGETYPE_PNG:
 				if (imagetypes() & IMG_PNG) {
 					$this->resource = imagecreatefrompng($imagepath);
 				} else {
-					OC_Log::write('core', 'OC_Image->loadFromFile, PNG images not supported: '.$imagepath, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'OC_Image->loadFromFile, PNG images not supported: '.$imagepath,
+						OC_Log::DEBUG);
 				}
 				break;
 			case IMAGETYPE_XBM:
 				if (imagetypes() & IMG_XPM) {
 					$this->resource = imagecreatefromxbm($imagepath);
 				} else {
-					OC_Log::write('core', 'OC_Image->loadFromFile, XBM/XPM images not supported: '.$imagepath, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'OC_Image->loadFromFile, XBM/XPM images not supported: '.$imagepath,
+						OC_Log::DEBUG);
 				}
 				break;
 			case IMAGETYPE_WBMP:
 				if (imagetypes() & IMG_WBMP) {
 					$this->resource = imagecreatefromwbmp($imagepath);
 				} else {
-					OC_Log::write('core', 'OC_Image->loadFromFile, WBMP images not supported: '.$imagepath, OC_Log::DEBUG);
+					OC_Log::write('core',
+						'OC_Image->loadFromFile, WBMP images not supported: '.$imagepath,
+						OC_Log::DEBUG);
 				}
 				break;
 			case IMAGETYPE_BMP:
@@ -633,7 +645,9 @@ class OC_Image {
 						$color[1] = $palette[ $color[1] + 1 ];
 						break;
 					default:
-						trigger_error('imagecreatefrombmp: ' . $filename . ' has ' . $meta['bits'] . ' bits and this is not supported!', E_USER_WARNING);
+						trigger_error('imagecreatefrombmp: '
+							. $filename . ' has ' . $meta['bits'] . ' bits and this is not supported!',
+							E_USER_WARNING);
 						return false;
 				}
 				imagesetpixel($im, $x, $y, $color[1]);
@@ -739,7 +753,9 @@ class OC_Image {
 		}
 		imagecopyresampled($process, $this->resource, 0, 0, $x, $y, $targetWidth, $targetHeight, $width, $height);
 		if ($process == false) {
-			OC_Log::write('core', 'OC_Image->centerCrop. Error resampling process image '.$width.'x'.$height, OC_Log::ERROR);
+			OC_Log::write('core',
+				'OC_Image->centerCrop. Error resampling process image '.$width.'x'.$height,
+				OC_Log::ERROR);
 			imagedestroy($process);
 			return false;
 		}
diff --git a/lib/installer.php b/lib/installer.php
index c86f801b5fcf68cdb59045c59a284879021bdaba..251d115b76c9ae297cf089cf832ef90f70c6e796 100644
--- a/lib/installer.php
+++ b/lib/installer.php
@@ -136,21 +136,29 @@ class OC_Installer{
 		// check if the app is compatible with this version of ownCloud
 		$version=OC_Util::getVersion();
 		if(!isset($info['require']) or ($version[0]>$info['require'])) {
-			OC_Log::write('core', 'App can\'t be installed because it is not compatible with this version of ownCloud', OC_Log::ERROR);
+			OC_Log::write('core',
+				'App can\'t be installed because it is not compatible with this version of ownCloud',
+				OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
 			return false;
 		}
 
 		// check if shipped tag is set which is only allowed for apps that are shipped with ownCloud
 		if(isset($info['shipped']) and ($info['shipped']=='true')) {
-			OC_Log::write('core', 'App can\'t be installed because it contains the <shipped>true</shippe> tag which is not allowed for non shipped apps', OC_Log::ERROR);
+			OC_Log::write('core',
+				'App can\'t be installed because it contains the <shipped>true</shippe>'
+				.' tag which is not allowed for non shipped apps',
+				OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
 			return false;
 		}
 
 		// check if the ocs version is the same as the version in info.xml/version
 		if(!isset($info['version']) or ($info['version']<>$data['appdata']['version'])) {
-			OC_Log::write('core', 'App can\'t be installed because the version in info.xml/version is not the same as the version reported from the app store', OC_Log::ERROR);
+			OC_Log::write('core',
+				'App can\'t be installed because the version in info.xml/version is not the same'
+				.' as the version reported from the app store',
+				OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
 			return false;
 		}
@@ -251,7 +259,8 @@ class OC_Installer{
 	 *   -# including appinfo/upgrade.php
 	 *   -# setting the installed version
 	 *
-	 * upgrade.php can determine the current installed version of the app using "OC_Appconfig::getValue($appid, 'installed_version')"
+	 * upgrade.php can determine the current installed version of the app using
+	 * "OC_Appconfig::getValue($appid, 'installed_version')"
 	 */
 	public static function updateApp( $app ) {
 		$ocsid=OC_Appconfig::getValue( $app, 'ocsid');
@@ -270,12 +279,12 @@ class OC_Installer{
 	public static function isUpdateAvailable( $app ) {
 		$ocsid=OC_Appconfig::getValue( $app, 'ocsid', '');
 
-		if($ocsid<>''){
+		if($ocsid<>'') {
 
 			$ocsdata=OC_OCSClient::getApplication($ocsid);
 			$ocsversion= (string) $ocsdata['version'];
 			$currentversion=OC_App::getAppVersion($app);
-			if($ocsversion<>$currentversion){
+			if($ocsversion<>$currentversion) {
 				return($ocsversion);
 
 			}else{
@@ -326,22 +335,22 @@ class OC_Installer{
 	 */
 	public static function removeApp( $name, $options = array()) {
 
-		if(isset($options['keeppreferences']) and $options['keeppreferences']==false ){
+		if(isset($options['keeppreferences']) and $options['keeppreferences']==false ) {
 			// todo
 			// remove preferences
 		}
 
-		if(isset($options['keepappconfig']) and $options['keepappconfig']==false ){
+		if(isset($options['keepappconfig']) and $options['keepappconfig']==false ) {
 			// todo
 			// remove app config
 		}
 
-		if(isset($options['keeptables']) and $options['keeptables']==false ){
+		if(isset($options['keeptables']) and $options['keeptables']==false ) {
 			// todo
 			// remove app database tables
 		}
 
-		if(isset($options['keepfiles']) and $options['keepfiles']==false ){
+		if(isset($options['keepfiles']) and $options['keepfiles']==false ) {
 			// todo
 			// remove user files
 		}
@@ -437,7 +446,9 @@ class OC_Installer{
 			// check if grep is installed
 			$grep = exec('which grep');
 			if($grep=='') {
-				OC_Log::write('core', 'grep not installed. So checking the code of the app "'.$appname.'" was not possible', OC_Log::ERROR);
+				OC_Log::write('core',
+					'grep not installed. So checking the code of the app "'.$appname.'" was not possible',
+					OC_Log::ERROR);
 				return true;
 			}
 
@@ -447,7 +458,9 @@ class OC_Installer{
 				$result = exec($cmd);
 				// bad pattern found
 				if($result<>'') {
-					OC_Log::write('core', 'App "'.$appname.'" is using a not allowed call "'.$bl.'". Installation refused.', OC_Log::ERROR);
+					OC_Log::write('core',
+						'App "'.$appname.'" is using a not allowed call "'.$bl.'". Installation refused.',
+						OC_Log::ERROR);
 					return false;
 				}
 			}
diff --git a/lib/l10n.php b/lib/l10n.php
index e272bcd79f3e7e1c81558fb1b4ad2d47830586fe..1e07a9b9557c1063dbeb229c450998ee3869c419 100644
--- a/lib/l10n.php
+++ b/lib/l10n.php
@@ -343,7 +343,7 @@ class OC_L10N{
 		if(is_dir($dir)) {
 			$files=scandir($dir);
 			foreach($files as $file) {
-				if(substr($file, -4, 4) == '.php') {
+				if(substr($file, -4, 4) === '.php' && substr($file, 0, 4) !== 'l10n') {
 					$i = substr($file, 0, -4);
 					$available[] = $i;
 				}
diff --git a/lib/l10n/bg_BG.php b/lib/l10n/bg_BG.php
index fed7f29cbb23e90fb33f9c80740f7802ecaa9f3f..d80e03608a2ac253f54992da25a8cc0fe13f8f9e 100644
--- a/lib/l10n/bg_BG.php
+++ b/lib/l10n/bg_BG.php
@@ -16,6 +16,11 @@
 "Files" => "Файлове",
 "Text" => "Текст",
 "Images" => "Снимки",
+"Set an admin username." => "Въведете потребителско име за администратор.",
+"Set an admin password." => "Въведете парола за администратор.",
+"Specify a data folder." => "Укажете папка за данни",
+"%s enter the database username." => "%s въведете потребителско име за базата с данни.",
+"%s enter the database name." => "%s въведете име на базата с данни.",
 "seconds ago" => "преди секунди",
 "1 minute ago" => "преди 1 минута",
 "%d minutes ago" => "преди %d минути",
diff --git a/lib/l10n/ca.php b/lib/l10n/ca.php
index f6401fa39b6061907862d857f6c9a5b1dae54b07..3e3938aa6cb20737075ad2e4f526a23d98a80e77 100644
--- a/lib/l10n/ca.php
+++ b/lib/l10n/ca.php
@@ -16,6 +16,26 @@
 "Files" => "Fitxers",
 "Text" => "Text",
 "Images" => "Imatges",
+"Set an admin username." => "Establiu un nom d'usuari per l'administrador.",
+"Set an admin password." => "Establiu una contrasenya per l'administrador.",
+"Specify a data folder." => "Especifiqueu una carpeta de dades.",
+"%s enter the database username." => "%s escriviu el nom d'usuari de la base de dades.",
+"%s enter the database name." => "%s escriviu el nom de la base de dades.",
+"%s you may not use dots in the database name" => "%s no podeu usar punts en el nom de la base de dades",
+"%s set the database host." => "%s establiu l'ordinador central de la base de dades.",
+"PostgreSQL username and/or password not valid" => "Nom d'usuari i/o contrasenya PostgreSQL no vàlids",
+"You need to enter either an existing account or the administrator." => "Heu d'escriure un compte existent o el d'administrador.",
+"Oracle username and/or password not valid" => "Nom d'usuari i/o contrasenya Oracle no vàlids",
+"MySQL username and/or password not valid" => "Nom d'usuari i/o contrasenya MySQL no vàlids",
+"DB Error: \"%s\"" => "Error DB: \"%s\"",
+"Offending command was: \"%s\"" => "L'ordre en conflicte és: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "L'usuari MySQL '%s'@'localhost' ja existeix.",
+"Drop this user from MySQL" => "Elimina aquest usuari de MySQL",
+"MySQL user '%s'@'%%' already exists" => "L'usuari MySQL '%s'@'%%' ja existeix",
+"Drop this user from MySQL." => "Elimina aquest usuari de MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "L'ordre en conflicte és: \"%s\", nom: %s, contrasenya: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "El servidor web no està configurat correctament per permetre la sincronització de fitxers perquè la interfície WebDAV sembla no funcionar correctament.",
+"Please double check the <a href='%s'>installation guides</a>." => "Comproveu les <a href='%s'>guies d'instal·lació</a>.",
 "seconds ago" => "segons enrere",
 "1 minute ago" => "fa 1 minut",
 "%d minutes ago" => "fa %d minuts",
diff --git a/lib/l10n/cs_CZ.php b/lib/l10n/cs_CZ.php
index 2c823194b9612cd7c234fc4879b9193493ab3028..d99f259cb0ffddfef1667f4d6100d4e924892b0f 100644
--- a/lib/l10n/cs_CZ.php
+++ b/lib/l10n/cs_CZ.php
@@ -16,6 +16,26 @@
 "Files" => "Soubory",
 "Text" => "Text",
 "Images" => "Obrázky",
+"Set an admin username." => "Zadejte uživatelské jméno správce.",
+"Set an admin password." => "Zadejte heslo správce.",
+"Specify a data folder." => "Určete složku dat.",
+"%s enter the database username." => "Zadejte uživatelské jméno %s databáze.",
+"%s enter the database name." => "Zadejte název databáze pro %s databáze.",
+"%s you may not use dots in the database name" => "V názvu databáze %s nesmíte používat tečky.",
+"%s set the database host." => "Zadejte název počítače s databází %s.",
+"PostgreSQL username and/or password not valid" => "Uživatelské jméno, či heslo PostgreSQL není platné",
+"You need to enter either an existing account or the administrator." => "Musíte zadat existující účet, či správce.",
+"Oracle username and/or password not valid" => "Uživatelské jméno, či heslo Oracle není platné",
+"MySQL username and/or password not valid" => "Uživatelské jméno, či heslo MySQL není platné",
+"DB Error: \"%s\"" => "Chyba DB: \"%s\"",
+"Offending command was: \"%s\"" => "Podezřelý příkaz byl: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "Uživatel '%s'@'localhost' již v MySQL existuje.",
+"Drop this user from MySQL" => "Zahodit uživatele z MySQL",
+"MySQL user '%s'@'%%' already exists" => "Uživatel '%s'@'%%' již v MySQL existuje",
+"Drop this user from MySQL." => "Zahodit uživatele z MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Podezřelý příkaz byl: \"%s\", jméno: %s, heslo: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Váš webový server není správně nastaven pro umožnění synchronizace, protože rozhraní WebDAV je rozbité.",
+"Please double check the <a href='%s'>installation guides</a>." => "Zkonzultujte, prosím, <a href='%s'>průvodce instalací</a>.",
 "seconds ago" => "před vteřinami",
 "1 minute ago" => "před 1 minutou",
 "%d minutes ago" => "před %d minutami",
diff --git a/lib/l10n/da.php b/lib/l10n/da.php
index 8f22be5e8237da5485126d0ece3a3f988efc998d..e61fba30ff3808e12ff4fea8fbef5da7a33cf4a8 100644
--- a/lib/l10n/da.php
+++ b/lib/l10n/da.php
@@ -16,6 +16,26 @@
 "Files" => "Filer",
 "Text" => "SMS",
 "Images" => "Billeder",
+"Set an admin username." => "Angiv et admin brugernavn.",
+"Set an admin password." => "Angiv et admin kodeord.",
+"Specify a data folder." => "Specificer en data mappe.",
+"%s enter the database username." => "%s indtast database brugernavnet.",
+"%s enter the database name." => "%s indtast database navnet.",
+"%s you may not use dots in the database name" => "%s du må ikke bruge punktummer i databasenavnet.",
+"%s set the database host." => "%s sæt database værten.",
+"PostgreSQL username and/or password not valid" => "PostgreSQL brugernavn og/eller kodeord er ikke gyldigt.",
+"You need to enter either an existing account or the administrator." => "Du bliver nødt til at indtaste en eksisterende bruger eller en administrator.",
+"Oracle username and/or password not valid" => "Oracle brugernavn og/eller kodeord er ikke gyldigt.",
+"MySQL username and/or password not valid" => "MySQL brugernavn og/eller kodeord er ikke gyldigt.",
+"DB Error: \"%s\"" => "Databasefejl: \"%s\"",
+"Offending command was: \"%s\"" => "Fejlende kommando var: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL brugeren '%s'@'localhost' eksisterer allerede.",
+"Drop this user from MySQL" => "Slet denne bruger fra MySQL",
+"MySQL user '%s'@'%%' already exists" => "MySQL brugeren '%s'@'%%' eksisterer allerede.",
+"Drop this user from MySQL." => "Slet denne bruger fra MySQL",
+"Offending command was: \"%s\", name: %s, password: %s" => "Fejlende kommando var: \"%s\", navn: %s, password: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Din webserver er endnu ikke sat op til at tillade fil synkronisering fordi WebDAV grænsefladen virker ødelagt.",
+"Please double check the <a href='%s'>installation guides</a>." => "Dobbelttjek venligst <a href='%s'>installations vejledningerne</a>.",
 "seconds ago" => "sekunder siden",
 "1 minute ago" => "1 minut siden",
 "%d minutes ago" => "%d minutter siden",
diff --git a/lib/l10n/de.php b/lib/l10n/de.php
index c285a07f63aeb69fa432ad0f8fe3886e4af9f2cf..f65ee5cfa3b871455aee5061ab60103b20b3e434 100644
--- a/lib/l10n/de.php
+++ b/lib/l10n/de.php
@@ -16,6 +16,26 @@
 "Files" => "Dateien",
 "Text" => "Text",
 "Images" => "Bilder",
+"Set an admin username." => "Setze Administrator Benutzername.",
+"Set an admin password." => "Setze Administrator Passwort",
+"Specify a data folder." => "Datei-Verzeichnis angeben",
+"%s enter the database username." => "%s gib den Datenbank-Benutzernamen an.",
+"%s enter the database name." => "%s gib den Datenbank-Namen an.",
+"%s you may not use dots in the database name" => "%s Der Datenbank-Name darf keine Punkte enthalten",
+"%s set the database host." => "%s setze den Datenbank-Host",
+"PostgreSQL username and/or password not valid" => "PostgreSQL Benutzername und/oder Passwort ungültig",
+"You need to enter either an existing account or the administrator." => "Sie müssen entweder ein existierendes Benutzerkonto oder das Administratoren-Konto angeben.",
+"Oracle username and/or password not valid" => "Oracle Benutzername und/oder Passwort ungültig",
+"MySQL username and/or password not valid" => "MySQL Benutzername und/oder Passwort ungültig",
+"DB Error: \"%s\"" => "DB Fehler: \"%s\"",
+"Offending command was: \"%s\"" => "Fehlerhafter Befehl war: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL Benutzer '%s'@'localhost' existiert bereits.",
+"Drop this user from MySQL" => "Lösche diesen Benutzer von MySQL",
+"MySQL user '%s'@'%%' already exists" => "MySQL Benutzer '%s'@'%%' existiert bereits",
+"Drop this user from MySQL." => "Lösche diesen Benutzer von MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Fehlerhafter Befehl war: \"%s\", Name: %s, Passwort: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Dein Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
+"Please double check the <a href='%s'>installation guides</a>." => "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>.",
 "seconds ago" => "Gerade eben",
 "1 minute ago" => "Vor einer Minute",
 "%d minutes ago" => "Vor %d Minuten",
diff --git a/lib/l10n/de_DE.php b/lib/l10n/de_DE.php
index 625ba2ecf2076c6be4a018e80c7bb8a1dd60cda8..1f63fdd87b0f49df51c20963b99b574ff5c2ced1 100644
--- a/lib/l10n/de_DE.php
+++ b/lib/l10n/de_DE.php
@@ -16,6 +16,26 @@
 "Files" => "Dateien",
 "Text" => "Text",
 "Images" => "Bilder",
+"Set an admin username." => "Setze Administrator Benutzername.",
+"Set an admin password." => "Setze Administrator Passwort",
+"Specify a data folder." => "Datei-Verzeichnis angeben",
+"%s enter the database username." => "%s geben Sie den Datenbank-Benutzernamen an.",
+"%s enter the database name." => "%s geben Sie den Datenbank-Namen an.",
+"%s you may not use dots in the database name" => "%s Der Datenbank-Name darf keine Punkte enthalten",
+"%s set the database host." => "%s setze den Datenbank-Host",
+"PostgreSQL username and/or password not valid" => "PostgreSQL Benutzername und/oder Passwort ungültig",
+"You need to enter either an existing account or the administrator." => "Sie müssen entweder ein existierendes Benutzerkonto oder das Administratoren-Konto angeben.",
+"Oracle username and/or password not valid" => "Oracle Benutzername und/oder Passwort ungültig",
+"MySQL username and/or password not valid" => "MySQL Benutzername und/oder Passwort ungültig",
+"DB Error: \"%s\"" => "DB Fehler: \"%s\"",
+"Offending command was: \"%s\"" => "Fehlerhafter Befehl war: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL Benutzer '%s'@'localhost' existiert bereits.",
+"Drop this user from MySQL" => "Lösche diesen Benutzer von MySQL",
+"MySQL user '%s'@'%%' already exists" => "MySQL Benutzer '%s'@'%%' existiert bereits",
+"Drop this user from MySQL." => "Lösche diesen Benutzer von MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Fehlerhafter Befehl war: \"%s\", Name: %s, Passwort: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Ihr Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
+"Please double check the <a href='%s'>installation guides</a>." => "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>.",
 "seconds ago" => "Gerade eben",
 "1 minute ago" => "Vor einer Minute",
 "%d minutes ago" => "Vor %d Minuten",
diff --git a/lib/l10n/es.php b/lib/l10n/es.php
index 8bbc8a8f7b40946c4b29e6b89b15fc71fce0420b..f3b03b566521c90a97f6088b814b711e628800a8 100644
--- a/lib/l10n/es.php
+++ b/lib/l10n/es.php
@@ -16,6 +16,8 @@
 "Files" => "Archivos",
 "Text" => "Texto",
 "Images" => "Imágenes",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, vuelva a comprobar las <a href='%s'>guías de instalación</a>.",
 "seconds ago" => "hace segundos",
 "1 minute ago" => "hace 1 minuto",
 "%d minutes ago" => "hace %d minutos",
diff --git a/lib/l10n/es_AR.php b/lib/l10n/es_AR.php
index c32017a10f8261517cccf5aaa5dffeb95752bbcd..a2391a45b23957c6661e95a03cd0e3297d315bcd 100644
--- a/lib/l10n/es_AR.php
+++ b/lib/l10n/es_AR.php
@@ -16,6 +16,23 @@
 "Files" => "Archivos",
 "Text" => "Texto",
 "Images" => "Imágenes",
+"Set an admin username." => "Configurar un nombre de administrador",
+"Set an admin password." => "Configurar una palabra clave de administrador",
+"Specify a data folder." => "Especificar un directorio de datos",
+"%s enter the database username." => "%s Entre el Usuario de la Base de Datos",
+"%s enter the database name." => "%s Entre el Nombre de la Base de Datos",
+"%s you may not use dots in the database name" => "%s no puede usar puntos en el nombre de la Base de Datos",
+"%s set the database host." => "%s Especifique la dirección de la Base de Datos",
+"PostgreSQL username and/or password not valid" => "Nombre de usuario o contraseña de PostgradeSQL no válido.",
+"You need to enter either an existing account or the administrator." => "Debe ingresar una cuenta existente o el administrador",
+"MySQL username and/or password not valid" => "Usuario y/o contraseña MySQL no válido",
+"DB Error: \"%s\"" => "Error DB: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "Usuario MySQL '%s'@'localhost' ya existente",
+"Drop this user from MySQL" => "Borrar este usuario de MySQL",
+"MySQL user '%s'@'%%' already exists" => "Usuario MySQL '%s'@'%%' ya existente",
+"Drop this user from MySQL." => "Borrar este usuario de MySQL",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Tu servidor web no está configurado todavía para permitir sincronización de archivos porque la interfaz WebDAV parece no funcionar.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, comprobá nuevamente la <a href='%s'>guía de instalación</a>.",
 "seconds ago" => "hace unos segundos",
 "1 minute ago" => "hace 1 minuto",
 "%d minutes ago" => "hace %d minutos",
diff --git a/lib/l10n/et_EE.php b/lib/l10n/et_EE.php
index 906abf9430a9fe6351834abf33b8c036fc5f6f77..cdcf762d9a66dd2bdc8421cac438fb487e129f82 100644
--- a/lib/l10n/et_EE.php
+++ b/lib/l10n/et_EE.php
@@ -15,13 +15,22 @@
 "Files" => "Failid",
 "Text" => "Tekst",
 "Images" => "Pildid",
+"Set an admin username." => "Määra admin kasutajanimi.",
+"Set an admin password." => "Määra admini parool.",
+"Specify a data folder." => "Määra andmete kaust.",
+"DB Error: \"%s\"" => "Andmebaasi viga: \"%s\"",
+"Drop this user from MySQL" => "Kustuta see kasutaja MySQL-ist",
+"Drop this user from MySQL." => "Kustuta see kasutaja MySQL-ist.",
 "seconds ago" => "sekundit tagasi",
 "1 minute ago" => "1 minut tagasi",
 "%d minutes ago" => "%d minutit tagasi",
+"1 hour ago" => "1 tund tagasi",
+"%d hours ago" => "%d tundi tagasi",
 "today" => "täna",
 "yesterday" => "eile",
 "%d days ago" => "%d päeva tagasi",
 "last month" => "eelmisel kuul",
+"%d months ago" => "%d kuud tagasi",
 "last year" => "eelmisel aastal",
 "years ago" => "aastat tagasi",
 "%s is available. Get <a href=\"%s\">more information</a>" => "%s on saadaval. Vaata <a href=\"%s\">lisainfot</a>",
diff --git a/lib/l10n/eu.php b/lib/l10n/eu.php
index 1941551b1760246b0adf0924d4a3aecee296d7a9..97eb6511198b1084d85e06d1f716dbd4d04c1157 100644
--- a/lib/l10n/eu.php
+++ b/lib/l10n/eu.php
@@ -16,6 +16,26 @@
 "Files" => "Fitxategiak",
 "Text" => "Testua",
 "Images" => "Irudiak",
+"Set an admin username." => "Ezarri administraziorako erabiltzaile izena.",
+"Set an admin password." => "Ezarri administraziorako pasahitza.",
+"Specify a data folder." => "Zehaztu data karpeta.",
+"%s enter the database username." => "%s sartu datu basearen erabiltzaile izena.",
+"%s enter the database name." => "%s sartu datu basearen izena.",
+"%s you may not use dots in the database name" => "%s ezin duzu punturik erabili datu basearen izenean.",
+"%s set the database host." => "%s sartu datu basearen hostalaria.",
+"PostgreSQL username and/or password not valid" => "PostgreSQL erabiltzaile edota pasahitza ez dira egokiak.",
+"You need to enter either an existing account or the administrator." => "Existitzen den kontu bat edo administradorearena jarri behar duzu.",
+"Oracle username and/or password not valid" => "Oracle erabiltzaile edota pasahitza ez dira egokiak.",
+"MySQL username and/or password not valid" => "MySQL erabiltzaile edota pasahitza ez dira egokiak.",
+"DB Error: \"%s\"" => "DB errorea: \"%s\"",
+"Offending command was: \"%s\"" => "Errorea komando honek sortu du: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL '%s'@'localhost' erabiltzailea dagoeneko existitzen da.",
+"Drop this user from MySQL" => "Ezabatu erabiltzaile hau MySQLtik",
+"MySQL user '%s'@'%%' already exists" => "MySQL '%s'@'%%' erabiltzailea dagoeneko existitzen da",
+"Drop this user from MySQL." => "Ezabatu erabiltzaile hau MySQLtik.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Errorea komando honek sortu du: \"%s\", izena: %s, pasahitza: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Zure web zerbitzaria ez dago oraindik ongi konfiguratuta fitxategien sinkronizazioa egiteko, WebDAV interfazea ongi ez dagoela dirudi.",
+"Please double check the <a href='%s'>installation guides</a>." => "Mesedez begiratu <a href='%s'>instalazio gidak</a>.",
 "seconds ago" => "orain dela segundu batzuk",
 "1 minute ago" => "orain dela minutu 1",
 "%d minutes ago" => "orain dela %d minutu",
diff --git a/lib/l10n/fi_FI.php b/lib/l10n/fi_FI.php
index b8d4b137431cb08e0dc1764d2099333cb476494d..c3ff3e9a2bf64b7e9eda6586744b93a917d8c594 100644
--- a/lib/l10n/fi_FI.php
+++ b/lib/l10n/fi_FI.php
@@ -16,6 +16,16 @@
 "Files" => "Tiedostot",
 "Text" => "Teksti",
 "Images" => "Kuvat",
+"Set an admin username." => "Aseta ylläpitäjän käyttäjätunnus.",
+"Set an admin password." => "Aseta ylläpitäjän salasana.",
+"Specify a data folder." => "Määritä datakansio.",
+"PostgreSQL username and/or password not valid" => "PostgreSQL:n käyttäjätunnus ja/tai salasana on väärin",
+"Oracle username and/or password not valid" => "Oraclen käyttäjätunnus ja/tai salasana on väärin",
+"MySQL username and/or password not valid" => "MySQL:n käyttäjätunnus ja/tai salasana on väärin",
+"DB Error: \"%s\"" => "Tietokantavirhe: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL-käyttäjä '%s'@'localhost' on jo olemassa.",
+"MySQL user '%s'@'%%' already exists" => "MySQL-käyttäjä '%s'@'%%' on jo olemassa",
+"Please double check the <a href='%s'>installation guides</a>." => "Lue tarkasti <a href='%s'>asennusohjeet</a>.",
 "seconds ago" => "sekuntia sitten",
 "1 minute ago" => "1 minuutti sitten",
 "%d minutes ago" => "%d minuuttia sitten",
diff --git a/lib/l10n/fr.php b/lib/l10n/fr.php
index c6bf8f7f9c34b9e0e8e49feaea2ef8941af8f1d4..fc44f9760840adc25a148c27a2925634b1bfbdda 100644
--- a/lib/l10n/fr.php
+++ b/lib/l10n/fr.php
@@ -16,6 +16,26 @@
 "Files" => "Fichiers",
 "Text" => "Texte",
 "Images" => "Images",
+"Set an admin username." => "Spécifiez un nom d'utilisateur pour l'administrateur.",
+"Set an admin password." => "Spécifiez un mot de passe administrateur.",
+"Specify a data folder." => "Spécifiez un répertoire pour les données.",
+"%s enter the database username." => "%s entrez le nom d'utilisateur de la base de données.",
+"%s enter the database name." => "%s entrez le nom de la base de données.",
+"%s you may not use dots in the database name" => "%s vous nez pouvez pas utiliser de points dans le nom de la base de données",
+"%s set the database host." => "%s spécifiez l'hôte de la base de données.",
+"PostgreSQL username and/or password not valid" => "Nom d'utilisateur et/ou mot de passe de la base PostgreSQL invalide",
+"You need to enter either an existing account or the administrator." => "Vous devez spécifier soit le nom d'un compte existant, soit celui de l'administrateur.",
+"Oracle username and/or password not valid" => "Nom d'utilisateur et/ou mot de passe de la base Oracle invalide",
+"MySQL username and/or password not valid" => "Nom d'utilisateur et/ou mot de passe de la base MySQL invalide",
+"DB Error: \"%s\"" => "Erreur de la base de données : \"%s\"",
+"Offending command was: \"%s\"" => "La requête en cause est : \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "L'utilisateur MySQL '%s'@'localhost' existe déjà.",
+"Drop this user from MySQL" => "Retirer cet utilisateur de la base MySQL",
+"MySQL user '%s'@'%%' already exists" => "L'utilisateur MySQL '%s'@'%%' existe déjà",
+"Drop this user from MySQL." => "Retirer cet utilisateur de la base MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "La requête en cause est : \"%s\", nom : %s, mot de passe : %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Votre serveur web, n'est pas correctement configuré pour permettre la synchronisation des fichiers, car l'interface WebDav ne fonctionne pas comme il faut.",
+"Please double check the <a href='%s'>installation guides</a>." => "Veuillez vous référer au <a href='%s'>guide d'installation</a>.",
 "seconds ago" => "à l'instant",
 "1 minute ago" => "il y a 1 minute",
 "%d minutes ago" => "il y a %d minutes",
diff --git a/lib/l10n/gl.php b/lib/l10n/gl.php
index 532b3443b44718048063549bc4be94955c20936a..c49e8134af10ec0355d9370516a836eb22257a01 100644
--- a/lib/l10n/gl.php
+++ b/lib/l10n/gl.php
@@ -5,18 +5,20 @@
 "Users" => "Usuarios",
 "Apps" => "Aplicativos",
 "Admin" => "Administración",
-"ZIP download is turned off." => "As descargas ZIP están desactivadas",
+"ZIP download is turned off." => "As descargas ZIP están desactivadas.",
 "Files need to be downloaded one by one." => "Os ficheiros necesitan seren descargados de un en un.",
 "Back to Files" => "Volver aos ficheiros",
 "Selected files too large to generate zip file." => "Os ficheiros seleccionados son demasiado grandes como para xerar un ficheiro zip.",
-"couldn't be determined" => "non puido ser determinado",
+"couldn't be determined" => "non foi posíbel determinalo",
 "Application is not enabled" => "O aplicativo non está activado",
 "Authentication error" => "Produciuse un erro na autenticación",
 "Token expired. Please reload page." => "Testemuña caducada. Recargue a páxina.",
 "Files" => "Ficheiros",
 "Text" => "Texto",
 "Images" => "Imaxes",
-"seconds ago" => "hai segundos",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "O seu servidor web non está aínda configurado adecuadamente para permitir a sincronización de ficheiros xa que semella que a interface WebDAV non está a funcionar.",
+"Please double check the <a href='%s'>installation guides</a>." => "Volva comprobar as <a href='%s'>guías de instalación</a>",
+"seconds ago" => "segundos atrás",
 "1 minute ago" => "hai 1 minuto",
 "%d minutes ago" => "hai %d minutos",
 "1 hour ago" => "Vai 1 hora",
diff --git a/lib/l10n/hi.php b/lib/l10n/hi.php
new file mode 100644
index 0000000000000000000000000000000000000000..f507993f494c76d4035c2df996be026801af2130
--- /dev/null
+++ b/lib/l10n/hi.php
@@ -0,0 +1,7 @@
+<?php $TRANSLATIONS = array(
+"Help" => "सहयोग",
+"Personal" => "यक्तिगत",
+"Settings" => "सेटिंग्स",
+"Users" => "उपयोगकर्ता",
+"Apps" => "Apps"
+);
diff --git a/lib/l10n/hu_HU.php b/lib/l10n/hu_HU.php
index e25de3e1ed6af6aa9eadfe32420c97d1a03feb07..d1aeb621e2308a5a2d11a5bc69054a3634e07d26 100644
--- a/lib/l10n/hu_HU.php
+++ b/lib/l10n/hu_HU.php
@@ -4,9 +4,9 @@
 "Settings" => "Beállítások",
 "Users" => "Felhasználók",
 "Apps" => "Alkalmazások",
-"Admin" => "Admin",
+"Admin" => "Adminsztráció",
 "ZIP download is turned off." => "A ZIP-letöltés nincs engedélyezve.",
-"Files need to be downloaded one by one." => "A fájlokat egyenként kell letölteni",
+"Files need to be downloaded one by one." => "A fájlokat egyenként kell letölteni.",
 "Back to Files" => "Vissza a Fájlokhoz",
 "Selected files too large to generate zip file." => "A kiválasztott fájlok túl nagyok a zip tömörítéshez.",
 "couldn't be determined" => "nem határozható meg",
@@ -16,6 +16,26 @@
 "Files" => "Fájlok",
 "Text" => "Szöveg",
 "Images" => "Képek",
+"Set an admin username." => "Állítson be egy felhasználói nevet az adminisztrációhoz.",
+"Set an admin password." => "Állítson be egy jelszót az adminisztrációhoz.",
+"Specify a data folder." => "Adja meg az adatokat tartalmazó könyvtár nevét.",
+"%s enter the database username." => "%s adja meg az adatbázist elérő felhasználó login nevét.",
+"%s enter the database name." => "%s adja meg az adatbázis nevét.",
+"%s you may not use dots in the database name" => "%s az adatbázis neve nem tartalmazhat pontot",
+"%s set the database host." => "%s adja meg az adatbázist szolgáltató számítógép nevét.",
+"PostgreSQL username and/or password not valid" => "A PostgreSQL felhasználói név és/vagy jelszó érvénytelen",
+"You need to enter either an existing account or the administrator." => "Vagy egy létező felhasználó vagy az adminisztrátor bejelentkezési nevét kell megadnia",
+"Oracle username and/or password not valid" => "Az Oracle felhasználói név és/vagy jelszó érvénytelen",
+"MySQL username and/or password not valid" => "A MySQL felhasználói név és/vagy jelszó érvénytelen",
+"DB Error: \"%s\"" => "Adatbázis hiba: \"%s\"",
+"Offending command was: \"%s\"" => "A hibát ez a parancs okozta: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "A '%s'@'localhost' MySQL felhasználó már létezik.",
+"Drop this user from MySQL" => "Törölje ezt a felhasználót a MySQL-ből",
+"MySQL user '%s'@'%%' already exists" => "A '%s'@'%%' MySQL felhasználó már létezik",
+"Drop this user from MySQL." => "Törölje ezt a felhasználót a MySQL-ből.",
+"Offending command was: \"%s\", name: %s, password: %s" => "A hibát okozó parancs ez volt: \"%s\", login név: %s, jelszó: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Az Ön webkiszolgálója nincs megfelelően beállítva az állományok szinkronizálásához, mert a WebDAV-elérés úgy tűnik, nem működik.",
+"Please double check the <a href='%s'>installation guides</a>." => "Kérjük tüzetesen tanulmányozza át a <a href='%s'>telepítési útmutatót</a>.",
 "seconds ago" => "másodperce",
 "1 minute ago" => "1 perce",
 "%d minutes ago" => "%d perce",
diff --git a/lib/l10n/it.php b/lib/l10n/it.php
index eb404db7fb55c09b47c72d1d90337a4a9eac31f7..fa4bac8ec4697d27db712e5ae8c09c14ad082b39 100644
--- a/lib/l10n/it.php
+++ b/lib/l10n/it.php
@@ -16,6 +16,26 @@
 "Files" => "File",
 "Text" => "Testo",
 "Images" => "Immagini",
+"Set an admin username." => "Imposta un nome utente di amministrazione.",
+"Set an admin password." => "Imposta una password di amministrazione.",
+"Specify a data folder." => "Specifica una cartella dei dati.",
+"%s enter the database username." => "%s digita il nome utente del database.",
+"%s enter the database name." => "%s digita il nome del database.",
+"%s you may not use dots in the database name" => "%s non dovresti utilizzare punti nel nome del database",
+"%s set the database host." => "%s imposta l'host del database.",
+"PostgreSQL username and/or password not valid" => "Nome utente e/o password di PostgreSQL non validi",
+"You need to enter either an existing account or the administrator." => "È necessario inserire un account esistente o l'amministratore.",
+"Oracle username and/or password not valid" => "Nome utente e/o password di Oracle non validi",
+"MySQL username and/or password not valid" => "Nome utente e/o password di MySQL non validi",
+"DB Error: \"%s\"" => "Errore DB: \"%s\"",
+"Offending command was: \"%s\"" => "Il comando non consentito era: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "L'utente MySQL '%s'@'localhost' esiste già.",
+"Drop this user from MySQL" => "Elimina questo utente da MySQL",
+"MySQL user '%s'@'%%' already exists" => "L'utente MySQL '%s'@'%%' esiste già",
+"Drop this user from MySQL." => "Elimina questo utente da MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Il comando non consentito era: \"%s\", nome: %s, password: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata.",
+"Please double check the <a href='%s'>installation guides</a>." => "Leggi attentamente le <a href='%s'>guide d'installazione</a>.",
 "seconds ago" => "secondi fa",
 "1 minute ago" => "1 minuto fa",
 "%d minutes ago" => "%d minuti fa",
diff --git a/lib/l10n/ja_JP.php b/lib/l10n/ja_JP.php
index 11cefe900c266d4c26b3cffe068f77e256cbd35f..51b5b40940a3908ee053e47262124756c63c71b0 100644
--- a/lib/l10n/ja_JP.php
+++ b/lib/l10n/ja_JP.php
@@ -16,6 +16,26 @@
 "Files" => "ファイル",
 "Text" => "TTY TDD",
 "Images" => "画像",
+"Set an admin username." => "管理者のユーザ名を設定。",
+"Set an admin password." => "管理者のパスワードを設定。",
+"Specify a data folder." => "データフォルダを指定。",
+"%s enter the database username." => "%s のデータベースのユーザ名を入力してください。",
+"%s enter the database name." => "%s のデータベース名を入力してください。",
+"%s you may not use dots in the database name" => "%s ではデータベース名にドットを利用できないかもしれません。",
+"%s set the database host." => "%s にデータベースホストを設定します。",
+"PostgreSQL username and/or password not valid" => "PostgreSQLのユーザ名もしくはパスワードは有効ではありません",
+"You need to enter either an existing account or the administrator." => "既存のアカウントもしくは管理者のどちらかを入力する必要があります。",
+"Oracle username and/or password not valid" => "Oracleのユーザ名もしくはパスワードは有効ではありません",
+"MySQL username and/or password not valid" => "MySQLのユーザ名もしくはパスワードは有効ではありません",
+"DB Error: \"%s\"" => "DBエラー: \"%s\"",
+"Offending command was: \"%s\"" => "違反コマンド: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQLのユーザ '%s'@'localhost' はすでに存在します。",
+"Drop this user from MySQL" => "MySQLからこのユーザを削除",
+"MySQL user '%s'@'%%' already exists" => "MySQLのユーザ '%s'@'%%' はすでに存在します。",
+"Drop this user from MySQL." => "MySQLからこのユーザを削除する。",
+"Offending command was: \"%s\", name: %s, password: %s" => "違反コマンド: \"%s\"、名前: %s、パスワード: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "WebDAVインタフェースが動作していないと考えられるため、あなたのWEBサーバはまだファイルの同期を許可するように適切な設定がされていません。",
+"Please double check the <a href='%s'>installation guides</a>." => "<a href='%s'>インストールガイド</a>をよく確認してください。",
 "seconds ago" => "秒前",
 "1 minute ago" => "1分前",
 "%d minutes ago" => "%d 分前",
diff --git a/lib/l10n/lv.php b/lib/l10n/lv.php
index 9f2a0dea7494e9c07a8788a95d0b8962d00f73d7..5ec9ddd969348abd92dd6843334e5ca79f15366d 100644
--- a/lib/l10n/lv.php
+++ b/lib/l10n/lv.php
@@ -16,6 +16,26 @@
 "Files" => "Datnes",
 "Text" => "Teksts",
 "Images" => "Attēli",
+"Set an admin username." => "Iestatiet administratora lietotājvārdu.",
+"Set an admin password." => "Iestatiet administratora paroli.",
+"Specify a data folder." => "Norādiet datu mapi.",
+"%s enter the database username." => "%s ievadiet datubāzes lietotājvārdu.",
+"%s enter the database name." => "%s ievadiet datubāzes nosaukumu.",
+"%s you may not use dots in the database name" => "%s datubāžu nosaukumos nedrīkst izmantot punktus",
+"%s set the database host." => "%s iestatiet datubāžu serveri.",
+"PostgreSQL username and/or password not valid" => "Nav derīga PostgreSQL parole un/vai lietotājvārds",
+"You need to enter either an existing account or the administrator." => "Jums jāievada vai nu esošs vai administratora konts.",
+"Oracle username and/or password not valid" => "Nav derīga Oracle parole un/vai lietotājvārds",
+"MySQL username and/or password not valid" => "Nav derīga MySQL parole un/vai lietotājvārds",
+"DB Error: \"%s\"" => "DB kļūda — “%s”",
+"Offending command was: \"%s\"" => "Vainīgā komanda bija “%s”",
+"MySQL user '%s'@'localhost' exists already." => "MySQL lietotājs %s'@'localhost' jau eksistē.",
+"Drop this user from MySQL" => "Izmest šo lietotāju no MySQL",
+"MySQL user '%s'@'%%' already exists" => "MySQL lietotājs '%s'@'%%' jau eksistē",
+"Drop this user from MySQL." => "Izmest šo lietotāju no MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Vainīgā komanda bija \"%s\", vārds: %s, parole: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Jūsu serveris vēl nav pareizi iestatīts, lai ļautu sinhronizēt datnes, jo izskatās, ka WebDAV saskarne ir salauzta.",
+"Please double check the <a href='%s'>installation guides</a>." => "Lūdzu, vēlreiz pārbaudiet <a href='%s'>instalēšanas palīdzību</a>.",
 "seconds ago" => "sekundes atpakaļ",
 "1 minute ago" => "pirms 1 minūtes",
 "%d minutes ago" => "pirms %d minūtēm",
diff --git a/lib/l10n/nl.php b/lib/l10n/nl.php
index 7ce134e362155e404999087c292d8fcc86324cd4..4a357889fdcfd210c23922a435447a9657fe9c28 100644
--- a/lib/l10n/nl.php
+++ b/lib/l10n/nl.php
@@ -16,6 +16,26 @@
 "Files" => "Bestanden",
 "Text" => "Tekst",
 "Images" => "Afbeeldingen",
+"Set an admin username." => "Stel de gebruikersnaam van de beheerder in.",
+"Set an admin password." => "Stel een beheerderswachtwoord in.",
+"Specify a data folder." => "Geef een datamap op.",
+"%s enter the database username." => "%s opgeven database gebruikersnaam.",
+"%s enter the database name." => "%s opgeven databasenaam.",
+"%s you may not use dots in the database name" => "%s er mogen geen puntjes in de databasenaam voorkomen",
+"%s set the database host." => "%s instellen databaseservernaam.",
+"PostgreSQL username and/or password not valid" => "PostgreSQL gebruikersnaam en/of wachtwoord ongeldig",
+"You need to enter either an existing account or the administrator." => "Geef of een bestaand account op of het beheerdersaccount.",
+"Oracle username and/or password not valid" => "Oracle gebruikersnaam en/of wachtwoord ongeldig",
+"MySQL username and/or password not valid" => "MySQL gebruikersnaam en/of wachtwoord ongeldig",
+"DB Error: \"%s\"" => "DB Fout: \"%s\"",
+"Offending command was: \"%s\"" => "Onjuiste commande was: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "MySQL gebruiker '%s'@'localhost' bestaat al.",
+"Drop this user from MySQL" => "Verwijder deze gebruiker uit MySQL",
+"MySQL user '%s'@'%%' already exists" => "MySQL gebruiker '%s'@'%%' bestaat al",
+"Drop this user from MySQL." => "Verwijder deze gebruiker uit MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Onjuiste commando was: \"%s\", naam: %s, wachtwoord: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Uw webserver is nog niet goed ingesteld voor bestandssynchronisatie omdat de WebDAV interface verbroken lijkt.",
+"Please double check the <a href='%s'>installation guides</a>." => "Conntroleer de <a href='%s'>installatie handleiding</a> goed.",
 "seconds ago" => "seconden geleden",
 "1 minute ago" => "1 minuut geleden",
 "%d minutes ago" => "%d minuten geleden",
diff --git a/lib/l10n/pt_BR.php b/lib/l10n/pt_BR.php
index fb7087d35d779e765c631b3fb98bb9be013b10a9..25645b1dcd93f757d1bc0a37af5fdbdc77b881fc 100644
--- a/lib/l10n/pt_BR.php
+++ b/lib/l10n/pt_BR.php
@@ -9,12 +9,33 @@
 "Files need to be downloaded one by one." => "Arquivos precisam ser baixados um de cada vez.",
 "Back to Files" => "Voltar para Arquivos",
 "Selected files too large to generate zip file." => "Arquivos selecionados são muito grandes para gerar arquivo zip.",
+"couldn't be determined" => "não pôde ser determinado",
 "Application is not enabled" => "Aplicação não está habilitada",
 "Authentication error" => "Erro de autenticação",
 "Token expired. Please reload page." => "Token expirou. Por favor recarregue a página.",
 "Files" => "Arquivos",
 "Text" => "Texto",
 "Images" => "Imagens",
+"Set an admin username." => "Defina um nome de usuário de administrador.",
+"Set an admin password." => "Defina uma senha de administrador.",
+"Specify a data folder." => "Especifique uma pasta de dados.",
+"%s enter the database username." => "%s insira o nome de usuário do banco de dados.",
+"%s enter the database name." => "%s insira o nome do banco de dados.",
+"%s you may not use dots in the database name" => "%s você não pode usar pontos no nome do banco de dados",
+"%s set the database host." => "%s defina o host do banco de dados.",
+"PostgreSQL username and/or password not valid" => "Nome de usuário e/ou senha PostgreSQL inválido(s)",
+"You need to enter either an existing account or the administrator." => "Você precisa inserir uma conta existente ou o administrador.",
+"Oracle username and/or password not valid" => "Nome de usuário e/ou senha Oracle inválido(s)",
+"MySQL username and/or password not valid" => "Nome de usuário e/ou senha MySQL inválido(s)",
+"DB Error: \"%s\"" => "Erro no BD: \"%s\"",
+"Offending command was: \"%s\"" => "Comando ofensivo era: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "O usuário MySQL '%s'@'localhost' já existe.",
+"Drop this user from MySQL" => "Derrubar este usuário do MySQL",
+"MySQL user '%s'@'%%' already exists" => "Usuário MySQL '%s'@'%%' já existe",
+"Drop this user from MySQL." => "Derrube este usuário do MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Comando ofensivo era: \"%s\", nome: %s, senha: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Seu servidor web não está configurado corretamente para permitir sincronização de arquivos porque a interface WebDAV parece estar quebrada.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, confira os <a href='%s'>guias de instalação</a>.",
 "seconds ago" => "segundos atrás",
 "1 minute ago" => "1 minuto atrás",
 "%d minutes ago" => "%d minutos atrás",
diff --git a/lib/l10n/pt_PT.php b/lib/l10n/pt_PT.php
index e35bb489c49f300eb5ec102ca4dc23faeecbfc47..a3585f914daa5bb967b04ef66671a606bc35ad07 100644
--- a/lib/l10n/pt_PT.php
+++ b/lib/l10n/pt_PT.php
@@ -16,6 +16,17 @@
 "Files" => "Ficheiros",
 "Text" => "Texto",
 "Images" => "Imagens",
+"Set an admin username." => "Definir um nome de utilizador de administrador",
+"Set an admin password." => "Definiar uma password de administrador",
+"Specify a data folder." => "Especificar a pasta para os dados.",
+"%s enter the database username." => "%s introduza o nome de utilizador da base de dados",
+"%s enter the database name." => "%s introduza o nome da base de dados",
+"%s you may not use dots in the database name" => "%s não é permitido utilizar pontos (.) no nome da base de dados",
+"%s set the database host." => "%s defina o servidor da base de dados (geralmente localhost)",
+"PostgreSQL username and/or password not valid" => "Nome de utilizador/passwor do PostgreSQL inválido",
+"You need to enter either an existing account or the administrator." => "Precisa de introduzir uma conta existente ou de administrador",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "O seu servidor web não está configurado correctamente para autorizar sincronização de ficheiros, pois o interface WebDAV parece estar com problemas.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor verifique <a href='%s'>installation guides</a>.",
 "seconds ago" => "há alguns segundos",
 "1 minute ago" => "há 1 minuto",
 "%d minutes ago" => "há %d minutos",
diff --git a/lib/l10n/ru.php b/lib/l10n/ru.php
index 5ef2cca3be3dbf7ccfda3c95ceb43c2d35ada8a5..c0ffcd68064f64b225a6dabc5a2756f52ba6ed57 100644
--- a/lib/l10n/ru.php
+++ b/lib/l10n/ru.php
@@ -16,6 +16,18 @@
 "Files" => "Файлы",
 "Text" => "Текст",
 "Images" => "Изображения",
+"Set an admin username." => "Установить имя пользователя для admin.",
+"Set an admin password." => "становит пароль для admin.",
+"Specify a data folder." => "Указать папку данных.",
+"PostgreSQL username and/or password not valid" => "Неверное имя пользователя и/или пароль PostgreSQL",
+"You need to enter either an existing account or the administrator." => "Вы должны войти или в существующий аккаунт или под администратором.",
+"Oracle username and/or password not valid" => "Неверное имя пользователя и/или пароль Oracle",
+"MySQL username and/or password not valid" => "Неверное имя пользователя и/или пароль MySQL",
+"DB Error: \"%s\"" => "Ошибка БД: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "Пользователь MySQL '%s'@'localhost' уже существует.",
+"Drop this user from MySQL" => "Удалить этого пользователя из MySQL",
+"MySQL user '%s'@'%%' already exists" => "Пользователь MySQL '%s'@'%%' уже существует",
+"Drop this user from MySQL." => "Удалить этого пользователя из MySQL.",
 "seconds ago" => "менее минуты",
 "1 minute ago" => "1 минуту назад",
 "%d minutes ago" => "%d минут назад",
diff --git a/lib/l10n/ru_RU.php b/lib/l10n/ru_RU.php
index 03da09236ea4812dc8c5887c9751bafd7d31aad5..de77056366233fbd8f6f98a5c2dceda804822893 100644
--- a/lib/l10n/ru_RU.php
+++ b/lib/l10n/ru_RU.php
@@ -16,6 +16,8 @@
 "Files" => "Файлы",
 "Text" => "Текст",
 "Images" => "Изображения",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Ваш веб сервер ещё не достаточно точно настроен для возможности синхронизации, т.к. похоже, что интерфейс WebDAV сломан.",
+"Please double check the <a href='%s'>installation guides</a>." => "Пожалуйста проверте дважды <a href='%s'>гиды по установке</a>.",
 "seconds ago" => "секунд назад",
 "1 minute ago" => "1 минуту назад",
 "%d minutes ago" => "%d минут назад",
diff --git a/lib/l10n/sk_SK.php b/lib/l10n/sk_SK.php
index 81f23ffdc50b44cc4756eb6593f84c8f6fdfec42..97a4999407fe400f9dcb06d3910f133874ae4b10 100644
--- a/lib/l10n/sk_SK.php
+++ b/lib/l10n/sk_SK.php
@@ -2,13 +2,13 @@
 "Help" => "Pomoc",
 "Personal" => "Osobné",
 "Settings" => "Nastavenia",
-"Users" => "Užívatelia",
+"Users" => "Používatelia",
 "Apps" => "Aplikácie",
-"Admin" => "Správca",
+"Admin" => "Administrátor",
 "ZIP download is turned off." => "Sťahovanie súborov ZIP je vypnuté.",
 "Files need to be downloaded one by one." => "Súbory musia byť nahrávané jeden za druhým.",
 "Back to Files" => "Späť na súbory",
-"Selected files too large to generate zip file." => "Zvolené súbory sú príliž veľké na vygenerovanie zip súboru.",
+"Selected files too large to generate zip file." => "Zvolené súbory sú príliš veľké na vygenerovanie zip súboru.",
 "couldn't be determined" => "nedá sa zistiť",
 "Application is not enabled" => "Aplikácia nie je zapnutá",
 "Authentication error" => "Chyba autentifikácie",
@@ -16,6 +16,26 @@
 "Files" => "Súbory",
 "Text" => "Text",
 "Images" => "Obrázky",
+"Set an admin username." => "Zadajte používateľské meno administrátora.",
+"Set an admin password." => "Zadajte heslo administrátora.",
+"Specify a data folder." => "Zadajte priečinok pre dáta.",
+"%s enter the database username." => "Zadajte používateľské meno %s databázy..",
+"%s enter the database name." => "Zadajte názov databázy pre %s databázy.",
+"%s you may not use dots in the database name" => "V názve databázy %s nemôžete používať bodky",
+"%s set the database host." => "Zadajte názov počítača s databázou %s.",
+"PostgreSQL username and/or password not valid" => "Používateľské meno a/alebo heslo pre PostgreSQL databázu je neplatné",
+"You need to enter either an existing account or the administrator." => "Musíte zadať jestvujúci účet alebo administrátora.",
+"Oracle username and/or password not valid" => "Používateľské meno a/alebo heslo pre Oracle databázu je neplatné",
+"MySQL username and/or password not valid" => "Používateľské meno a/alebo heslo pre MySQL databázu je neplatné",
+"DB Error: \"%s\"" => "Chyba DB: \"%s\"",
+"Offending command was: \"%s\"" => "Podozrivý príkaz bol: \"%s\"",
+"MySQL user '%s'@'localhost' exists already." => "Používateľ '%s'@'localhost' už v MySQL existuje.",
+"Drop this user from MySQL" => "Zahodiť používateľa z MySQL.",
+"MySQL user '%s'@'%%' already exists" => "Používateľ '%s'@'%%' už v MySQL existuje",
+"Drop this user from MySQL." => "Zahodiť používateľa z MySQL.",
+"Offending command was: \"%s\", name: %s, password: %s" => "Podozrivý príkaz bol: \"%s\", meno: %s, heslo: %s",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Váš webový server nie je správne nastavený na synchronizáciu, pretože rozhranie WebDAV je poškodené.",
+"Please double check the <a href='%s'>installation guides</a>." => "Prosím skontrolujte <a href='%s'>inštalačnú príručku</a>.",
 "seconds ago" => "pred sekundami",
 "1 minute ago" => "pred 1 minútou",
 "%d minutes ago" => "pred %d minútami",
@@ -28,7 +48,7 @@
 "%d months ago" => "Pred %d mesiacmi.",
 "last year" => "minulý rok",
 "years ago" => "pred rokmi",
-"%s is available. Get <a href=\"%s\">more information</a>" => "%s je dostupné. Získať <a href=\"%s\">viac informácií</a>",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s je dostupné. Získať <a href=\"%s\">pre viac informácií</a>",
 "up to date" => "aktuálny",
 "updates check is disabled" => "sledovanie aktualizácií je vypnuté",
 "Could not find category \"%s\"" => "Nemožno nájsť danú kategóriu \"%s\""
diff --git a/lib/l10n/sv.php b/lib/l10n/sv.php
index 36f00636b2be0144dc81910582feabd81aba7787..63ca60e89cdee59070e7e97fa44e6f336f04da85 100644
--- a/lib/l10n/sv.php
+++ b/lib/l10n/sv.php
@@ -16,6 +16,8 @@
 "Files" => "Filer",
 "Text" => "Text",
 "Images" => "Bilder",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Din webbserver är inte korrekt konfigurerad för att tillåta filsynkronisering eftersom WebDAV inte verkar fungera.",
+"Please double check the <a href='%s'>installation guides</a>." => "Var god kontrollera <a href='%s'>installationsguiden</a>.",
 "seconds ago" => "sekunder sedan",
 "1 minute ago" => "1 minut sedan",
 "%d minutes ago" => "%d minuter sedan",
diff --git a/lib/l10n/zh_TW.php b/lib/l10n/zh_TW.php
index 62ab8fedd52150c8f73a7e9c8442338286809041..91b0329e246be3ae94a149187bbbe8ba216f4f37 100644
--- a/lib/l10n/zh_TW.php
+++ b/lib/l10n/zh_TW.php
@@ -16,6 +16,8 @@
 "Files" => "檔案",
 "Text" => "文字",
 "Images" => "圖片",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "您的網頁伺服器尚未被正確設定來進行檔案同步,因為您的 WebDAV 界面似乎無法使用。",
+"Please double check the <a href='%s'>installation guides</a>." => "請參考<a href='%s'>安裝指南</a>。",
 "seconds ago" => "幾秒前",
 "1 minute ago" => "1 分鐘前",
 "%d minutes ago" => "%d 分鐘前",
diff --git a/lib/log.php b/lib/log.php
index e869282e88c013c82a155b63da5d388bb43e0891..3f3334801e5e6a9bb6ff9818f41947ab85a175f5 100644
--- a/lib/log.php
+++ b/lib/log.php
@@ -53,7 +53,9 @@ class OC_Log {
 
 	// Uncaught exception handler
 	public static function onException($exception) {
-		self::write('PHP', $exception->getMessage() . ' at ' . $exception->getFile() . '#' . $exception->getLine(), self::FATAL);
+		self::write('PHP',
+			$exception->getMessage() . ' at ' . $exception->getFile() . '#' . $exception->getLine(),
+			self::FATAL);
 	}
 
 	//Recoverable errors handler
diff --git a/lib/log/owncloud.php b/lib/log/owncloud.php
index e53dd5fefcd129099d6ffc8d1177719379ee5151..20df52c27bb114c7082f982d9931d8a9b838a80f 100644
--- a/lib/log/owncloud.php
+++ b/lib/log/owncloud.php
@@ -81,7 +81,8 @@ class OC_Log_Owncloud {
 				$ch = fgetc($handle);
 				if ($ch == "\n" || $pos == 0) {
 					if ($line != '') {
-						// Add the first character if at the start of the file, because it doesn't hit the else in the loop
+						// Add the first character if at the start of the file,
+						// because it doesn't hit the else in the loop
 						if ($pos == 0) {
 							$line = $ch.$line;
 						}
diff --git a/lib/mail.php b/lib/mail.php
index 1bb202ac977e193acecdf01cf1cb4847f6786dcf..22194045a7643c2f3448fae871960b93ef84d9c7 100644
--- a/lib/mail.php
+++ b/lib/mail.php
@@ -32,7 +32,8 @@ class OC_Mail {
 	 * @param string $bcc
 	 * @throws Exception
 	 */
-	public static function send($toaddress,$toname,$subject,$mailtext,$fromaddress,$fromname,$html=0,$altbody='',$ccaddress='',$ccname='', $bcc='') {
+	public static function send($toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname,
+		$html=0, $altbody='', $ccaddress='', $ccname='', $bcc='') {
 
 		$SMTPMODE = OC_Config::getValue( 'mail_smtpmode', 'sendmail' );
 		$SMTPHOST = OC_Config::getValue( 'mail_smtphost', '127.0.0.1' );
@@ -97,7 +98,9 @@ class OC_Mail {
 
 			$mailo->Send();
 			unset($mailo);
-			OC_Log::write('mail', 'Mail from '.$fromname.' ('.$fromaddress.')'.' to: '.$toname.'('.$toaddress.')'.' subject: '.$subject, OC_Log::DEBUG);
+			OC_Log::write('mail',
+				'Mail from '.$fromname.' ('.$fromaddress.')'.' to: '.$toname.'('.$toaddress.')'.' subject: '.$subject,
+				OC_Log::DEBUG);
 		} catch (Exception $exception) {
 			OC_Log::write('mail', $exception->getMessage(), OC_Log::ERROR);
 			throw($exception);
diff --git a/lib/migrate.php b/lib/migrate.php
index 87bdd016fe469f4791954f8f9d0db920b52b68df..a0a329705a396a323973818d2c3bbba8e5465d95 100644
--- a/lib/migrate.php
+++ b/lib/migrate.php
@@ -167,7 +167,19 @@ class OC_Migrate{
 				self::$content = new OC_Migration_Content( self::$zip );
 				// Creates a zip with the owncloud system files
 				self::$content->addDir( OC::$SERVERROOT . '/', false, '/');
-				foreach (array(".git", "3rdparty", "apps", "core", "files", "l10n", "lib", "ocs", "search", "settings", "tests") as $dir) {
+				foreach (array(
+					".git",
+					"3rdparty",
+					"apps",
+					"core",
+					"files",
+					"l10n",
+					"lib",
+					"ocs",
+					"search",
+					"settings",
+					"tests"
+				) as $dir) {
 					self::$content->addDir( OC::$SERVERROOT . '/' . $dir, true, "/");
 				}
 				break;
@@ -181,7 +193,7 @@ class OC_Migrate{
 			return json_encode( array( 'success' => false ) );
 		}
 		return json_encode( array( 'success' => true, 'data' => self::$zippath ) );
-	 }
+	}
 
 	/**
 	* @brief imports a user, or owncloud instance
@@ -245,7 +257,9 @@ class OC_Migrate{
 				}
 				// Import user app data
 				if(file_exists($extractpath . $json->exporteduser . '/migration.db')) {
-					if( !$appsimported = self::importAppData( $extractpath . $json->exporteduser . '/migration.db', $json, self::$uid ) ) {
+					if( !$appsimported = self::importAppData( $extractpath . $json->exporteduser . '/migration.db',
+						$json,
+						self::$uid ) ) {
 						return json_encode( array( 'success' => false ) );
 					}
 				}
@@ -553,7 +567,9 @@ class OC_Migrate{
 			return false;
 		}
 		if ( self::$zip->open( self::$zippath, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE ) !== true ) {
-			OC_Log::write('migration', 'Failed to create the zip with error: '.self::$zip->getStatusString(), OC_Log::ERROR);
+			OC_Log::write('migration',
+				'Failed to create the zip with error: '.self::$zip->getStatusString(),
+				OC_Log::ERROR);
 			return false;
 		} else {
 			return true;
@@ -610,7 +626,9 @@ class OC_Migrate{
 			if( isset( $info->apps->$id ) ) {
 				// Is the app installed
 				if( !OC_App::isEnabled( $id ) ) {
-					OC_Log::write( 'migration', 'App: ' . $id . ' is not installed, can\'t import data.', OC_Log::INFO );
+					OC_Log::write( 'migration',
+					'App: ' . $id . ' is not installed, can\'t import data.',
+					OC_Log::INFO );
 					$appsstatus[$id] = 'notsupported';
 				} else {
 					// Did it succeed on export?
@@ -624,7 +642,9 @@ class OC_Migrate{
 						// Then do the import
 						if( !$appsstatus[$id] = $provider->import( $info->apps->$id, $importinfo ) ) {
 							// Failed to import app
-							OC_Log::write( 'migration', 'Failed to import app data for user: ' . self::$uid . ' for app: ' . $id, OC_Log::ERROR );
+							OC_Log::write( 'migration',
+								'Failed to import app data for user: ' . self::$uid . ' for app: ' . $id,
+								OC_Log::ERROR );
 						}
 					} else {
 						// Add to failed list
diff --git a/lib/migration/content.php b/lib/migration/content.php
index e81c8f217ff2ed784552913fe7fefd13131775d0..400a46a434041c7d9a4799a214eb58beb0294f49 100644
--- a/lib/migration/content.php
+++ b/lib/migration/content.php
@@ -185,13 +185,13 @@ class OC_Migration_Content{
 	* @return bool
 	*/
 	public function addDir( $dir, $recursive=true, $internaldir='' ) {
-	    $dirname = basename($dir);
-	    $this->zip->addEmptyDir($internaldir . $dirname);
-	    $internaldir.=$dirname.='/';
+		$dirname = basename($dir);
+		$this->zip->addEmptyDir($internaldir . $dirname);
+		$internaldir.=$dirname.='/';
 		if( !file_exists( $dir ) ) {
 			return false;
 		}
-	    if ($dirhandle = opendir($dir)) {
+		if ($dirhandle = opendir($dir)) {
 			while (false !== ( $file = readdir($dirhandle))) {
 
 				if (( $file != '.' ) && ( $file != '..' )) {
@@ -204,11 +204,11 @@ class OC_Migration_Content{
 				}
 			}
 			closedir($dirhandle);
-	    } else {
+		} else {
 			OC_Log::write('admin_export', "Was not able to open directory: " . $dir, OC_Log::ERROR);
 			return false;
-	    }
-	    return true;
+		}
+		return true;
 	}
 
 	/**
@@ -236,7 +236,9 @@ class OC_Migration_Content{
 	*/
 	public function finish() {
 		if( !$this->zip->close() ) {
-			OC_Log::write( 'migration', 'Failed to write the zip file with error: '.$this->zip->getStatusString(), OC_Log::ERROR );
+			OC_Log::write( 'migration',
+				'Failed to write the zip file with error: '.$this->zip->getStatusString(),
+				OC_Log::ERROR );
 			return false;
 		}
 		$this->cleanup();
diff --git a/lib/ocs.php b/lib/ocs.php
index 879aaa7668739be87f3d2e50df6f5358be914872..93e8931ce2eabe9603610d83624f500c05bcb54a 100644
--- a/lib/ocs.php
+++ b/lib/ocs.php
@@ -87,9 +87,10 @@ class OC_OCS {
 		}
 
 		$format = self::readData($method, 'format', 'text', '');
-		$txt='Invalid query, please check the syntax. API specifications are here: http://www.freedesktop.org/wiki/Specifications/open-collaboration-services. DEBUG OUTPUT:'."\n";
+		$txt='Invalid query, please check the syntax. API specifications are here:'
+		.' http://www.freedesktop.org/wiki/Specifications/open-collaboration-services. DEBUG OUTPUT:'."\n";
 		$txt.=OC_OCS::getDebugOutput();
-		echo(OC_OCS::generateXml($format,'failed',999,$txt));
+		echo(OC_OCS::generateXml($format, 'failed', 999, $txt));
 
 	}
 
@@ -122,7 +123,8 @@ class OC_OCS {
 	* @param int $itemsperpage
 	* @return string xml/json
 	*/
-	private static function generateXml($format, $status, $statuscode, $message, $data=array(), $tag='', $tagattribute='', $dimension=-1, $itemscount='', $itemsperpage='') {
+	private static function generateXml($format, $status, $statuscode,
+		$message, $data=array(), $tag='', $tagattribute='', $dimension=-1, $itemscount='', $itemsperpage='') {
 		if($format=='json') {
 			$json=array();
 			$json['status']=$status;
@@ -173,7 +175,7 @@ class OC_OCS {
 						}
 					}
 					xmlwriter_end_element($writer);
-					}
+				}
 				xmlwriter_end_element($writer);
 
 			}elseif($dimension=='3') {
diff --git a/lib/ocs/cloud.php b/lib/ocs/cloud.php
index 179ed8f31077f852ce58612a6cb6c8a8eb47b948..5553ae382151d50b936a4b8ab32ca58323b21a2b 100644
--- a/lib/ocs/cloud.php
+++ b/lib/ocs/cloud.php
@@ -31,7 +31,7 @@ class OC_OCS_Cloud {
 		foreach($apps as $app) {
 			$info = OC_App::getAppInfo($app);
 			if(isset($info['standalone'])) {
-				$newValue = array('name'=>$info['name'],'url'=>OC_Helper::linkToAbsolute($app,''),'icon'=>'');
+				$newValue = array('name'=>$info['name'], 'url'=>OC_Helper::linkToAbsolute($app, ''), 'icon'=>'');
 				$values[] = $newValue;
 			}
 		}
@@ -45,7 +45,7 @@ class OC_OCS_Cloud {
 			if(OC_User::userExists($parameters['user'])) {
 				// calculate the disc space
 				$userDir = '/'.$parameters['user'].'/files';
-				\OC\Files\Filesystem::init($useDir);
+				\OC\Files\Filesystem::init($parameters['user'], $userDir);
 				$rootInfo = \OC\Files\Filesystem::getFileInfo('');
 				$sharedInfo = \OC\Files\Filesystem::getFileInfo('/Shared');
 				$used = $rootInfo['size'] - $sharedInfo['size'];
diff --git a/lib/ocs/privatedata.php b/lib/ocs/privatedata.php
index 311b24269dd3087bdf889d0be366977a55024641..4dfd0a6e66e3482edc454319471f644426a41b5b 100644
--- a/lib/ocs/privatedata.php
+++ b/lib/ocs/privatedata.php
@@ -29,7 +29,7 @@ class OC_OCS_Privatedata {
 		$user = OC_User::getUser();
 		$app = addslashes(strip_tags($parameters['app']));
 		$key = addslashes(strip_tags($parameters['key']));
-		$result = OC_OCS::getData($user,$app,$key);
+		$result = OC_OCS::getData($user, $app, $key);
 		$xml = array();
 		foreach($result as $i=>$log) {
 			$xml[$i]['key']=$log['key'];
@@ -46,7 +46,7 @@ class OC_OCS_Privatedata {
 		$app = addslashes(strip_tags($parameters['app']));
 		$key = addslashes(strip_tags($parameters['key']));
 		$value = OC_OCS::readData('post', 'value', 'text');
-		if(OC_Preferences::setValue($user, $app, $key, $value)){
+		if(OC_Preferences::setValue($user, $app, $key, $value)) {
 			return new OC_OCS_Result(null, 100);
 		}
 	}
diff --git a/lib/ocsclient.php b/lib/ocsclient.php
index 30163c1e403f27ffb5eabd43e3f802f31362b372..bd0302a2a81f97d2061b5d6476dab74949ac4941 100644
--- a/lib/ocsclient.php
+++ b/lib/ocsclient.php
@@ -32,7 +32,8 @@ class OC_OCSClient{
 	 * @brief Get the url of the OCS AppStore server.
 	 * @returns string of the AppStore server
 	 *
-	 * This function returns the url of the OCS AppStore server. It´s possible to set it in the config file or it will fallback to the default
+	 * This function returns the url of the OCS AppStore server. It´s possible
+	 * to set it in the config file or it will fallback to the default
 	 */
 	private static function getAppStoreURL() {
 		$url = OC_Config::getValue('appstoreurl', 'http://api.apps.owncloud.com/v1');
@@ -42,7 +43,8 @@ class OC_OCSClient{
 	/**
 	 * @brief Get the url of the OCS KB server.
 	 * @returns string of the KB server
-	 * This function returns the url of the OCS knowledge base server. It´s possible to set it in the config file or it will fallback to the default
+	 * This function returns the url of the OCS knowledge base server. It´s
+	 * possible to set it in the config file or it will fallback to the default
 	 */
 	private static function getKBURL() {
 		$url = OC_Config::getValue('knowledgebaseurl', 'http://api.apps.owncloud.com/v1');
@@ -109,7 +111,8 @@ class OC_OCSClient{
 
 		$version='&version='.implode('x', \OC_Util::getVersion());
 		$filterurl='&filter='.urlencode($filter);
-		$url=OC_OCSClient::getAppStoreURL().'/content/data?categories='.urlencode($categoriesstring).'&sortmode=new&page='.urlencode($page).'&pagesize=100'.$filterurl.$version;
+		$url=OC_OCSClient::getAppStoreURL().'/content/data?categories='.urlencode($categoriesstring)
+			.'&sortmode=new&page='.urlencode($page).'&pagesize=100'.$filterurl.$version;
 		$apps=array();
 		$xml=OC_OCSClient::getOCSresponse($url);
 
diff --git a/lib/preferences.php b/lib/preferences.php
index 6270457834dbebde0b2139b4aaa7c69217ed7f71..5f6434bcf9cd9a12b1ab43d7a8e4dd9fa796acef 100644
--- a/lib/preferences.php
+++ b/lib/preferences.php
@@ -114,7 +114,8 @@ class OC_Preferences{
 	 */
 	public static function getValue( $user, $app, $key, $default = null ) {
 		// Try to fetch the value, return default if not exists.
-		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
+		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences`'
+			.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$result = $query->execute( array( $user, $app, $key ));
 
 		$row = $result->fetchRow();
@@ -138,16 +139,19 @@ class OC_Preferences{
 	 */
 	public static function setValue( $user, $app, $key, $value ) {
 		// Check if the key does exist
-		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
+		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences`'
+			.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$values=$query->execute(array($user, $app, $key))->fetchAll();
 		$exists=(count($values)>0);
 
 		if( !$exists ) {
-			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*preferences` ( `userid`, `appid`, `configkey`, `configvalue` ) VALUES( ?, ?, ?, ? )' );
+			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*preferences`'
+				.' ( `userid`, `appid`, `configkey`, `configvalue` ) VALUES( ?, ?, ?, ? )' );
 			$query->execute( array( $user, $app, $key, $value ));
 		}
 		else{
-			$query = OC_DB::prepare( 'UPDATE `*PREFIX*preferences` SET `configvalue` = ? WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
+			$query = OC_DB::prepare( 'UPDATE `*PREFIX*preferences` SET `configvalue` = ?'
+				.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 			$query->execute( array( $value, $user, $app, $key ));
 		}
 		return true;
@@ -164,7 +168,8 @@ class OC_Preferences{
 	 */
 	public static function deleteKey( $user, $app, $key ) {
 		// No need for more comments
-		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
+		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences`'
+			.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$query->execute( array( $user, $app, $key ));
 
 		return true;
diff --git a/lib/public/api.php b/lib/public/api.php
index 95d333f21658afaa35adfbe7bc5d72b798274c19..d94b68e908a58680373cda50d4335e0821431cee 100644
--- a/lib/public/api.php
+++ b/lib/public/api.php
@@ -37,7 +37,8 @@ class API {
 	 * @param array $defaults
 	 * @param array $requirements
 	 */
-	public static function register($method, $url, $action, $app, $authLevel = OC_API::USER_AUTH, $defaults = array(), $requirements = array()){
+	public static function register($method, $url, $action, $app, $authLevel = OC_API::USER_AUTH,
+		$defaults = array(), $requirements = array()){
 		\OC_API::register($method, $url, $action, $app, $authLevel, $defaults, $requirements);
 	}
 
diff --git a/lib/public/config.php b/lib/public/config.php
index 1f163d52617a46c59d58a506e77e8a584093b285..8076d640b497cc3c751643f161e0f2200ae7745d 100644
--- a/lib/public/config.php
+++ b/lib/public/config.php
@@ -35,7 +35,8 @@
 namespace OCP;
 
 /**
- * This class provides functions to read and write configuration data. configuration can be on a system, application or user level
+ * This class provides functions to read and write configuration data.
+ * configuration can be on a system, application or user level
  */
 class Config {
 	/**
diff --git a/lib/public/files.php b/lib/public/files.php
index f6b3e0ee38afd887ee9c76304f0c3205899b4710..c2945b200e85d80e09204071ae82ab648d077985 100644
--- a/lib/public/files.php
+++ b/lib/public/files.php
@@ -31,7 +31,8 @@
 namespace OCP;
 
 /**
- * This class provides access to the internal filesystem abstraction layer. Use this class exlusively if you want to access files
+ * This class provides access to the internal filesystem abstraction layer. Use
+ * this class exlusively if you want to access files
  */
 class Files {
 	/**
diff --git a/lib/public/iaddressbook.php b/lib/public/iaddressbook.php
index 14943747f4800fd5d197cfc8c0853274a4860114..77e8750d9da50fa9da03a21f6a884dbadc47eb43 100644
--- a/lib/public/iaddressbook.php
+++ b/lib/public/iaddressbook.php
@@ -43,22 +43,22 @@ namespace OCP {
 		 * @return array of contacts which are arrays of key-value-pairs
 		 */
 		public function search($pattern, $searchProperties, $options);
-//			// dummy results
-//			return array(
-//				array('id' => 0, 'FN' => 'Thomas Müller', 'EMAIL' => 'a@b.c', 'GEO' => '37.386013;-122.082932'),
-//				array('id' => 5, 'FN' => 'Thomas Tanghus', 'EMAIL' => array('d@e.f', 'g@h.i')),
-//			);
+		//	// dummy results
+		//	return array(
+		//		array('id' => 0, 'FN' => 'Thomas Müller', 'EMAIL' => 'a@b.c', 'GEO' => '37.386013;-122.082932'),
+		//		array('id' => 5, 'FN' => 'Thomas Tanghus', 'EMAIL' => array('d@e.f', 'g@h.i')),
+		//	);
 
 		/**
 		 * @param array $properties this array if key-value-pairs defines a contact
 		 * @return array representing the contact just created or updated
 		 */
 		public function createOrUpdate($properties);
-//			// dummy
-//			return array('id'    => 0, 'FN' => 'Thomas Müller', 'EMAIL' => 'a@b.c',
-//			             'PHOTO' => 'VALUE=uri:http://www.abc.com/pub/photos/jqpublic.gif',
-//			             'ADR'   => ';;123 Main Street;Any Town;CA;91921-1234'
-//			);
+		//	// dummy
+		//	return array('id'    => 0, 'FN' => 'Thomas Müller', 'EMAIL' => 'a@b.c',
+		//		     'PHOTO' => 'VALUE=uri:http://www.abc.com/pub/photos/jqpublic.gif',
+		//		     'ADR'   => ';;123 Main Street;Any Town;CA;91921-1234'
+		//	);
 
 		/**
 		 * @return mixed
diff --git a/lib/public/share.php b/lib/public/share.php
index af2a538e252d034aa837cba6b8c5ddbd09a7a58f..c0f35333e83010f72387d675b2a55092b2d95f4d 100644
--- a/lib/public/share.php
+++ b/lib/public/share.php
@@ -37,10 +37,17 @@ class Share {
 	const SHARE_TYPE_REMOTE = 6;
 
 	/** CRUDS permissions (Create, Read, Update, Delete, Share) using a bitmask
-	* Construct permissions for share() and setPermissions with Or (|) e.g. Give user read and update permissions: PERMISSION_READ | PERMISSION_UPDATE
-	* Check if permission is granted with And (&) e.g. Check if delete is granted: if ($permissions & PERMISSION_DELETE)
-	* Remove permissions with And (&) and Not (~) e.g. Remove the update permission: $permissions &= ~PERMISSION_UPDATE
-	* Apps are required to handle permissions on their own, this class only stores and manages the permissions of shares
+	* Construct permissions for share() and setPermissions with Or (|) e.g.
+	* Give user read and update permissions: PERMISSION_READ | PERMISSION_UPDATE
+	*
+	* Check if permission is granted with And (&) e.g. Check if delete is
+	* granted: if ($permissions & PERMISSION_DELETE)
+	*
+	* Remove permissions with And (&) and Not (~) e.g. Remove the update
+	* permission: $permissions &= ~PERMISSION_UPDATE
+	*
+	* Apps are required to handle permissions on their own, this class only
+	* stores and manages the permissions of shares
 	* @see lib/public/constants.php
 	*/
 
@@ -66,14 +73,21 @@ class Share {
 	public static function registerBackend($itemType, $class, $collectionOf = null, $supportedFileExtensions = null) {
 		if (self::isEnabled()) {
 			if (!isset(self::$backendTypes[$itemType])) {
-				self::$backendTypes[$itemType] = array('class' => $class, 'collectionOf' => $collectionOf, 'supportedFileExtensions' => $supportedFileExtensions);
+				self::$backendTypes[$itemType] = array(
+					'class' => $class,
+					'collectionOf' => $collectionOf,
+					'supportedFileExtensions' => $supportedFileExtensions
+				);
 				if(count(self::$backendTypes) === 1) {
 					\OC_Util::addScript('core', 'share');
 					\OC_Util::addStyle('core', 'share');
 				}
 				return true;
 			}
-			\OC_Log::write('OCP\Share', 'Sharing backend '.$class.' not registered, '.self::$backendTypes[$itemType]['class'].' is already registered for '.$itemType, \OC_Log::WARN);
+			\OC_Log::write('OCP\Share',
+				'Sharing backend '.$class.' not registered, '.self::$backendTypes[$itemType]['class']
+				.' is already registered for '.$itemType,
+				\OC_Log::WARN);
 		}
 		return false;
 	}
@@ -99,8 +113,10 @@ class Share {
 	* @param int Number of items to return (optional) Returns all by default
 	* @return Return depends on format
 	*/
-	public static function getItemsSharedWith($itemType, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false) {
-		return self::getItems($itemType, null, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, $limit, $includeCollections);
+	public static function getItemsSharedWith($itemType, $format = self::FORMAT_NONE,
+		$parameters = null, $limit = -1, $includeCollections = false) {
+		return self::getItems($itemType, null, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format,
+			$parameters, $limit, $includeCollections);
 	}
 
 	/**
@@ -110,8 +126,10 @@ class Share {
 	* @param int Format (optional) Format type must be defined by the backend
 	* @return Return depends on format
 	*/
-	public static function getItemSharedWith($itemType, $itemTarget, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) {
-		return self::getItems($itemType, $itemTarget, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, 1, $includeCollections);
+	public static function getItemSharedWith($itemType, $itemTarget, $format = self::FORMAT_NONE,
+		$parameters = null, $includeCollections = false) {
+		return self::getItems($itemType, $itemTarget, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format,
+			$parameters, 1, $includeCollections);
 	}
 
 	/**
@@ -121,8 +139,10 @@ class Share {
 	* @param int Format (optional) Format type must be defined by the backend
 	* @return Return depends on format
 	*/
-	public static function getItemSharedWithBySource($itemType, $itemSource, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) {
-		return self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, 1, $includeCollections, true);
+	public static function getItemSharedWithBySource($itemType, $itemSource, $format = self::FORMAT_NONE,
+		$parameters = null, $includeCollections = false) {
+		return self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format,
+			$parameters, 1, $includeCollections, true);
 	}
 
 	/**
@@ -133,7 +153,8 @@ class Share {
 	* @return Item
 	*/
 	public static function getItemSharedWithByLink($itemType, $itemSource, $uidOwner) {
-		return self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE, null, 1);
+		return self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE,
+			null, 1);
 	}
 
 	/**
@@ -142,7 +163,7 @@ class Share {
 	 * @return Item
 	 */
 	public static function getShareByToken($token) {
-		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `token` = ?',1);
+		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `token` = ?', 1);
 		$result = $query->execute(array($token));
 		if (\OC_DB::isError($result)) {
 			\OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result) . ', token=' . $token, \OC_Log::ERROR);
@@ -157,8 +178,10 @@ class Share {
 	* @param int Number of items to return (optional) Returns all by default
 	* @return Return depends on format
 	*/
-	public static function getItemsShared($itemType, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false) {
-		return self::getItems($itemType, null, null, null, \OC_User::getUser(), $format, $parameters, $limit, $includeCollections);
+	public static function getItemsShared($itemType, $format = self::FORMAT_NONE, $parameters = null,
+		$limit = -1, $includeCollections = false) {
+		return self::getItems($itemType, null, null, null, \OC_User::getUser(), $format,
+			$parameters, $limit, $includeCollections);
 	}
 
 	/**
@@ -168,8 +191,10 @@ class Share {
 	* @param int Format (optional) Format type must be defined by the backend
 	* @return Return depends on format
 	*/
-	public static function getItemShared($itemType, $itemSource, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) {
-		return self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(), $format, $parameters, -1, $includeCollections);
+	public static function getItemShared($itemType, $itemSource, $format = self::FORMAT_NONE,
+		$parameters = null, $includeCollections = false) {
+		return self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(), $format,
+			$parameters, -1, $includeCollections);
 	}
 
 	/**
@@ -199,14 +224,18 @@ class Share {
 			if ($sharingPolicy == 'groups_only') {
 				$inGroup = array_intersect(\OC_Group::getUserGroups($uidOwner), \OC_Group::getUserGroups($shareWith));
 				if (empty($inGroup)) {
-					$message = 'Sharing '.$itemSource.' failed, because the user '.$shareWith.' is not a member of any groups that '.$uidOwner.' is a member of';
+					$message = 'Sharing '.$itemSource.' failed, because the user '
+						.$shareWith.' is not a member of any groups that '.$uidOwner.' is a member of';
 					\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 					throw new \Exception($message);
 				}
 			}
 			// Check if the item source is already shared with the user, either from the same owner or a different user
-			if ($checkExists = self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups, $shareWith, null, self::FORMAT_NONE, null, 1, true, true)) {
-				// Only allow the same share to occur again if it is the same owner and is not a user share, this use case is for increasing permissions for a specific user
+			if ($checkExists = self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups,
+				$shareWith, null, self::FORMAT_NONE, null, 1, true, true)) {
+				// Only allow the same share to occur again if it is the same
+				// owner and is not a user share, this use case is for increasing
+				// permissions for a specific user
 				if ($checkExists['uid_owner'] != $uidOwner || $checkExists['share_type'] == $shareType) {
 					$message = 'Sharing '.$itemSource.' failed, because this item is already shared with '.$shareWith;
 					\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
@@ -220,14 +249,18 @@ class Share {
 				throw new \Exception($message);
 			}
 			if ($sharingPolicy == 'groups_only' && !\OC_Group::inGroup($uidOwner, $shareWith)) {
-				$message = 'Sharing '.$itemSource.' failed, because '.$uidOwner.' is not a member of the group '.$shareWith;
+				$message = 'Sharing '.$itemSource.' failed, because '
+					.$uidOwner.' is not a member of the group '.$shareWith;
 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 				throw new \Exception($message);
 			}
 			// Check if the item source is already shared with the group, either from the same owner or a different user
 			// The check for each user in the group is done inside the put() function
-			if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_GROUP, $shareWith, null, self::FORMAT_NONE, null, 1, true, true)) {
-				// Only allow the same share to occur again if it is the same owner and is not a group share, this use case is for increasing permissions for a specific user
+			if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_GROUP, $shareWith,
+				null, self::FORMAT_NONE, null, 1, true, true)) {
+				// Only allow the same share to occur again if it is the same
+				// owner and is not a group share, this use case is for increasing
+				// permissions for a specific user
 				if ($checkExists['uid_owner'] != $uidOwner || $checkExists['share_type'] == $shareType) {
 					$message = 'Sharing '.$itemSource.' failed, because this item is already shared with '.$shareWith;
 					\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
@@ -242,7 +275,8 @@ class Share {
 		} else if ($shareType === self::SHARE_TYPE_LINK) {
 			if (\OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes') == 'yes') {
 				// when updating a link share
-				if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE, null, 1)) {
+				if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null,
+					$uidOwner, self::FORMAT_NONE, null, 1)) {
 					// remember old token
 					$oldToken = $checkExists['token'];
 					//delete the old share
@@ -262,7 +296,8 @@ class Share {
 				} else {
 					$token = \OC_Util::generate_random_bytes(self::TOKEN_LENGTH);
 				}
-				$result = self::put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions, null, $token);
+				$result = self::put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions,
+					null, $token);
 				if ($result) {
 					return $token;
 				} else {
@@ -341,7 +376,8 @@ class Share {
 	* @return Returns true on success or false on failure
 	*/
 	public static function unshare($itemType, $itemSource, $shareType, $shareWith) {
-		if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith, \OC_User::getUser(), self::FORMAT_NONE, null, 1)) {
+		if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith, \OC_User::getUser(),
+			self::FORMAT_NONE, null, 1)) {
 			// Pass all the vars we have for now, they may be useful
 			\OC_Hook::emit('OCP\Share', 'pre_unshare', array(
 				'itemType' => $itemType,
@@ -389,9 +425,16 @@ class Share {
 	public static function unshareFromSelf($itemType, $itemTarget) {
 		if ($item = self::getItemSharedWith($itemType, $itemTarget)) {
 			if ((int)$item['share_type'] === self::SHARE_TYPE_GROUP) {
-				// Insert an extra row for the group share and set permission to 0 to prevent it from showing up for the user
-				$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`) VALUES (?,?,?,?,?,?,?,?,?,?,?)');
-				$query->execute(array($item['item_type'], $item['item_source'], $item['item_target'], $item['id'], self::$shareTypeGroupUserUnique, \OC_User::getUser(), $item['uid_owner'], 0, $item['stime'], $item['file_source'], $item['file_target']));
+				// Insert an extra row for the group share and set permission
+				// to 0 to prevent it from showing up for the user
+				$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share`'
+					.' (`item_type`, `item_source`, `item_target`, `parent`, `share_type`,'
+					.' `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`)'
+					.' VALUES (?,?,?,?,?,?,?,?,?,?,?)');
+				$query->execute(array($item['item_type'], $item['item_source'], $item['item_target'],
+					$item['id'], self::$shareTypeGroupUserUnique,
+					\OC_User::getUser(), $item['uid_owner'], 0, $item['stime'], $item['file_source'],
+					$item['file_target']));
 				\OC_DB::insertid('*PREFIX*share');
 				// Delete all reshares by this user of the group share
 				self::delete($item['id'], true, \OC_User::getUser());
@@ -418,13 +461,16 @@ class Share {
 	* @return Returns true on success or false on failure
 	*/
 	public static function setPermissions($itemType, $itemSource, $shareType, $shareWith, $permissions) {
-		if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith, \OC_User::getUser(), self::FORMAT_NONE, null, 1, false)) {
-			// Check if this item is a reshare and verify that the permissions granted don't exceed the parent shared item
+		if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith,
+			\OC_User::getUser(), self::FORMAT_NONE, null, 1, false)) {
+			// Check if this item is a reshare and verify that the permissions
+			// granted don't exceed the parent shared item
 			if (isset($item['parent'])) {
 				$query = \OC_DB::prepare('SELECT `permissions` FROM `*PREFIX*share` WHERE `id` = ?', 1);
 				$result = $query->execute(array($item['parent']))->fetchRow();
 				if (~(int)$result['permissions'] & $permissions) {
-					$message = 'Setting permissions for '.$itemSource.' failed, because the permissions exceed permissions granted to '.\OC_User::getUser();
+					$message = 'Setting permissions for '.$itemSource.' failed,'
+						.' because the permissions exceed permissions granted to '.\OC_User::getUser();
 					\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 					throw new \Exception($message);
 				}
@@ -441,9 +487,11 @@ class Share {
 					$parents = array($item['id']);
 					while (!empty($parents)) {
 						$parents = "'".implode("','", $parents)."'";
-						$query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.')');
+						$query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share`'
+							.' WHERE `parent` IN ('.$parents.')');
 						$result = $query->execute();
-						// Reset parents array, only go through loop again if items are found that need permissions removed
+						// Reset parents array, only go through loop again if
+						// items are found that need permissions removed
 						$parents = array();
 						while ($item = $result->fetchRow()) {
 							// Check if permissions need to be removed
@@ -457,7 +505,8 @@ class Share {
 					// Remove the permissions for all reshares of this item
 					if (!empty($ids)) {
 						$ids = "'".implode("','", $ids)."'";
-						$query = \OC_DB::prepare('UPDATE `*PREFIX*share` SET `permissions` = `permissions` & ? WHERE `id` IN ('.$ids.')');
+						$query = \OC_DB::prepare('UPDATE `*PREFIX*share` SET `permissions` = `permissions` & ?'
+							.' WHERE `id` IN ('.$ids.')');
 						$query->execute(array($permissions));
 					}
 				}
@@ -470,7 +519,8 @@ class Share {
 	}
 
 	public static function setExpirationDate($itemType, $itemSource, $date) {
-		if ($items = self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(), self::FORMAT_NONE, null, -1, false)) {
+		if ($items = self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(),
+			self::FORMAT_NONE, null, -1, false)) {
 			if (!empty($items)) {
 				if ($date == '') {
 					$date = null;
@@ -533,7 +583,8 @@ class Share {
 		if (!self::getBackend($itemType) instanceof Share_Backend_Collection || $itemType != 'folder') {
 			unset($collectionTypes[0]);
 		}
-		// Return array if collections were found or the item type is a collection itself - collections can be inside collections
+		// Return array if collections were found or the item type is a
+		// collection itself - collections can be inside collections
 		if (count($collectionTypes) > 0) {
 			return $collectionTypes;
 		}
@@ -556,7 +607,9 @@ class Share {
 	* See public functions getItem(s)... for parameter usage
 	*
 	*/
-	private static function getItems($itemType, $item = null, $shareType = null, $shareWith = null, $uidOwner = null, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false, $itemShareWithBySource = false) {
+	private static function getItems($itemType, $item = null, $shareType = null, $shareWith = null,
+		$uidOwner = null, $format = self::FORMAT_NONE, $parameters = null, $limit = -1,
+		$includeCollections = false, $itemShareWithBySource = false) {
 		if (!self::isEnabled()) {
 			if ($limit == 1 || (isset($uidOwner) && isset($item))) {
 				return false;
@@ -565,7 +618,8 @@ class Share {
 			}
 		}
 		$backend = self::getBackend($itemType);
-		// Get filesystem root to add it to the file target and remove from the file source, match file_source with the file cache
+		// Get filesystem root to add it to the file target and remove from the
+		// file source, match file_source with the file cache
 		if ($itemType == 'file' || $itemType == 'folder') {
 			$root = \OC\Files\Filesystem::getRoot();
 			$where = 'INNER JOIN `*PREFIX*filecache` ON `file_source` = `*PREFIX*filecache`.`fileid`';
@@ -668,7 +722,8 @@ class Share {
 		}
 		if ($limit != -1 && !$includeCollections) {
 			if ($shareType == self::$shareTypeUserAndGroups) {
-				// Make sure the unique user target is returned if it exists, unique targets should follow the group share in the database
+				// Make sure the unique user target is returned if it exists,
+				// unique targets should follow the group share in the database
 				// If the limit is not 1, the filtering can be done later
 				$where .= ' ORDER BY `*PREFIX*share`.`id` DESC';
 			}
@@ -684,16 +739,20 @@ class Share {
 		// TODO Optimize selects
 		if ($format == self::FORMAT_STATUSES) {
 			if ($itemType == 'file' || $itemType == 'folder') {
-				$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, `file_source`, `path`, `expiration`';
+				$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`,'
+					.' `share_type`, `file_source`, `path`, `expiration`';
 			} else {
 				$select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `expiration`';
 			}
 		} else {
 			if (isset($uidOwner)) {
 				if ($itemType == 'file' || $itemType == 'folder') {
-					$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, `share_with`, `file_source`, `path`, `permissions`, `stime`, `expiration`, `token`';
+					$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`,'
+						.' `share_type`, `share_with`, `file_source`, `path`, `permissions`, `stime`,'
+						.' `expiration`, `token`';
 				} else {
-					$select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `share_with`, `permissions`, `stime`, `file_source`, `expiration`, `token`';
+					$select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `share_with`, `permissions`,'
+						.' `stime`, `file_source`, `expiration`, `token`';
 				}
 			} else {
 				if ($fileDependent) {
@@ -702,11 +761,13 @@ class Share {
 						|| $format == \OC_Share_Backend_File::FORMAT_FILE_APP_ROOT
 					) {
 						$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `uid_owner`, '
-								 .'`share_type`, `share_with`, `file_source`, `path`, `file_target`, '
-								 .'`permissions`, `expiration`, `storage`, `*PREFIX*filecache`.`parent` as `file_parent`, '
-								 .'`name`, `mtime`, `mimetype`, `mimepart`, `size`, `encrypted`, `etag`';
+							.'`share_type`, `share_with`, `file_source`, `path`, `file_target`, '
+							.'`permissions`, `expiration`, `storage`, `*PREFIX*filecache`.`parent` as `file_parent`, '
+							.'`name`, `mtime`, `mimetype`, `mimepart`, `size`, `encrypted`, `etag`';
 					} else {
-						$select = '`*PREFIX*share`.`id`, `item_type`, `item_source`, `item_target`, `*PREFIX*share`.`parent`, `share_type`, `share_with`, `uid_owner`, `file_source`, `path`, `file_target`, `permissions`, `stime`, `expiration`, `token`';
+						$select = '`*PREFIX*share`.`id`, `item_type`, `item_source`, `item_target`,
+							`*PREFIX*share`.`parent`, `share_type`, `share_with`, `uid_owner`,
+							`file_source`, `path`, `file_target`, `permissions`, `stime`, `expiration`, `token`';
 					}
 				} else {
 					$select = '*';
@@ -717,7 +778,9 @@ class Share {
 		$query = \OC_DB::prepare('SELECT '.$select.' FROM `*PREFIX*share` '.$where, $queryLimit);
 		$result = $query->execute($queryArgs);
 		if (\OC_DB::isError($result)) {
-			\OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result) . ', select=' . $select . ' where=' . $where, \OC_Log::ERROR);
+			\OC_Log::write('OCP\Share',
+				\OC_DB::getErrorMessage($result) . ', select=' . $select . ' where=' . $where,
+				\OC_Log::ERROR);
 		}
 		$items = array();
 		$targets = array();
@@ -735,7 +798,8 @@ class Share {
 			} else if (!isset($uidOwner)) {
 				// Check if the same target already exists
 				if (isset($targets[$row[$column]])) {
-					// Check if the same owner shared with the user twice through a group and user share - this is allowed
+					// Check if the same owner shared with the user twice
+					// through a group and user share - this is allowed
 					$id = $targets[$row[$column]];
 					if ($items[$id]['uid_owner'] == $row['uid_owner']) {
 						// Switch to group share type to ensure resharing conditions aren't bypassed
@@ -743,8 +807,10 @@ class Share {
 							$items[$id]['share_type'] = self::SHARE_TYPE_GROUP;
 							$items[$id]['share_with'] = $row['share_with'];
 						}
-						// Switch ids if sharing permission is granted on only one share to ensure correct parent is used if resharing
-						if (~(int)$items[$id]['permissions'] & PERMISSION_SHARE && (int)$row['permissions'] & PERMISSION_SHARE) {
+						// Switch ids if sharing permission is granted on only
+						// one share to ensure correct parent is used if resharing
+						if (~(int)$items[$id]['permissions'] & PERMISSION_SHARE
+							&& (int)$row['permissions'] & PERMISSION_SHARE) {
 							$items[$row['id']] = $items[$id];
 							$switchedItems[$id] = $row['id'];
 							unset($items[$id]);
@@ -798,7 +864,8 @@ class Share {
 				}
 				// Check if this is a collection of the requested item type
 				if ($includeCollections && $collectionTypes && in_array($row['item_type'], $collectionTypes)) {
-					if (($collectionBackend = self::getBackend($row['item_type'])) && $collectionBackend instanceof Share_Backend_Collection) {
+					if (($collectionBackend = self::getBackend($row['item_type']))
+						&& $collectionBackend instanceof Share_Backend_Collection) {
 						// Collections can be inside collections, check if the item is a collection
 						if (isset($item) && $row['item_type'] == $itemType && $row[$column] == $item) {
 							$collectionItems[] = $row;
@@ -825,7 +892,8 @@ class Share {
 										$meta = \OC\Files\Filesystem::getFileInfo($child['file_path']);
 										$childItem['file_source'] = $meta['fileid'];
 									}
-									$childItem['file_target'] = \OC\Files\Filesystem::normalizePath($child['file_path']);
+									$childItem['file_target'] =
+										\OC\Files\Filesystem::normalizePath($child['file_path']);
 								}
 								if (isset($item)) {
 									if ($childItem[$column] == $item) {
@@ -898,7 +966,8 @@ class Share {
 	* @param bool|array Parent folder target (optional)
 	* @return bool Returns true on success or false on failure
 	*/
-	private static function put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions, $parentFolder = null, $token = null) {
+	private static function put($itemType, $itemSource, $shareType, $shareWith, $uidOwner,
+		$permissions, $parentFolder = null, $token = null) {
 		$backend = self::getBackend($itemType);
 		// Check if this is a reshare
 		if ($checkReshare = self::getItemSharedWithBySource($itemType, $itemSource, self::FORMAT_NONE, null, true)) {
@@ -911,7 +980,8 @@ class Share {
 			// Check if share permissions is granted
 			if ((int)$checkReshare['permissions'] & PERMISSION_SHARE) {
 				if (~(int)$checkReshare['permissions'] & $permissions) {
-					$message = 'Sharing '.$itemSource.' failed, because the permissions exceed permissions granted to '.$uidOwner;
+					$message = 'Sharing '.$itemSource
+						.' failed, because the permissions exceed permissions granted to '.$uidOwner;
 					\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 					throw new \Exception($message);
 				} else {
@@ -933,7 +1003,8 @@ class Share {
 			$suggestedItemTarget = null;
 			$suggestedFileTarget = null;
 			if (!$backend->isValidSource($itemSource, $uidOwner)) {
-				$message = 'Sharing '.$itemSource.' failed, because the sharing backend for '.$itemType.' could not find its source';
+				$message = 'Sharing '.$itemSource.' failed, because the sharing backend for '
+					.$itemType.' could not find its source';
 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 				throw new \Exception($message);
 			}
@@ -956,14 +1027,18 @@ class Share {
 				$fileSource = null;
 			}
 		}
-		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`, `token`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)');
+		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`,'
+			.' `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`,'
+			.' `file_target`, `token`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)');
 		// Share with a group
 		if ($shareType == self::SHARE_TYPE_GROUP) {
-			$groupItemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith['group'], $uidOwner, $suggestedItemTarget);
+			$groupItemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith['group'],
+				$uidOwner, $suggestedItemTarget);
 			if (isset($fileSource)) {
 				if ($parentFolder) {
 					if ($parentFolder === true) {
-						$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget);
+						$groupFileTarget = self::generateTarget('file', $filePath, $shareType,
+							$shareWith['group'], $uidOwner, $suggestedFileTarget);
 						// Set group default file target for future use
 						$parentFolders[0]['folder'] = $groupFileTarget;
 					} else {
@@ -972,21 +1047,25 @@ class Share {
 						$parent = $parentFolder[0]['id'];
 					}
 				} else {
-					$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget);
+					$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'],
+						$uidOwner, $suggestedFileTarget);
 				}
 			} else {
 				$groupFileTarget = null;
 			}
-			$query->execute(array($itemType, $itemSource, $groupItemTarget, $parent, $shareType, $shareWith['group'], $uidOwner, $permissions, time(), $fileSource, $groupFileTarget, $token));
+			$query->execute(array($itemType, $itemSource, $groupItemTarget, $parent, $shareType,
+				$shareWith['group'], $uidOwner, $permissions, time(), $fileSource, $groupFileTarget, $token));
 			// Save this id, any extra rows for this group share will need to reference it
 			$parent = \OC_DB::insertid('*PREFIX*share');
 			// Loop through all users of this group in case we need to add an extra row
 			foreach ($shareWith['users'] as $uid) {
-				$itemTarget = self::generateTarget($itemType, $itemSource, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedItemTarget, $parent);
+				$itemTarget = self::generateTarget($itemType, $itemSource, self::SHARE_TYPE_USER, $uid,
+					$uidOwner, $suggestedItemTarget, $parent);
 				if (isset($fileSource)) {
 					if ($parentFolder) {
 						if ($parentFolder === true) {
-							$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent);
+							$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid,
+								$uidOwner, $suggestedFileTarget, $parent);
 							if ($fileTarget != $groupFileTarget) {
 								$parentFolders[$uid]['folder'] = $fileTarget;
 							}
@@ -995,7 +1074,8 @@ class Share {
 							$parent = $parentFolder[$uid]['id'];
 						}
 					} else {
-						$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent);
+						$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER,
+							$uid, $uidOwner, $suggestedFileTarget, $parent);
 					}
 				} else {
 					$fileTarget = null;
@@ -1016,7 +1096,9 @@ class Share {
 				));
 				// Insert an extra row for the group share if the item or file target is unique for this user
 				if ($itemTarget != $groupItemTarget || (isset($fileSource) && $fileTarget != $groupFileTarget)) {
-					$query->execute(array($itemType, $itemSource, $itemTarget, $parent, self::$shareTypeGroupUserUnique, $uid, $uidOwner, $permissions, time(), $fileSource, $fileTarget, $token));
+					$query->execute(array($itemType, $itemSource, $itemTarget, $parent,
+						self::$shareTypeGroupUserUnique, $uid, $uidOwner, $permissions, time(),
+							$fileSource, $fileTarget, $token));
 					$id = \OC_DB::insertid('*PREFIX*share');
 				}
 			}
@@ -1025,23 +1107,27 @@ class Share {
 				return $parentFolders;
 			}
 		} else {
-			$itemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $suggestedItemTarget);
+			$itemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner,
+				$suggestedItemTarget);
 			if (isset($fileSource)) {
 				if ($parentFolder) {
 					if ($parentFolder === true) {
-						$fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner, $suggestedFileTarget);
+						$fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith,
+							$uidOwner, $suggestedFileTarget);
 						$parentFolders['folder'] = $fileTarget;
 					} else {
 						$fileTarget = $parentFolder['folder'].$itemSource;
 						$parent = $parentFolder['id'];
 					}
 				} else {
-					$fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner, $suggestedFileTarget);
+					$fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner,
+						$suggestedFileTarget);
 				}
 			} else {
 				$fileTarget = null;
 			}
-			$query->execute(array($itemType, $itemSource, $itemTarget, $parent, $shareType, $shareWith, $uidOwner, $permissions, time(), $fileSource, $fileTarget, $token));
+			$query->execute(array($itemType, $itemSource, $itemTarget, $parent, $shareType, $shareWith, $uidOwner,
+				$permissions, time(), $fileSource, $fileTarget, $token));
 			$id = \OC_DB::insertid('*PREFIX*share');
 			\OC_Hook::emit('OCP\Share', 'post_shared', array(
 				'itemType' => $itemType,
@@ -1076,7 +1162,8 @@ class Share {
 	* @param int The id of the parent group share (optional)
 	* @return string Item target
 	*/
-	private static function generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $suggestedTarget = null, $groupParent = null) {
+	private static function generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner,
+		$suggestedTarget = null, $groupParent = null) {
 		$backend = self::getBackend($itemType);
 		if ($shareType == self::SHARE_TYPE_LINK) {
 			if (isset($suggestedTarget)) {
@@ -1143,18 +1230,28 @@ class Share {
 					// Find similar targets to improve backend's chances to generate a unqiue target
 					if ($userAndGroups) {
 						if ($column == 'file_target') {
-							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` IN (\'file\', \'folder\') AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')');
-							$result = $checkTargets->execute(array(self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique));
+							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share`'
+								.' WHERE `item_type` IN (\'file\', \'folder\')'
+								.' AND `share_type` IN (?,?,?)'
+								.' AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')');
+							$result = $checkTargets->execute(array(self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP,
+								self::$shareTypeGroupUserUnique));
 						} else {
-							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` = ? AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')');
-							$result = $checkTargets->execute(array($itemType, self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique));
+							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share`'
+								.' WHERE `item_type` = ? AND `share_type` IN (?,?,?)'
+								.' AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')');
+							$result = $checkTargets->execute(array($itemType, self::SHARE_TYPE_USER,
+								self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique));
 						}
 					} else {
 						if ($column == 'file_target') {
-							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` IN (\'file\', \'folder\') AND `share_type` = ? AND `share_with` = ?');
+							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share`'
+								.' WHERE `item_type` IN (\'file\', \'folder\')'
+								.' AND `share_type` = ? AND `share_with` = ?');
 							$result = $checkTargets->execute(array(self::SHARE_TYPE_GROUP, $shareWith));
 						} else {
-							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` = ? AND `share_type` = ? AND `share_with` = ?');
+							$checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share`'
+								.' WHERE `item_type` = ? AND `share_type` = ? AND `share_with` = ?');
 							$result = $checkTargets->execute(array($itemType, self::SHARE_TYPE_GROUP, $shareWith));
 						}
 					}
@@ -1182,21 +1279,33 @@ class Share {
 		$parents = array($parent);
 		while (!empty($parents)) {
 			$parents = "'".implode("','", $parents)."'";
-			// Check the owner on the first search of reshares, useful for finding and deleting the reshares by a single user of a group share
+			// Check the owner on the first search of reshares, useful for
+			// finding and deleting the reshares by a single user of a group share
 			if (count($ids) == 1 && isset($uidOwner)) {
-				$query = \OC_DB::prepare('SELECT `id`, `uid_owner`, `item_type`, `item_target`, `parent` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.') AND `uid_owner` = ?');
+				$query = \OC_DB::prepare('SELECT `id`, `uid_owner`, `item_type`, `item_target`, `parent`'
+					.' FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.') AND `uid_owner` = ?');
 				$result = $query->execute(array($uidOwner));
 			} else {
-				$query = \OC_DB::prepare('SELECT `id`, `item_type`, `item_target`, `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.')');
+				$query = \OC_DB::prepare('SELECT `id`, `item_type`, `item_target`, `parent`, `uid_owner`'
+					.' FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.')');
 				$result = $query->execute();
 			}
 			// Reset parents array, only go through loop again if items are found
 			$parents = array();
 			while ($item = $result->fetchRow()) {
-				// Search for a duplicate parent share, this occurs when an item is shared to the same user through a group and user or the same item is shared by different users
+				// Search for a duplicate parent share, this occurs when an
+				// item is shared to the same user through a group and user or the
+				// same item is shared by different users
 				$userAndGroups = array_merge(array($item['uid_owner']), \OC_Group::getUserGroups($item['uid_owner']));
-				$query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share` WHERE `item_type` = ? AND `item_target` = ? AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\') AND `uid_owner` != ? AND `id` != ?');
-				$duplicateParent = $query->execute(array($item['item_type'], $item['item_target'], self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique, $item['uid_owner'], $item['parent']))->fetchRow();
+				$query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share`'
+					.' WHERE `item_type` = ?'
+					.' AND `item_target` = ?'
+					.' AND `share_type` IN (?,?,?)'
+					.' AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')'
+					.' AND `uid_owner` != ? AND `id` != ?');
+				$duplicateParent = $query->execute(array($item['item_type'], $item['item_target'],
+					self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique,
+					$item['uid_owner'], $item['parent']))->fetchRow();
 				if ($duplicateParent) {
 					// Change the parent to the other item id if share permission is granted
 					if ($duplicateParent['permissions'] & PERMISSION_SHARE) {
@@ -1225,7 +1334,8 @@ class Share {
 
 	public static function post_deleteUser($arguments) {
 		// Delete any items shared with the deleted user
-		$query = \OC_DB::prepare('DELETE FROM `*PREFIX*share` WHERE `share_with` = ? AND `share_type` = ? OR `share_type` = ?');
+		$query = \OC_DB::prepare('DELETE FROM `*PREFIX*share`'
+			.' WHERE `share_with` = ? AND `share_type` = ? OR `share_type` = ?');
 		$result = $query->execute(array($arguments['uid'], self::SHARE_TYPE_USER, self::$shareTypeGroupUserUnique));
 		// Delete any items the deleted user shared
 		$query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*share` WHERE `uid_owner` = ?');
@@ -1239,21 +1349,27 @@ class Share {
 		// Find the group shares and check if the user needs a unique target
 		$query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `share_type` = ? AND `share_with` = ?');
 		$result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid']));
-		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`) VALUES (?,?,?,?,?,?,?,?,?,?,?)');
+		$query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`,'
+			.' `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`,'
+			.' `stime`, `file_source`, `file_target`) VALUES (?,?,?,?,?,?,?,?,?,?,?)');
 		while ($item = $result->fetchRow()) {
 			if ($item['item_type'] == 'file' || $item['item_type'] == 'file') {
 				$itemTarget = null;
 			} else {
-				$itemTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER, $arguments['uid'], $item['uid_owner'], $item['item_target'], $item['id']);
+				$itemTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER,
+					$arguments['uid'], $item['uid_owner'], $item['item_target'], $item['id']);
 			}
 			if (isset($item['file_source'])) {
-				$fileTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER, $arguments['uid'], $item['uid_owner'], $item['file_target'], $item['id']);
+				$fileTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER,
+					$arguments['uid'], $item['uid_owner'], $item['file_target'], $item['id']);
 			} else {
 				$fileTarget = null;
 			}
 			// Insert an extra row for the group share if the item or file target is unique for this user
 			if ($itemTarget != $item['item_target'] || $fileTarget != $item['file_target']) {
-				$query->execute(array($item['item_type'], $item['item_source'], $itemTarget, $item['id'], self::$shareTypeGroupUserUnique, $arguments['uid'], $item['uid_owner'], $item['permissions'], $item['stime'], $item['file_source'], $fileTarget));
+				$query->execute(array($item['item_type'], $item['item_source'], $itemTarget, $item['id'],
+					self::$shareTypeGroupUserUnique, $arguments['uid'], $item['uid_owner'], $item['permissions'],
+					$item['stime'], $item['file_source'], $fileTarget));
 				\OC_DB::insertid('*PREFIX*share');
 			}
 		}
@@ -1261,8 +1377,10 @@ class Share {
 
 	public static function post_removeFromGroup($arguments) {
 		// TODO Don't call if user deleted?
-		$query = \OC_DB::prepare('SELECT `id`, `share_type` FROM `*PREFIX*share` WHERE (`share_type` = ? AND `share_with` = ?) OR (`share_type` = ? AND `share_with` = ?)');
-		$result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid'], self::$shareTypeGroupUserUnique, $arguments['uid']));
+		$query = \OC_DB::prepare('SELECT `id`, `share_type` FROM `*PREFIX*share`'
+			.' WHERE (`share_type` = ? AND `share_with` = ?) OR (`share_type` = ? AND `share_with` = ?)');
+		$result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid'], self::$shareTypeGroupUserUnique,
+			$arguments['uid']));
 		while ($item = $result->fetchRow()) {
 			if ($item['share_type'] == self::SHARE_TYPE_GROUP) {
 				// Delete all reshares by this user of the group share
@@ -1319,10 +1437,18 @@ interface Share_Backend {
 	* @param int Format
 	* @return ?
 	*
-	* The items array is a 3-dimensional array with the item_source as the first key and the share id as the second key to an array with the share info.
+	* The items array is a 3-dimensional array with the item_source as the
+	* first key and the share id as the second key to an array with the share
+	* info.
+	*
 	* The key/value pairs included in the share info depend on the function originally called:
-	* If called by getItem(s)Shared: id, item_type, item, item_source, share_type, share_with, permissions, stime, file_source
-	* If called by getItem(s)SharedWith: id, item_type, item, item_source, item_target, share_type, share_with, permissions, stime, file_source, file_target
+	* If called by getItem(s)Shared: id, item_type, item, item_source,
+	* share_type, share_with, permissions, stime, file_source
+	*
+	* If called by getItem(s)SharedWith: id, item_type, item, item_source,
+	* item_target, share_type, share_with, permissions, stime, file_source,
+	* file_target
+	*
 	* This function allows the backend to control the output of shared items with custom formats.
 	* It is only called through calls to the public getItem(s)Shared(With) functions.
 	*/
diff --git a/lib/public/template.php b/lib/public/template.php
index 4cda36508668264a966624c4f5307bb92596ab22..ccf19cf052cbefc4a7e52c7a22f82cb898560858 100644
--- a/lib/public/template.php
+++ b/lib/public/template.php
@@ -99,7 +99,8 @@ function html_select_options($options, $selected, $params=array()) {
 
 
 /**
- * This class provides the template system for owncloud. You can use it to load specific templates, add data and generate the html code
+ * This class provides the template system for owncloud. You can use it to load
+ * specific templates, add data and generate the html code
  */
 class Template extends \OC_Template {
 
diff --git a/lib/public/user.php b/lib/public/user.php
index de52055a4c5cd488992f4bbc0781e193c2e1f120..86d1d0ccde8625c73d67eb0730256600b71b3295 100644
--- a/lib/public/user.php
+++ b/lib/public/user.php
@@ -31,7 +31,8 @@
 namespace OCP;
 
 /**
- * This class provides access to the user management. You can get information about the currently logged in user and the permissions for example
+ * This class provides access to the user management. You can get information
+ * about the currently logged in user and the permissions for example
  */
 class User {
 	/**
diff --git a/lib/public/util.php b/lib/public/util.php
index 5f6ede4460e85eaafccb014029cfccedaa56ca22..13498b260ef88990f4f626f313cb332552d18ce1 100644
--- a/lib/public/util.php
+++ b/lib/public/util.php
@@ -59,9 +59,11 @@ class Util {
 	 * @param string $fromname
 	 * @param bool $html
 	 */
-	public static function sendMail( $toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname, $html = 0, $altbody = '', $ccaddress = '', $ccname = '', $bcc = '') {
+	public static function sendMail( $toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname,
+		$html = 0, $altbody = '', $ccaddress = '', $ccname = '', $bcc = '') {
 		// call the internal mail class
-		\OC_MAIL::send($toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname, $html, $altbody, $ccaddress, $ccname, $bcc);
+		\OC_MAIL::send($toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname,
+			$html, $altbody, $ccaddress, $ccname, $bcc);
 	}
 
 	/**
@@ -340,7 +342,8 @@ class Util {
 	/**
 	 * @brief Used to sanitize HTML
 	 *
-	 * This function is used to sanitize HTML and should be applied on any string or array of strings before displaying it on a web page.
+	 * This function is used to sanitize HTML and should be applied on any
+	 * string or array of strings before displaying it on a web page.
 	 *
 	 * @param string|array of strings
 	 * @return array with sanitized strings or a single sinitized string, depends on the input parameter.
diff --git a/lib/request.php b/lib/request.php
index 1661a1406ca721a53c5407082454d965913499e7..3af93289670cc4a45029498ba18750322c74b064 100755
--- a/lib/request.php
+++ b/lib/request.php
@@ -114,8 +114,8 @@ class OC_Request {
 
 			switch($encoding) {
 
-			    case 'ISO-8859-1' :
-				    $path_info = utf8_encode($path_info);
+				case 'ISO-8859-1' :
+					$path_info = utf8_encode($path_info);
 
 			}
 			// end copy
@@ -149,4 +149,16 @@ class OC_Request {
 			return 'gzip';
 		return false;
 	}
+	
+	/**
+	 * @brief Check if the requester sent along an mtime
+	 * @returns false or an mtime
+	 */
+	static public function hasModificationTime () {
+		if (isset($_SERVER['HTTP_X_OC_MTIME'])) {
+			return $_SERVER['HTTP_X_OC_MTIME'];
+		} else {
+			return false;
+		}
+	}
 }
diff --git a/lib/setup.php b/lib/setup.php
index f342142c95794f6085d1929598cb288fa3fe0f9e..0c049841b2aa0965789a8696feb8cbd448354ba4 100644
--- a/lib/setup.php
+++ b/lib/setup.php
@@ -19,18 +19,25 @@ class DatabaseSetupException extends Exception
 }
 
 class OC_Setup {
+
+	public static function getTrans(){
+		return OC_L10N::get('lib');
+	}
+
 	public static function install($options) {
+		$l = self::getTrans();
+
 		$error = array();
 		$dbtype = $options['dbtype'];
 
 		if(empty($options['adminlogin'])) {
-			$error[] = 'Set an admin username.';
+			$error[] = $l->t('Set an admin username.');
 		}
 		if(empty($options['adminpass'])) {
-			$error[] = 'Set an admin password.';
+			$error[] = $l->t('Set an admin password.');
 		}
 		if(empty($options['directory'])) {
-			$error[] = 'Specify a data folder.';
+			$error[] = $l->t('Specify a data folder.');
 		}
 
 		if($dbtype=='mysql' or $dbtype == 'pgsql' or $dbtype == 'oci') { //mysql and postgresql needs more config options
@@ -43,16 +50,16 @@ class OC_Setup {
 
 
 			if(empty($options['dbuser'])) {
-				$error[] = "$dbprettyname enter the database username.";
+				$error[] = $l->t("%s enter the database username.", array($dbprettyname));
 			}
 			if(empty($options['dbname'])) {
-				$error[] = "$dbprettyname enter the database name.";
+				$error[] = $l->t("%s enter the database name.", array($dbprettyname));
 			}
 			if(substr_count($options['dbname'], '.') >= 1) {
-				$error[] = "$dbprettyname you may not use dots in the database name";
+				$error[] = $l->t("%s you may not use dots in the database name", array($dbprettyname));
 			}
 			if($dbtype != 'oci' && empty($options['dbhost'])) {
-				$error[] = "$dbprettyname set the database host.";
+				$error[] = $l->t("%s set the database host.", array($dbprettyname));
 			}
 		}
 
@@ -116,8 +123,8 @@ class OC_Setup {
 					self::setupPostgreSQLDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $username);
 				} catch (Exception $e) {
 					$error[] = array(
-						'error' => 'PostgreSQL username and/or password not valid',
-						'hint' => 'You need to enter either an existing account or the administrator.'
+						'error' => $l->t('PostgreSQL username and/or password not valid'),
+						'hint' => $l->t('You need to enter either an existing account or the administrator.')
 					);
 					return $error;
 				}
@@ -139,8 +146,8 @@ class OC_Setup {
 					self::setupOCIDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $dbtablespace, $username);
 				} catch (Exception $e) {
 					$error[] = array(
-						'error' => 'Oracle username and/or password not valid',
-						'hint' => 'You need to enter either an existing account or the administrator.'
+						'error' => $l->t('Oracle username and/or password not valid'),
+						'hint' => $l->t('You need to enter either an existing account or the administrator.')
 					);
 					return $error;
 				}
@@ -190,13 +197,16 @@ class OC_Setup {
 
 	private static function setupMySQLDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $username) {
 		//check if the database user has admin right
+		$l = self::getTrans();
 		$connection = @mysql_connect($dbhost, $dbuser, $dbpass);
 		if(!$connection) {
-			throw new DatabaseSetupException('MySQL username and/or password not valid','You need to enter either an existing account or the administrator.');
+			throw new DatabaseSetupException($l->t('MySQL username and/or password not valid'),
+				$l->t('You need to enter either an existing account or the administrator.'));
 		}
 		$oldUser=OC_Config::getValue('dbuser', false);
 
-		$query="SELECT user FROM mysql.user WHERE user='$dbuser'"; //this should be enough to check for admin rights in mysql
+		//this should be enough to check for admin rights in mysql
+		$query="SELECT user FROM mysql.user WHERE user='$dbuser'";
 		if(mysql_query($query, $connection)) {
 			//use the admin login data for the new database user
 
@@ -226,7 +236,8 @@ class OC_Setup {
 		}
 
 		//fill the database if needed
-		$query="select count(*) from information_schema.tables where table_schema='$dbname' AND table_name = '{$dbtableprefix}users';";
+		$query="select count(*) from information_schema.tables'
+			.' where table_schema='$dbname' AND table_name = '{$dbtableprefix}users';";
 		$result = mysql_query($query, $connection);
 		if($result) {
 			$row=mysql_fetch_row($result);
@@ -239,29 +250,34 @@ class OC_Setup {
 
 	private static function createMySQLDatabase($name, $user, $connection) {
 		//we cant use OC_BD functions here because we need to connect as the administrative user.
+		$l = self::getTrans();
 		$query = "CREATE DATABASE IF NOT EXISTS  `$name`";
 		$result = mysql_query($query, $connection);
 		if(!$result) {
-			$entry='DB Error: "'.mysql_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(mysql_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		$query="GRANT ALL PRIVILEGES ON  `$name` . * TO  '$user'";
-		$result = mysql_query($query, $connection); //this query will fail if there aren't the right permissons, ignore the error
+		//this query will fail if there aren't the right permissons, ignore the error
+		$result = mysql_query($query, $connection);
 	}
 
 	private static function createDBUser($name, $password, $connection) {
 		// we need to create 2 accounts, one for global use and one for local user. if we don't specify the local one,
 		// the anonymous user would take precedence when there is one.
+		$l = self::getTrans();
 		$query = "CREATE USER '$name'@'localhost' IDENTIFIED BY '$password'";
 		$result = mysql_query($query, $connection);
 		if (!$result) {
-			throw new DatabaseSetupException("MySQL user '" . "$name" . "'@'localhost' already exists","Delete this user from MySQL.");
+			throw new DatabaseSetupException($l->t("MySQL user '%s'@'localhost' exists already.",
+				array($name)), $l->t("Drop this user from MySQL", array($name)));
 		}
 		$query = "CREATE USER '$name'@'%' IDENTIFIED BY '$password'";
 		$result = mysql_query($query, $connection);
 		if (!$result) {
-			throw new DatabaseSetupException("MySQL user '" . "$name" . "'@'%' already exists","Delete this user from MySQL.");
+			throw new DatabaseSetupException($l->t("MySQL user '%s'@'%%' already exists", array($name)), 
+				$l->t("Drop this user from MySQL."));
 		}
 	}
 
@@ -269,12 +285,13 @@ class OC_Setup {
 		$e_host = addslashes($dbhost);
 		$e_user = addslashes($dbuser);
 		$e_password = addslashes($dbpass);
+		$l = self::getTrans();
 
 		//check if the database user has admin rights
 		$connection_string = "host='$e_host' dbname=postgres user='$e_user' password='$e_password'";
 		$connection = @pg_connect($connection_string);
 		if(!$connection) {
-			throw new Exception('PostgreSQL username and/or password not valid');
+			throw new Exception($l->t('PostgreSQL username and/or password not valid'));
 		}
 		$e_user = pg_escape_string($dbuser);
 		//check for roles creation rights in postgresql
@@ -319,7 +336,7 @@ class OC_Setup {
 		$connection_string = "host='$e_host' dbname='$e_dbname' user='$e_user' password='$e_password'";
 		$connection = @pg_connect($connection_string);
 		if(!$connection) {
-			throw new Exception('PostgreSQL username and/or password not valid');
+			throw new Exception($l->t('PostgreSQL username and/or password not valid'));
 		}
 		$query = "select count(*) FROM pg_class WHERE relname='{$dbtableprefix}users' limit 1";
 		$result = pg_query($connection, $query);
@@ -332,14 +349,16 @@ class OC_Setup {
 	}
 
 	private static function pg_createDatabase($name, $user, $connection) {
+
 		//we cant use OC_BD functions here because we need to connect as the administrative user.
+		$l = self::getTrans();
 		$e_name = pg_escape_string($name);
 		$e_user = pg_escape_string($user);
 		$query = "select datname from pg_database where datname = '$e_name'";
 		$result = pg_query($connection, $query);
 		if(!$result) {
-			$entry='DB Error: "'.pg_last_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(pg_last_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		if(! pg_fetch_row($result)) {
@@ -347,8 +366,8 @@ class OC_Setup {
 			$query = "CREATE DATABASE \"$e_name\" OWNER \"$e_user\"";
 			$result = pg_query($connection, $query);
 			if(!$result) {
-				$entry='DB Error: "'.pg_last_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(pg_last_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 			else {
@@ -359,13 +378,14 @@ class OC_Setup {
 	}
 
 	private static function pg_createDBUser($name, $password, $connection) {
+		$l = self::getTrans();
 		$e_name = pg_escape_string($name);
 		$e_password = pg_escape_string($password);
 		$query = "select * from pg_roles where rolname='$e_name';";
 		$result = pg_query($connection, $query);
 		if(!$result) {
-			$entry='DB Error: "'.pg_last_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(pg_last_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 
@@ -374,8 +394,8 @@ class OC_Setup {
 			$query = "CREATE USER \"$e_name\" CREATEDB PASSWORD '$e_password';";
 			$result = pg_query($connection, $query);
 			if(!$result) {
-				$entry='DB Error: "'.pg_last_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(pg_last_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 		}
@@ -383,14 +403,16 @@ class OC_Setup {
 			$query = "ALTER ROLE \"$e_name\" WITH PASSWORD '$e_password';";
 			$result = pg_query($connection, $query);
 			if(!$result) {
-				$entry='DB Error: "'.pg_last_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(pg_last_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 		}
 	}
 
-	private static function setupOCIDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $dbtablespace, $username) {
+	private static function setupOCIDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $dbtablespace,
+		$username) {
+		$l = self::getTrans();
 		$e_host = addslashes($dbhost);
 		$e_dbname = addslashes($dbname);
 		//check if the database user has admin right
@@ -402,15 +424,16 @@ class OC_Setup {
 		$connection = @oci_connect($dbuser, $dbpass, $easy_connect_string);
 		if(!$connection) {
 			$e = oci_error();
-			throw new Exception('Oracle username and/or password not valid');
+			throw new Exception($l->t('Oracle username and/or password not valid'));
 		}
 		//check for roles creation rights in oracle
 
-		$query="SELECT count(*) FROM user_role_privs, role_sys_privs WHERE user_role_privs.granted_role = role_sys_privs.role AND privilege = 'CREATE ROLE'";
+		$query="SELECT count(*) FROM user_role_privs, role_sys_privs'
+			.' WHERE user_role_privs.granted_role = role_sys_privs.role AND privilege = 'CREATE ROLE'";
 		$stmt = oci_parse($connection, $query);
 		if (!$stmt) {
-			$entry='DB Error: "'.oci_last_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_last_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		$result = oci_execute($stmt);
@@ -468,15 +491,15 @@ class OC_Setup {
 		}
 		$connection = @oci_connect($dbuser, $dbpass, $easy_connect_string);
 		if(!$connection) {
-			throw new Exception('Oracle username and/or password not valid');
+			throw new Exception($l->t('Oracle username and/or password not valid'));
 		}
 		$query = "SELECT count(*) FROM user_tables WHERE table_name = :un";
 		$stmt = oci_parse($connection, $query);
 		$un = $dbtableprefix.'users';
 		oci_bind_by_name($stmt, ':un', $un);
 		if (!$stmt) {
-			$entry='DB Error: "'.oci_last_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_last_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		$result = oci_execute($stmt);
@@ -497,19 +520,19 @@ class OC_Setup {
 	 * @param resource $connection
 	 */
 	private static function oci_createDBUser($name, $password, $tablespace, $connection) {
-
+		$l = self::getTrans();
 		$query = "SELECT * FROM all_users WHERE USERNAME = :un";
 		$stmt = oci_parse($connection, $query);
 		if (!$stmt) {
-			$entry='DB Error: "'.oci_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		oci_bind_by_name($stmt, ':un', $name);
 		$result = oci_execute($stmt);
 		if(!$result) {
-			$entry='DB Error: "'.oci_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 
@@ -519,31 +542,32 @@ class OC_Setup {
 			$query = 'CREATE USER '.$name.' IDENTIFIED BY "'.$password.'" DEFAULT TABLESPACE '.$tablespace; //TODO set default tablespace
 			$stmt = oci_parse($connection, $query);
 			if (!$stmt) {
-				$entry='DB Error: "'.oci_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 			//oci_bind_by_name($stmt, ':un', $name);
 			$result = oci_execute($stmt);
 			if(!$result) {
-				$entry='DB Error: "'.oci_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s", name: %s, password: %s', 
+					array($query, $name, $password)) . '<br />';
 				echo($entry);
 			}
 		} else { // change password of the existing role
 			$query = "ALTER USER :un IDENTIFIED BY :pw";
 			$stmt = oci_parse($connection, $query);
 			if (!$stmt) {
-				$entry='DB Error: "'.oci_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 			oci_bind_by_name($stmt, ':un', $name);
 			oci_bind_by_name($stmt, ':pw', $password);
 			$result = oci_execute($stmt);
 			if(!$result) {
-				$entry='DB Error: "'.oci_error($connection).'"<br />';
-				$entry.='Offending command was: '.$query.'<br />';
+				$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+				$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 				echo($entry);
 			}
 		}
@@ -551,14 +575,15 @@ class OC_Setup {
 		$query = 'GRANT CREATE SESSION, CREATE TABLE, CREATE SEQUENCE, CREATE TRIGGER, UNLIMITED TABLESPACE TO '.$name;
 		$stmt = oci_parse($connection, $query);
 		if (!$stmt) {
-			$entry='DB Error: "'.oci_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s"', array($query)) . '<br />';
 			echo($entry);
 		}
 		$result = oci_execute($stmt);
 		if(!$result) {
-			$entry='DB Error: "'.oci_error($connection).'"<br />';
-			$entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
+			$entry = $l->t('DB Error: "%s"', array(oci_error($connection))) . '<br />';
+			$entry .= $l->t('Offending command was: "%s", name: %s, password: %s', 
+				array($query, $name, $password)) . '<br />';
 			echo($entry);
 		}
 	}
@@ -616,13 +641,15 @@ class OC_Setup {
 	 */
 	public static function postSetupCheck($params) {
 		// setup was successful -> webdav testing now
+		$l = self::getTrans();
 		if (OC_Util::isWebDAVWorking()) {
 			header("Location: ".OC::$WEBROOT.'/');
 		} else {
-			$l=OC_L10N::get('lib');
 
-			$error = $l->t('Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken.');
-			$hint = $l->t('Please double check the <a href=\'%s\'>installation guides</a>.', 'http://doc.owncloud.org/server/5.0/admin_manual/installation.html');
+			$error = $l->t('Your web server is not yet properly setup to allow files'
+				.' synchronization because the WebDAV interface seems to be broken.');
+			$hint = $l->t('Please double check the <a href=\'%s\'>installation guides</a>.',
+				'http://doc.owncloud.org/server/5.0/admin_manual/installation.html');
 
 			$tmpl = new OC_Template('', 'error', 'guest');
 			$tmpl->assign('errors', array(1 => array('error' => $error, 'hint' => $hint)), false);
diff --git a/lib/template.php b/lib/template.php
index fb9f7ad62d90b18c3b9e74828d8f1087f2d95666..3df5a24f946cb3db3c95a65671e2ee64606c2229 100644
--- a/lib/template.php
+++ b/lib/template.php
@@ -192,7 +192,13 @@ class OC_Template{
 
 		// Content Security Policy
 		// If you change the standard policy, please also change it in config.sample.php
-		$policy = OC_Config::getValue('custom_csp_policy',  'default-src \'self\'; script-src \'self\' \'unsafe-eval\'; style-src \'self\' \'unsafe-inline\'; frame-src *; img-src *; font-src \'self\' data:');
+		$policy = OC_Config::getValue('custom_csp_policy',
+			'default-src \'self\'; '
+			.'script-src \'self\' \'unsafe-eval\'; '
+			.'style-src \'self\' \'unsafe-inline\'; '
+			.'frame-src *; '
+			.'img-src *; '
+			.'font-src \'self\' data:');
 		header('Content-Security-Policy:'.$policy); // Standard
 		header('X-WebKit-CSP:'.$policy); // Older webkit browsers
 
@@ -215,7 +221,8 @@ class OC_Template{
 				$mode='tablet';
 			}elseif(stripos($_SERVER['HTTP_USER_AGENT'], 'iphone')>0) {
 				$mode='mobile';
-			}elseif((stripos($_SERVER['HTTP_USER_AGENT'], 'N9')>0) and (stripos($_SERVER['HTTP_USER_AGENT'], 'nokia')>0)) {
+			}elseif((stripos($_SERVER['HTTP_USER_AGENT'], 'N9')>0)
+				and (stripos($_SERVER['HTTP_USER_AGENT'], 'nokia')>0)) {
 				$mode='mobile';
 			}else{
 				$mode='default';
@@ -285,7 +292,8 @@ class OC_Template{
 				if ($this->checkPathForTemplate(OC::$SERVERROOT."/themes/$theme/$app/templates/", $name, $fext)) {
 				}elseif ($this->checkPathForTemplate(OC::$SERVERROOT."/$app/templates/", $name, $fext)) {
 				}else{
-					echo('template not found: template:'.$name.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
+					echo('template not found: template:'.$name.' formfactor:'.$fext
+						.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
 					die();
 				}
 
@@ -295,7 +303,8 @@ class OC_Template{
 			if ($this->checkPathForTemplate(OC::$SERVERROOT."/themes/$theme/core/templates/", $name, $fext)) {
 			} elseif ($this->checkPathForTemplate(OC::$SERVERROOT."/core/templates/", $name, $fext)) {
 			}else{
-				echo('template not found: template:'.$name.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
+				echo('template not found: template:'.$name.' formfactor:'.$fext
+					.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
 				die();
 			}
 		}
@@ -406,6 +415,8 @@ class OC_Template{
 			$page = new OC_TemplateLayout($this->renderas);
 			if($this->renderas == 'user') {
 				$page->assign('requesttoken', $this->vars['requesttoken']);
+				$user = OC_User::getUser();
+				$page->assign('displayname', OCP\User::getDisplayName($user));
 			}
 
 			// Add custom headers
diff --git a/lib/templatelayout.php b/lib/templatelayout.php
index 345f540af042a057787be9125c1b998deb05f2e7..25d4033d9eef1e7351e65c9abbbfae27c4013729 100644
--- a/lib/templatelayout.php
+++ b/lib/templatelayout.php
@@ -134,7 +134,8 @@ class OC_TemplateLayout extends OC_Template {
 					}
 				}
 				if(! $append) {
-					echo('css file not found: style:'.$style.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
+					echo('css file not found: style:'.$style.' formfactor:'.$fext
+						.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
 					die();
 				}
 			}
@@ -202,7 +203,8 @@ class OC_TemplateLayout extends OC_Template {
 					}
 				}
 				if(! $append) {
-					echo('js file not found: script:'.$script.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
+					echo('js file not found: script:'.$script.' formfactor:'.$fext
+						.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
 					die();
 				}
 			}
diff --git a/lib/updater.php b/lib/updater.php
index d44ac1083808d41120066a202db38a0f5af0f6fd..e7d33ac2bb970c5ac240850594057982f5357bea 100644
--- a/lib/updater.php
+++ b/lib/updater.php
@@ -30,7 +30,9 @@ class OC_Updater{
 	 */
 	public static function check() {
 		OC_Appconfig::setValue('core', 'lastupdatedat', microtime(true));
-		if(OC_Appconfig::getValue('core', 'installedat', '')=='') OC_Appconfig::setValue('core', 'installedat', microtime(true));
+		if(OC_Appconfig::getValue('core', 'installedat', '')=='') {
+			OC_Appconfig::setValue('core', 'installedat', microtime(true));
+		}
 
 		$updaterurl='http://apps.owncloud.com/updater.php';
 		$version=OC_Util::getVersion();
@@ -72,7 +74,9 @@ class OC_Updater{
 		if(OC_Config::getValue('updatechecker', true)==true) {
 			$data=OC_Updater::check();
 			if(isset($data['version']) and $data['version']<>'') {
-				$txt='<span style="color:#AA0000; font-weight:bold;">'.$l->t('%s is available. Get <a href="%s">more information</a>', array($data['versionstring'], $data['web'])).'</span>';
+				$txt='<span style="color:#AA0000; font-weight:bold;">'
+					.$l->t('%s is available. Get <a href="%s">more information</a>',
+					array($data['versionstring'], $data['web'])).'</span>';
 			}else{
 				$txt=$l->t('up to date');
 			}
diff --git a/lib/user.php b/lib/user.php
index 9dc8cca97a66e8a9c2c0b5f375643477441d6de5..e69fef95a1383215717a215319bf8979881aceff 100644
--- a/lib/user.php
+++ b/lib/user.php
@@ -160,7 +160,8 @@ class OC_User {
 		// Check the name for bad characters
 		// Allowed are: "a-z", "A-Z", "0-9" and "_.@-"
 		if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $uid )) {
-			throw new Exception('Only the following characters are allowed in a username: "a-z", "A-Z", "0-9", and "_.@-"');
+			throw new Exception('Only the following characters are allowed in a username:'
+				.' "a-z", "A-Z", "0-9", and "_.@-"');
 		}
 		// No empty username
 		if(trim($uid) == '') {
@@ -172,7 +173,7 @@ class OC_User {
 		}
 
 		// Check if user already exists
-		if( self::userExists($uid) ) {
+		if( self::userExistsForCreation($uid) ) {
 			throw new Exception('The username is already being used');
 		}
 
@@ -445,10 +446,12 @@ class OC_User {
 	 * Check whether a specified user can change his display name
 	 */
 	public static function canUserChangeDisplayName($uid) {
-		foreach(self::$_usedBackends as $backend) {
-			if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
-				if($backend->userExists($uid)) {
-					return true;
+		if (OC_Config::getValue('allow_user_to_change_display_name', true)) {
+			foreach(self::$_usedBackends as $backend) {
+				if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
+					if($backend->userExists($uid)) {
+						return true;
+					}
 				}
 			}
 		}
@@ -485,7 +488,7 @@ class OC_User {
 	 */
 	public static function getHome($uid) {
 		foreach(self::$_usedBackends as $backend) {
-			if($backend->implementsActions(OC_USER_BACKEND_GET_HOME)) {
+			if($backend->implementsActions(OC_USER_BACKEND_GET_HOME) && $backend->userExists($uid)) {
 				$result=$backend->getHome($uid);
 				if($result) {
 					return $result;
@@ -539,9 +542,9 @@ class OC_User {
 	 */
 	public static function userExists($uid, $excludingBackend=null) {
 		foreach(self::$_usedBackends as $backend) {
-			if (!is_null($excludingBackend) && !strcmp(get_class($backend),$excludingBackend)) {
-			    OC_Log::write('OC_User', $excludingBackend . 'excluded from user existance check.', OC_Log::DEBUG);
-			    continue;
+			if (!is_null($excludingBackend) && !strcmp(get_class($backend), $excludingBackend)) {
+				OC_Log::write('OC_User', $excludingBackend . 'excluded from user existance check.', OC_Log::DEBUG);
+				continue;
 			}
 			$result=$backend->userExists($uid);
 			if($result===true) {
@@ -551,6 +554,19 @@ class OC_User {
 		return false;
 	}
 
+    public static function userExistsForCreation($uid) {
+        foreach(self::$_usedBackends as $backend) {
+            if(!$backend->hasUserListings())
+                continue;
+
+            $result=$backend->userExists($uid);
+            if($result===true) {
+                return true;
+            }
+        }
+        return false;
+    }
+
 	/**
 	 * disables a user
 	 * @param string $userid the user to disable
@@ -573,7 +589,8 @@ class OC_User {
 	 * @param string $userid
 	 */
 	public static function enableUser($userid) {
-		$sql = "DELETE FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?";
+		$sql = "DELETE FROM `*PREFIX*preferences`'
+			.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?";
 		$stmt = OC_DB::prepare($sql);
 		if ( ! OC_DB::isError($stmt) ) {
 			$result = $stmt->execute(array($userid, 'core', 'enabled', 'false'));
@@ -591,14 +608,17 @@ class OC_User {
 	 * @return bool
 	 */
 	public static function isEnabled($userid) {
-		$sql = "SELECT `userid` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?";
+		$sql = 'SELECT `userid` FROM `*PREFIX*preferences`'
+			.' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?';
 		$stmt = OC_DB::prepare($sql);
 		if ( ! OC_DB::isError($stmt) ) {
 			$result = $stmt->execute(array($userid, 'core', 'enabled', 'false'));
 			if ( ! OC_DB::isError($result) ) {
 				return $result->numRows() ? false : true;
 			} else {
-				OC_Log::write('OC_User', 'could not check if enabled: '. OC_DB::getErrorMessage($result), OC_Log::ERROR);
+				OC_Log::write('OC_User',
+					'could not check if enabled: '. OC_DB::getErrorMessage($result),
+					OC_Log::ERROR);
 			}
 		} else {
 			OC_Log::write('OC_User', 'could not check if enabled: '. OC_DB::getErrorMessage($stmt), OC_Log::ERROR);
diff --git a/lib/user/backend.php b/lib/user/backend.php
index 56fa3195978fcf95bf373293d404d3b6910f0eb6..60b3cc6c5e4cde4ff79e44b092b6d66d2d932c32 100644
--- a/lib/user/backend.php
+++ b/lib/user/backend.php
@@ -36,7 +36,7 @@ define('OC_USER_BACKEND_SET_PASSWORD',      0x000010);
 define('OC_USER_BACKEND_CHECK_PASSWORD',    0x000100);
 define('OC_USER_BACKEND_GET_HOME',			0x001000);
 define('OC_USER_BACKEND_GET_DISPLAYNAME',	0x010000);
-define('OC_USER_BACKEND_SET_DISPLAYNAME',	0x010000);
+define('OC_USER_BACKEND_SET_DISPLAYNAME',	0x100000);
 
 
 /**
@@ -134,18 +134,26 @@ abstract class OC_User_Backend implements OC_User_Interface {
 		return $uid;
 	}
 	
-	/**
-	 * @brief Get a list of all display names
-	 * @returns array with  all displayNames (value) and the correspondig uids (key)
-	 *
-	 * Get a list of all display names and user ids.
-	 */
-	public function getDisplayNames($search = '', $limit = null, $offset = null) {
+	/**
+	 * @brief Get a list of all display names
+	 * @returns array with  all displayNames (value) and the corresponding uids (key)
+	 *
+	 * Get a list of all display names and user ids.
+	 */
+	public function getDisplayNames($search = '', $limit = null, $offset = null) {
 		$displayNames = array();
 		$users = $this->getUsers($search, $limit, $offset);
 		foreach ( $users as $user) {
 			$displayNames[$user] = $user;
 		}
-		return $displayNames;
+		return $displayNames;
+	}
+
+	/**
+	 * @brief Check if a user list is available or not
+	 * @return boolean if users can be listed or not
+	 */
+	public function hasUserListings() {
+		return false;
 	}
 }
diff --git a/lib/user/database.php b/lib/user/database.php
index 8dfd9534a96cc48f6abfa2d76869cb586f5eb04f..a0ad03fe0a0fe7062d298c2e0a46952e7d64a9c6 100644
--- a/lib/user/database.php
+++ b/lib/user/database.php
@@ -111,30 +111,30 @@ class OC_User_Database extends OC_User_Backend {
 		}
 	}
 	
-	/**
-	 * @brief Set display name
-	 * @param $uid The username
-	 * @param $displayName The new display name
-	 * @returns true/false
-	 *
-	 * Change the display name of a user
+	/**
+	 * @brief Set display name
+	 * @param $uid The username
+	 * @param $displayName The new display name
+	 * @returns true/false
+	 *
+	 * Change the display name of a user
 	 */
 	public function setDisplayName( $uid, $displayName ) {
-		if( $this->userExists($uid) ) {
-			$query = OC_DB::prepare( 'UPDATE `*PREFIX*users` SET `displayname` = ? WHERE `uid` = ?' );
-			$query->execute( array( $displayName, $uid ));
-			return true;
-		}else{
-			return false;
-		}
+		if( $this->userExists($uid) ) {
+			$query = OC_DB::prepare( 'UPDATE `*PREFIX*users` SET `displayname` = ? WHERE `uid` = ?' );
+			$query->execute( array( $displayName, $uid ));
+			return true;
+		}else{
+			return false;
+		}
 	}
 
-	/**
-	 * @brief get display name of the user
-	 * @param $uid user ID of the user
-	 * @return display name
-	 */
-	public function getDisplayName($uid) {
+	/**
+	 * @brief get display name of the user
+	 * @param $uid user ID of the user
+	 * @return display name
+	 */
+	public function getDisplayName($uid) {
 		if( $this->userExists($uid) ) {
 			$query = OC_DB::prepare( 'SELECT displayname FROM `*PREFIX*users` WHERE `uid` = ?' );
 			$result = $query->execute( array( $uid ))->fetchAll();
@@ -144,36 +144,38 @@ class OC_User_Database extends OC_User_Backend {
 			} else {
 				return $uid;
 			}
-		}
+		}
 	}
 	
-	/**
-	 * @brief Get a list of all display names
-	 * @returns array with  all displayNames (value) and the correspondig uids (key)
-	 *
-	 * Get a list of all display names and user ids.
-	 */
+	/**
+	 * @brief Get a list of all display names
+	 * @returns array with  all displayNames (value) and the correspondig uids (key)
+	 *
+	 * Get a list of all display names and user ids.
+	 */
 	public function getDisplayNames($search = '', $limit = null, $offset = null) {
 		$displayNames = array();
-		$query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users` WHERE LOWER(`displayname`) LIKE LOWER(?)', $limit, $offset);
+		$query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users`'
+			.' WHERE LOWER(`displayname`) LIKE LOWER(?)', $limit, $offset);
 		$result = $query->execute(array($search.'%'));
-		$users = array();
-		while ($row = $result->fetchRow()) {
-			$displayNames[$row['uid']] = $row['displayname'];
+		$users = array();
+		while ($row = $result->fetchRow()) {
+			$displayNames[$row['uid']] = $row['displayname'];
 		}
 		
 		// let's see if we can also find some users who don't have a display name yet
-		$query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users` WHERE LOWER(`uid`) LIKE LOWER(?)', $limit, $offset);
+		$query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users`'
+			.' WHERE LOWER(`uid`) LIKE LOWER(?)', $limit, $offset);
 		$result = $query->execute(array($search.'%'));
-		while ($row = $result->fetchRow()) {
+		while ($row = $result->fetchRow()) {
 			$displayName =  trim($row['displayname'], ' ');
-			if ( empty($displayName) ) {
+			if ( empty($displayName) ) {
 				$displayNames[$row['uid']] = $row['uid'];
-			}
+			}
 		}
 		
-		
-		return $displayNames;
+		
+		return $displayNames;
 	}
 	
 	/**
@@ -256,4 +258,12 @@ class OC_User_Database extends OC_User_Backend {
 			return false;
 		}
 	}
+
+	/**
+	 * @return bool
+	 */
+	public function hasUserListings() {
+		return true;
+	}
+
 }
diff --git a/lib/user/dummy.php b/lib/user/dummy.php
index 4dbbc02b8888b0a282cefe892c178a06df960601..d63f60efbeb53c0a1adb61e6ce8c5df789672957 100644
--- a/lib/user/dummy.php
+++ b/lib/user/dummy.php
@@ -112,4 +112,11 @@ class OC_User_Dummy extends OC_User_Backend {
 	public function userExists($uid) {
 		return isset($this->users[$uid]);
 	}
+
+	/**
+	 * @return bool
+	 */
+	public function hasUserListings() {
+		return true;
+	}
 }
diff --git a/lib/user/interface.php b/lib/user/interface.php
index b4667633b5083b13996f678988b9938951f5a9f7..b1e19aea7fb2373badab0ddc512f6d18fe1a68d7 100644
--- a/lib/user/interface.php
+++ b/lib/user/interface.php
@@ -66,10 +66,15 @@ interface OC_User_Interface {
 
 	/**
 	 * @brief Get a list of all display names
-	 * @returns array with  all displayNames (value) and the correspondig uids (key)
+	 * @returns array with  all displayNames (value) and the corresponding uids (key)
 	 *
 	 * Get a list of all display names and user ids.
 	 */
 	public function getDisplayNames($search = '', $limit = null, $offset = null);
 
+	/**
+	 * @brief Check if a user list is available or not
+	 * @return boolean if users can be listed or not
+	 */
+	public function hasUserListings();
 }
\ No newline at end of file
diff --git a/lib/util.php b/lib/util.php
index 7950586b5804aa1981be1064a4fe52af83c6dde4..e739f76034c371798253f6f62b8db31e5577caac 100755
--- a/lib/util.php
+++ b/lib/util.php
@@ -51,7 +51,7 @@ class OC_Util {
 				mkdir( $userdirectory, 0755, true );
 			}
 			//jail the user into his "home" directory
-			\OC\Files\Filesystem::init($user_dir);
+			\OC\Files\Filesystem::init($user, $user_dir);
 
 			$quotaProxy=new OC_FileProxy_Quota();
 			$fileOperationProxy = new OC_FileProxy_FileOperations();
@@ -73,8 +73,9 @@ class OC_Util {
 	 * @return array
 	 */
 	public static function getVersion() {
-		// hint: We only can count up. So the internal version number of ownCloud 4.5 will be 4.90.0. This is not visible to the user
-		return array(4, 91, 10);
+		// hint: We only can count up. So the internal version number
+		// of ownCloud 4.5 will be 4.90.0. This is not visible to the user
+		return array(4, 92, 11);
 	}
 
 	/**
@@ -82,11 +83,13 @@ class OC_Util {
 	 * @return string
 	 */
 	public static function getVersionString() {
-		return '5.0 pre alpha';
+		return '5.0 alpha 1';
 	}
 
 	/**
-	 * get the current installed edition of ownCloud. There is the community edition that just returns an empty string and the enterprise edition that returns "Enterprise".
+	 * get the current installed edition of ownCloud. There is the community
+	 * edition that just returns an empty string and the enterprise edition
+	 * that returns "Enterprise".
 	 * @return string
 	 */
 	public static function getEditionString() {
@@ -166,24 +169,33 @@ class OC_Util {
 
 		$web_server_restart= false;
 		//check for database drivers
-		if(!(is_callable('sqlite_open') or class_exists('SQLite3')) and !is_callable('mysql_connect') and !is_callable('pg_connect')) {
-			$errors[]=array('error'=>'No database drivers (sqlite, mysql, or postgresql) installed.<br/>', 'hint'=>'');//TODO: sane hint
+		if(!(is_callable('sqlite_open') or class_exists('SQLite3'))
+			and !is_callable('mysql_connect')
+			and !is_callable('pg_connect')) {
+			$errors[]=array('error'=>'No database drivers (sqlite, mysql, or postgresql) installed.<br/>',
+				'hint'=>'');//TODO: sane hint
 			$web_server_restart= true;
 		}
 
 		//common hint for all file permissons error messages
-		$permissionsHint="Permissions can usually be fixed by giving the webserver write access to the ownCloud directory";
+		$permissionsHint="Permissions can usually be fixed by giving the webserver write access'
+			.' to the ownCloud directory";
 
 		// Check if config folder is writable.
 		if(!is_writable(OC::$SERVERROOT."/config/") or !is_readable(OC::$SERVERROOT."/config/")) {
-			$errors[]=array('error'=>"Can't write into config directory 'config'", 'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud");
+			$errors[]=array('error'=>"Can't write into config directory 'config'",
+				'hint'=>"You can usually fix this by giving the webserver user write access'
+					.' to the config directory in owncloud");
 		}
 
 		// Check if there is a writable install folder.
 		if(OC_Config::getValue('appstoreenabled', true)) {
-			if( OC_App::getInstallPath() === null  || !is_writable(OC_App::getInstallPath()) || !is_readable(OC_App::getInstallPath()) ) {
-				$errors[]=array('error'=>"Can't write into apps directory", 'hint'=>"You can usually fix this by giving the webserver user write access to the apps directory
-				in owncloud or disabling the appstore in the config file.");
+			if( OC_App::getInstallPath() === null
+				|| !is_writable(OC_App::getInstallPath())
+				|| !is_readable(OC_App::getInstallPath()) ) {
+				$errors[]=array('error'=>"Can't write into apps directory",
+					'hint'=>"You can usually fix this by giving the webserver user write access'
+					.' to the apps directory in owncloud or disabling the appstore in the config file.");
 			}
 		}
 		$CONFIG_DATADIRECTORY = OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" );
@@ -193,69 +205,87 @@ class OC_Util {
 			if ($success) {
 				$errors = array_merge($errors, self::checkDataDirectoryPermissions($CONFIG_DATADIRECTORY));
 			} else {
-				$errors[]=array('error'=>"Can't create data directory (".$CONFIG_DATADIRECTORY.")", 'hint'=>"You can usually fix this by giving the webserver write access to the ownCloud directory '".OC::$SERVERROOT."' (in a terminal, use the command 'chown -R www-data:www-data /path/to/your/owncloud/install/data' ");
+				$errors[]=array('error'=>"Can't create data directory (".$CONFIG_DATADIRECTORY.")",
+					'hint'=>"You can usually fix this by giving the webserver write access to the ownCloud directory '"
+						.OC::$SERVERROOT."' (in a terminal, use the command "
+						."'chown -R www-data:www-data /path/to/your/owncloud/install/data' ");
 			}
 		} else if(!is_writable($CONFIG_DATADIRECTORY) or !is_readable($CONFIG_DATADIRECTORY)) {
-			$errors[]=array('error'=>'Data directory ('.$CONFIG_DATADIRECTORY.') not writable by ownCloud<br/>', 'hint'=>$permissionsHint);
+			$errors[]=array('error'=>'Data directory ('.$CONFIG_DATADIRECTORY.') not writable by ownCloud<br/>',
+				'hint'=>$permissionsHint);
 		} else {
 			$errors = array_merge($errors, self::checkDataDirectoryPermissions($CONFIG_DATADIRECTORY));
 		}
 		// check if all required php modules are present
 		if(!class_exists('ZipArchive')) {
-			$errors[]=array('error'=>'PHP module zip not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module zip not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 
 		if(!function_exists('mb_detect_encoding')) {
-			$errors[]=array('error'=>'PHP module mb multibyte not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module mb multibyte not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('ctype_digit')) {
-			$errors[]=array('error'=>'PHP module ctype is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module ctype is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('json_encode')) {
-			$errors[]=array('error'=>'PHP module JSON is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module JSON is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('imagepng')) {
-			$errors[]=array('error'=>'PHP module GD is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module GD is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('gzencode')) {
-			$errors[]=array('error'=>'PHP module zlib is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module zlib is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('iconv')) {
-			$errors[]=array('error'=>'PHP module iconv is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module iconv is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(!function_exists('simplexml_load_string')) {
-			$errors[]=array('error'=>'PHP module SimpleXML is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP module SimpleXML is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 		if(floatval(phpversion())<5.3) {
-			$errors[]=array('error'=>'PHP 5.3 is required.<br/>', 'hint'=>'Please ask your server administrator to update PHP to version 5.3 or higher. PHP 5.2 is no longer supported by ownCloud and the PHP community.');
+			$errors[]=array('error'=>'PHP 5.3 is required.<br/>',
+				'hint'=>'Please ask your server administrator to update PHP to version 5.3 or higher.'
+					.' PHP 5.2 is no longer supported by ownCloud and the PHP community.');
 			$web_server_restart= false;
 		}
 		if(!defined('PDO::ATTR_DRIVER_NAME')) {
-			$errors[]=array('error'=>'PHP PDO module is not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.');
+			$errors[]=array('error'=>'PHP PDO module is not installed.<br/>',
+				'hint'=>'Please ask your server administrator to install the module.');
 			$web_server_restart= false;
 		}
 
 		$handler = ini_get("session.save_handler");
 		if($handler == "files") {
 			$tmpDir = session_save_path();
-			if($tmpDir != ""){
-				if(!@is_writable($tmpDir)){
-					$errors[]=array('error' => 'The temporary folder used by PHP to save the session data is either incorrect or not writable! Please check : '.session_save_path().'<br/>',
-					'hint'=>'Please ask your server administrator to grant write access or define another temporary folder.');
+			if($tmpDir != "") {
+				if(!@is_writable($tmpDir)) {
+					$errors[]=array('error' => 'The temporary folder used by PHP to save the session data'
+						.' is either incorrect or not writable! Please check : '.session_save_path().'<br/>',
+					'hint'=>'Please ask your server administrator to grant write access'
+						.' or define another temporary folder.');
 				}
 			}
 		}
 
 		if($web_server_restart) {
-			$errors[]=array('error'=>'PHP modules have been installed, but they are still listed as missing?<br/>', 'hint'=>'Please ask your server administrator to restart the web server.');
+			$errors[]=array('error'=>'PHP modules have been installed, but they are still listed as missing?<br/>',
+				'hint'=>'Please ask your server administrator to restart the web server.');
 		}
 
 		return $errors;
@@ -270,14 +300,16 @@ class OC_Util {
 		if (stristr(PHP_OS, 'WIN')) {
 			//TODO: permissions checks for windows hosts
 		} else {
-			$permissionsModHint = 'Please change the permissions to 0770 so that the directory cannot be listed by other users.';
+			$permissionsModHint = 'Please change the permissions to 0770 so that the directory'
+				.' cannot be listed by other users.';
 			$prems = substr(decoct(@fileperms($dataDirectory)), -3);
 			if (substr($prems, -1) != '0') {
 				OC_Helper::chmodr($dataDirectory, 0770);
 				clearstatcache();
 				$prems = substr(decoct(@fileperms($dataDirectory)), -3);
 				if (substr($prems, 2, 1) != '0') {
-					$errors[] = array('error' => 'Data directory ('.$dataDirectory.') is readable for other users<br/>', 'hint' => $permissionsModHint);
+					$errors[] = array('error' => 'Data directory ('.$dataDirectory.') is readable for other users<br/>',
+						'hint' => $permissionsModHint);
 				}
 			}
 		}
@@ -323,7 +355,8 @@ class OC_Util {
 	public static function checkLoggedIn() {
 		// Check if we are a user
 		if( !OC_User::isLoggedIn()) {
-			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php', array('redirect_url' => OC_Request::requestUri())));
+			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php',
+				array('redirect_url' => OC_Request::requestUri())));
 			exit();
 		}
 	}
@@ -528,9 +561,9 @@ class OC_Util {
 	 *
 	 */
 	public static function isWebDAVWorking() {
-        if (!function_exists('curl_init')) {
-            return;
-        }
+		if (!function_exists('curl_init')) {
+			return;
+		}
 
 		$settings = array(
 			'baseUri' => OC_Helper::linkToRemote('webdav'),
@@ -552,7 +585,8 @@ class OC_Util {
 	}
 
 	/**
-	 * Check if the setlocal call doesn't work. This can happen if the right local packages are not available on the server.
+	 * Check if the setlocal call doesn't work. This can happen if the right
+	 * local packages are not available on the server.
 	 */
 	public static function issetlocaleworking() {
 		// setlocale test is pointless on Windows
@@ -691,10 +725,10 @@ class OC_Util {
 			curl_setopt($curl, CURLOPT_MAXREDIRS, 10);
 
 			curl_setopt($curl, CURLOPT_USERAGENT, "ownCloud Server Crawler");
-			if(OC_Config::getValue('proxy','')<>'') {
+			if(OC_Config::getValue('proxy', '')<>'') {
 				curl_setopt($curl, CURLOPT_PROXY, OC_Config::getValue('proxy'));
 			}
-			if(OC_Config::getValue('proxyuserpwd','')<>'') {
+			if(OC_Config::getValue('proxyuserpwd', '')<>'') {
 				curl_setopt($curl, CURLOPT_PROXYUSERPWD, OC_Config::getValue('proxyuserpwd'));
 			}
 			$data = curl_exec($curl);
@@ -703,7 +737,7 @@ class OC_Util {
 		} else {
 			$contextArray = null;
 
-			if(OC_Config::getValue('proxy','')<>'') {
+			if(OC_Config::getValue('proxy', '')<>'') {
 				$contextArray = array(
 					'http' => array(
 						'timeout' => 10,
diff --git a/lib/vcategories.php b/lib/vcategories.php
index 1700870f91f31e0db8c8987997044fb8d440017a..8de497a61917017d9e6b43a7f16abb3e6067a3a2 100644
--- a/lib/vcategories.php
+++ b/lib/vcategories.php
@@ -689,7 +689,9 @@ class OC_VCategories {
 					$stmt = OCP\DB::prepare($sql);
 					$result = $stmt->execute(array($id));
 					if (OC_DB::isError($result)) {
-						OC_Log::write('core', __METHOD__. 'DB error: ' . OC_DB::getErrorMessage($result), OC_Log::ERROR);
+						OC_Log::write('core',
+							__METHOD__. 'DB error: ' . OC_DB::getErrorMessage($result),
+							OC_Log::ERROR);
 					}
 				} catch(Exception $e) {
 					OCP\Util::writeLog('core', __METHOD__.', exception: '.$e->getMessage(),
diff --git a/settings/ajax/apps/ocs.php b/settings/ajax/apps/ocs.php
index 9bf3ccc34d2cb5bdcd30548a3c03d9f032edc851..9c5adfcfef95080ff0250d7e2aa2af4acb18aab8 100644
--- a/settings/ajax/apps/ocs.php
+++ b/settings/ajax/apps/ocs.php
@@ -45,7 +45,7 @@ if(is_array($categoryNames)) {
 				$pre=$app['preview'];
 			}
 			if($app['label']=='recommended') {
-				$label='3rd Party App';
+				$label='3rd Party';
 			} else {
 				$label='Recommended';
 			}
diff --git a/settings/ajax/changedisplayname.php b/settings/ajax/changedisplayname.php
index 8f2ff865bd5f0d3ad4f89d7c1372c87b0b1b1968..69462330765f0a6766a90be1a68d714b9697313c 100644
--- a/settings/ajax/changedisplayname.php
+++ b/settings/ajax/changedisplayname.php
@@ -15,6 +15,10 @@ if(OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)) {
 	$userstatus = 'subadmin';
 }
 
+if ($username == OC_User::getUser() && OC_User::canUserChangeDisplayName($username)) {
+	$userstatus = 'changeOwnDisplayName';
+}
+
 if(is_null($userstatus)) {
 	OC_JSON::error( array( "data" => array( "message" => $l->t("Authentication error") )));
 	exit();
diff --git a/settings/ajax/createuser.php b/settings/ajax/createuser.php
index 09ef25d92fa1f6835e5dc0617daca43bf5bf06c4..56653bed6bd7e8d2f4ea1a8a72033d665509b93c 100644
--- a/settings/ajax/createuser.php
+++ b/settings/ajax/createuser.php
@@ -26,12 +26,6 @@ if(OC_User::isAdminUser(OC_User::getUser())) {
 $username = $_POST["username"];
 $password = $_POST["password"];
 
-// Does the group exist?
-if(OC_User::userExists($username)) {
-	OC_JSON::error(array("data" => array( "message" => "User already exists" )));
-	exit();
-}
-
 // Return Success story
 try {
 	if (!OC_User::createUser($username, $password)) {
diff --git a/settings/css/settings.css b/settings/css/settings.css
index 9dd17daaeb765c60ff0c01cb0cf7552823240586..265a29b8f7f5167ecab38e7b6a9fc818a005c25f 100644
--- a/settings/css/settings.css
+++ b/settings/css/settings.css
@@ -5,7 +5,15 @@
 select#languageinput, select#timezone { width:15em; }
 input#openid, input#webdav { width:20em; }
 
+
 /* PERSONAL */
+
+/* Sync clients */
+.clientsbox { margin:12px; text-align:center; }
+.clientsbox h1 { font-size:40px; font-weight:bold; margin:50px 0 20px; }
+.clientsbox h2 { font-size:20px; font-weight:bold; margin:35px 0 10px; }
+.clientsbox center { margin-top:10px; }
+
 #passworderror { display:none; }
 #passwordchanged { display:none; }
 #displaynameerror { display:none; }
@@ -35,14 +43,19 @@ tr:hover>td.remove>a { float:right; }
 li.selected { background-color:#ddd; }
 table:not(.nostyle) { width:100%; }
 #rightcontent { padding-left: 1em; }
-div.quota { float:right; display:block; position:absolute; right:25em; top:0; }
+div.quota { float:right; display:block; position:absolute; right:25em; top:-1px; }
 div.quota-select-wrapper { position: relative; }
-select.quota { position:absolute; left:0; top:0.5em; width:10em; }
+select.quota { position:absolute; left:0; top:0; width:10em; }
 select.quota-user { position:relative; left:0; top:0; width:10em; }
-input.quota-other { display:none; position:absolute; left:0.1em; top:0.1em; width:7em; border:none; box-shadow:none; }
 div.quota>span { position:absolute; right:0; white-space:nowrap; top:.7em; color:#888; text-shadow:0 1px 0 #fff; }
 select.quota.active { background: #fff; }
 
+/* positioning fixes */
+#newuser { position:relative; top:-3px; }
+#newuser .multiselect { top:1px; }
+#headerGroups, #headerSubAdmins, #headerQuota { padding-left:18px; }
+
+
 /* APPS */
 .appinfo { margin: 1em; }
 h3 { font-size: 1.4em; font-weight: bold; }
@@ -75,3 +88,4 @@ table.shareAPI td { padding-bottom: 0.8em; }
 
 /* HELP */
 .pressed {background-color:#DDD;}
+
diff --git a/settings/js/apps.js b/settings/js/apps.js
index 3bc3488e4907daf6ec3a28240329a4608ccba817..8c266c66e4b118c66e886974d84a4437a40778ad 100644
--- a/settings/js/apps.js
+++ b/settings/js/apps.js
@@ -134,7 +134,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
 					if(container.children('li[data-id="'+entry.id+'"]').length === 0){
 						var li=$('<li></li>');
 						li.attr('data-id', entry.id);
-						var img= $('<img></img>').attr({ src: entry.icon, class:'icon'});
+						var img= $('<img class="icon"/>').attr({ src: entry.icon});
 						var a=$('<a></a>').attr('href', entry.href);
 						a.text(entry.name);
 						a.prepend(img);
diff --git a/settings/js/users.js b/settings/js/users.js
index 094cddda29461d8e8295c5e073b32376b9421b71..086b0884a3b402a33fa3a2de2de2848ebcd825a0 100644
--- a/settings/js/users.js
+++ b/settings/js/users.js
@@ -5,449 +5,390 @@
  */
 
 var UserList = {
-    useUndo:true,
+	useUndo: true,
 
-    /**
-     * @brief Initiate user deletion process in UI
-     * @param string uid the user ID to be deleted
-     *
-     * Does not actually delete the user; it sets them for
-     * deletion when the current page is unloaded, at which point
-     * finishDelete() completes the process. This allows for 'undo'.
-     */
-    do_delete:function (uid) {
-        if (typeof UserList.deleteUid !== 'undefined') {
-            //Already a user in the undo queue
-            UserList.finishDelete(null);
-        }
-        UserList.deleteUid = uid;
+	/**
+	 * @brief Initiate user deletion process in UI
+	 * @param string uid the user ID to be deleted
+	 *
+	 * Does not actually delete the user; it sets them for
+	 * deletion when the current page is unloaded, at which point
+	 * finishDelete() completes the process. This allows for 'undo'.
+	 */
+	do_delete: function (uid) {
+		if (typeof UserList.deleteUid !== 'undefined') {
+			//Already a user in the undo queue
+			UserList.finishDelete(null);
+		}
+		UserList.deleteUid = uid;
 
-        // Set undo flag
-        UserList.deleteCanceled = false;
+		// Set undo flag
+		UserList.deleteCanceled = false;
 
-        // Provide user with option to undo
-        $('#notification').data('deleteuser', true);
-        OC.Notification.showHtml(t('users', 'deleted') + ' ' + uid + '<span class="undo">' + t('users', 'undo') + '</span>');
-    },
+		// Provide user with option to undo
+		$('#notification').data('deleteuser', true);
+		OC.Notification.showHtml(t('users', 'deleted') + ' ' + uid + '<span class="undo">' + t('users', 'undo') + '</span>');
+	},
 
-    /**
-     * @brief Delete a user via ajax
-     * @param bool ready whether to use ready() upon completion
-     *
-     * Executes deletion via ajax of user identified by property deleteUid
-     * if 'undo' has not been used.  Completes the user deletion procedure
-     * and reflects success in UI.
-     */
-    finishDelete:function (ready) {
+	/**
+	 * @brief Delete a user via ajax
+	 * @param bool ready whether to use ready() upon completion
+	 *
+	 * Executes deletion via ajax of user identified by property deleteUid
+	 * if 'undo' has not been used.  Completes the user deletion procedure
+	 * and reflects success in UI.
+	 */
+	finishDelete: function (ready) {
 
-        // Check deletion has not been undone
-        if (!UserList.deleteCanceled && UserList.deleteUid) {
+		// Check deletion has not been undone
+		if (!UserList.deleteCanceled && UserList.deleteUid) {
 
-            // Delete user via ajax
-            $.ajax({
-                type:'POST',
-                url:OC.filePath('settings', 'ajax', 'removeuser.php'),
-                async:false,
-                data:{ username:UserList.deleteUid },
-                success:function (result) {
-                    if (result.status == 'success') {
-                        // Remove undo option, & remove user from table
-                        OC.Notification.hide();
-                        $('tr').filterAttr('data-uid', UserList.deleteUid).remove();
-                        UserList.deleteCanceled = true;
-                        if (ready) {
-                            ready();
-                        }
-                    } else {
-                        oc.dialogs.alert(result.data.message, t('settings', 'Unable to remove user'));
-                    }
-                }
-            });
-        }
-    },
+			// Delete user via ajax
+			$.ajax({
+				type: 'POST',
+				url: OC.filePath('settings', 'ajax', 'removeuser.php'),
+				async: false,
+				data: { username: UserList.deleteUid },
+				success: function (result) {
+					if (result.status == 'success') {
+						// Remove undo option, & remove user from table
+						OC.Notification.hide();
+						$('tr').filterAttr('data-uid', UserList.deleteUid).remove();
+						UserList.deleteCanceled = true;
+						if (ready) {
+							ready();
+						}
+					} else {
+						oc.dialogs.alert(result.data.message, t('settings', 'Unable to remove user'));
+					}
+				}
+			});
+		}
+	},
 
-    add:function (username, groups, subadmin, quota, sort) {
-        var tr = $('tbody tr').first().clone();
-        tr.attr('data-uid', username);
-        tr.attr('data-displayName', username);
-        tr.find('td.name').text(username);
-        tr.find('td.displayName').text(username);
-        var groupsSelect = $('<select multiple="multiple" class="groupsselect" data-placehoder="Groups" title="' + t('settings', 'Groups') + '"></select>').attr('data-username', username).attr('data-user-groups', groups);
-        tr.find('td.groups').empty();
-        if (tr.find('td.subadmins').length > 0) {
-            var subadminSelect = $('<select multiple="multiple" class="subadminsselect" data-placehoder="subadmins" title="' + t('settings', 'Group Admin') + '">').attr('data-username', username).attr('data-user-groups', groups).attr('data-subadmin', subadmin);
-            tr.find('td.subadmins').empty();
-        }
-        var allGroups = String($('#content table').attr('data-groups')).split(', ');
-        $.each(allGroups, function (i, group) {
-            groupsSelect.append($('<option value="' + group + '">' + group + '</option>'));
-            if (typeof subadminSelect !== 'undefined' && group != 'admin') {
-                subadminSelect.append($('<option value="' + group + '">' + group + '</option>'));
-            }
-        });
-        tr.find('td.groups').append(groupsSelect);
-        UserList.applyMultiplySelect(groupsSelect);
-        if (tr.find('td.subadmins').length > 0) {
-            tr.find('td.subadmins').append(subadminSelect);
-            UserList.applyMultiplySelect(subadminSelect);
-        }
-        if (tr.find('td.remove img').length == 0 && OC.currentUser != username) {
-            var rm_img = $('<img>', {
-                class:'svg action',
-                src:OC.imagePath('core', 'actions/delete')
-            });
-            var rm_link = $('<a>', { class:'action delete', href:'#', 'original-title':t('settings', 'Delete')}).append(rm_img);
-            tr.find('td.remove').append(rm_link);
-        } else if (OC.currentUser == username) {
-            tr.find('td.remove a').remove();
-        }
-        var quotaSelect = tr.find('select.quota-user');
-        if (quota == 'default') {
-            quotaSelect.find('option').attr('selected', null);
-            quotaSelect.find('option').first().attr('selected', 'selected');
-            quotaSelect.data('previous', 'default');
-        } else {
-            if (quotaSelect.find('option[value="' + quota + '"]').length > 0) {
-                quotaSelect.find('option[value="' + quota + '"]').attr('selected', 'selected');
-            } else {
-                quotaSelect.append('<option value="' + quota + '" selected="selected">' + quota + '</option>');
-            }
-        }
-        var added = false;
-        if (sort) {
-            username = username.toLowerCase();
-            $('tbody tr').each(function () {
-                if (username < $(this).attr('data-uid').toLowerCase()) {
-                    $(tr).insertBefore($(this));
-                    added = true;
-                    return false;
-                }
-            });
-        }
-        if (!added) {
-            $(tr).appendTo('tbody');
-        }
-        return tr;
-    },
+	add: function (username, groups, subadmin, quota, sort) {
+		var tr = $('tbody tr').first().clone();
+		tr.attr('data-uid', username);
+		tr.attr('data-displayName', username);
+		tr.find('td.name').text(username);
+		tr.find('td.displayName').text(username);
+		var groupsSelect = $('<select multiple="multiple" class="groupsselect" data-placehoder="Groups" title="' + t('settings', 'Groups') + '"></select>').attr('data-username', username).attr('data-user-groups', groups);
+		tr.find('td.groups').empty();
+		if (tr.find('td.subadmins').length > 0) {
+			var subadminSelect = $('<select multiple="multiple" class="subadminsselect" data-placehoder="subadmins" title="' + t('settings', 'Group Admin') + '">').attr('data-username', username).attr('data-user-groups', groups).attr('data-subadmin', subadmin);
+			tr.find('td.subadmins').empty();
+		}
+		var allGroups = String($('#content table').attr('data-groups')).split(', ');
+		$.each(allGroups, function (i, group) {
+			groupsSelect.append($('<option value="' + group + '">' + group + '</option>'));
+			if (typeof subadminSelect !== 'undefined' && group != 'admin') {
+				subadminSelect.append($('<option value="' + group + '">' + group + '</option>'));
+			}
+		});
+		tr.find('td.groups').append(groupsSelect);
+		UserList.applyMultiplySelect(groupsSelect);
+		if (tr.find('td.subadmins').length > 0) {
+			tr.find('td.subadmins').append(subadminSelect);
+			UserList.applyMultiplySelect(subadminSelect);
+		}
+		if (tr.find('td.remove img').length == 0 && OC.currentUser != username) {
+			var rm_img = $('<img class="svg action">').attr({
+				src: OC.imagePath('core', 'actions/delete')
+			});
+			var rm_link = $('<a class="action delete">')
+				.attr({ href: '#', 'original-title': t('settings', 'Delete')})
+				.append(rm_img);
+			tr.find('td.remove').append(rm_link);
+		} else if (OC.currentUser == username) {
+			tr.find('td.remove a').remove();
+		}
+		var quotaSelect = tr.find('select.quota-user');
+		if (quota == 'default') {
+			quotaSelect.find('option').attr('selected', null);
+			quotaSelect.find('option').first().attr('selected', 'selected');
+			quotaSelect.data('previous', 'default');
+		} else {
+			if (quotaSelect.find('option[value="' + quota + '"]').length > 0) {
+				quotaSelect.find('option[value="' + quota + '"]').attr('selected', 'selected');
+			} else {
+				quotaSelect.append('<option value="' + quota + '" selected="selected">' + quota + '</option>');
+			}
+		}
+		var added = false;
+		if (sort) {
+			username = username.toLowerCase();
+			$('tbody tr').each(function () {
+				if (username < $(this).attr('data-uid').toLowerCase()) {
+					$(tr).insertBefore($(this));
+					added = true;
+					return false;
+				}
+			});
+		}
+		if (!added) {
+			$(tr).appendTo('tbody');
+		}
+		return tr;
+	},
 
-    update:function () {
-        if (typeof UserList.offset === 'undefined') {
-            UserList.offset = $('tbody tr').length;
-        }
-        $.get(OC.Router.generate('settings_ajax_userlist', { offset:UserList.offset }), function (result) {
-            if (result.status === 'success') {
-                $.each(result.data, function (index, user) {
-                    var tr = UserList.add(user.name, user.groups, user.subadmin, user.quota, false);
-                    UserList.offset++;
-                    if (index == 9) {
-                        $(tr).bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
-                            $(this).unbind(event);
-                            UserList.update();
-                        });
-                    }
-                });
-            }
-        });
-    },
+	update: function () {
+		if (typeof UserList.offset === 'undefined') {
+			UserList.offset = $('tbody tr').length;
+		}
+		$.get(OC.Router.generate('settings_ajax_userlist', { offset: UserList.offset }), function (result) {
+			if (result.status === 'success') {
+				$.each(result.data, function (index, user) {
+					var tr = UserList.add(user.name, user.groups, user.subadmin, user.quota, false);
+					UserList.offset++;
+					if (index == 9) {
+						$(tr).bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
+							$(this).unbind(event);
+							UserList.update();
+						});
+					}
+				});
+			}
+		});
+	},
 
-    applyMultiplySelect:function (element) {
-        var checked = [];
-        var user = element.attr('data-username');
-        if ($(element).attr('class') == 'groupsselect') {
-            if (element.data('userGroups')) {
-                checked = String(element.data('userGroups')).split(', ');
-            }
-            if (user) {
-                var checkHandeler = function (group) {
-                    if (user == OC.currentUser && group == 'admin') {
-                        return false;
-                    }
-                    if (!isadmin && checked.length == 1 && checked[0] == group) {
-                        return false;
-                    }
-                    $.post(
-                        OC.filePath('settings', 'ajax', 'togglegroups.php'),
-                        {
-                            username:user,
-                            group:group
-                        },
-                        function () {
-                        }
-                    );
-                };
-            } else {
-                checkHandeler = false;
-            }
-            var addGroup = function (select, group) {
-                $('select[multiple]').each(function (index, element) {
-                    if ($(element).find('option[value="' + group + '"]').length === 0 && select.data('msid') !== $(element).data('msid')) {
-                        $(element).append('<option value="' + group + '">' + group + '</option>');
-                    }
-                })
-            };
-            var label;
-            if (isadmin) {
-                label = t('settings', 'add group');
-            } else {
-                label = null;
-            }
-            element.multiSelect({
-                createCallback:addGroup,
-                createText:label,
-                selectedFirst:true,
-                checked:checked,
-                oncheck:checkHandeler,
-                onuncheck:checkHandeler,
-                minWidth:100
-            });
-        }
-        if ($(element).attr('class') == 'subadminsselect') {
-            if (element.data('subadmin')) {
-                checked = String(element.data('subadmin')).split(', ');
-            }
-            var checkHandeler = function (group) {
-                if (group == 'admin') {
-                    return false;
-                }
-                $.post(
-                    OC.filePath('settings', 'ajax', 'togglesubadmins.php'),
-                    {
-                        username:user,
-                        group:group
-                    },
-                    function () {
-                    }
-                );
-            };
+	applyMultiplySelect: function (element) {
+		var checked = [];
+		var user = element.attr('data-username');
+		if ($(element).attr('class') == 'groupsselect') {
+			if (element.data('userGroups')) {
+				checked = String(element.data('userGroups')).split(', ');
+			}
+			if (user) {
+				var checkHandeler = function (group) {
+					if (user == OC.currentUser && group == 'admin') {
+						return false;
+					}
+					if (!isadmin && checked.length == 1 && checked[0] == group) {
+						return false;
+					}
+					$.post(
+						OC.filePath('settings', 'ajax', 'togglegroups.php'),
+						{
+							username: user,
+							group: group
+						},
+						function () {
+						}
+					);
+				};
+			} else {
+				checkHandeler = false;
+			}
+			var addGroup = function (select, group) {
+				$('select[multiple]').each(function (index, element) {
+					if ($(element).find('option[value="' + group + '"]').length === 0 && select.data('msid') !== $(element).data('msid')) {
+						$(element).append('<option value="' + group + '">' + group + '</option>');
+					}
+				})
+			};
+			var label;
+			if (isadmin) {
+				label = t('settings', 'add group');
+			} else {
+				label = null;
+			}
+			element.multiSelect({
+				createCallback: addGroup,
+				createText: label,
+				selectedFirst: true,
+				checked: checked,
+				oncheck: checkHandeler,
+				onuncheck: checkHandeler,
+				minWidth: 100
+			});
+		}
+		if ($(element).attr('class') == 'subadminsselect') {
+			if (element.data('subadmin')) {
+				checked = String(element.data('subadmin')).split(', ');
+			}
+			var checkHandeler = function (group) {
+				if (group == 'admin') {
+					return false;
+				}
+				$.post(
+					OC.filePath('settings', 'ajax', 'togglesubadmins.php'),
+					{
+						username: user,
+						group: group
+					},
+					function () {
+					}
+				);
+			};
 
-            var addSubAdmin = function (group) {
-                $('select[multiple]').each(function (index, element) {
-                    if ($(element).find('option[value="' + group + '"]').length == 0) {
-                        $(element).append('<option value="' + group + '">' + group + '</option>');
-                    }
-                })
-            };
-            element.multiSelect({
-                createCallback:addSubAdmin,
-                createText:null,
-                checked:checked,
-                oncheck:checkHandeler,
-                onuncheck:checkHandeler,
-                minWidth:100
-            });
-        }
-    }
+			var addSubAdmin = function (group) {
+				$('select[multiple]').each(function (index, element) {
+					if ($(element).find('option[value="' + group + '"]').length == 0) {
+						$(element).append('<option value="' + group + '">' + group + '</option>');
+					}
+				})
+			};
+			element.multiSelect({
+				createCallback: addSubAdmin,
+				createText: null,
+				checked: checked,
+				oncheck: checkHandeler,
+				onuncheck: checkHandeler,
+				minWidth: 100
+			});
+		}
+	}
 };
 
 $(document).ready(function () {
 
-    $('tbody tr:last').bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
-		OC.Router.registerLoadedCallback(function(){
-        	UserList.update();
+	$('tbody tr:last').bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
+		OC.Router.registerLoadedCallback(function () {
+			UserList.update();
 		});
-    });
+	});
 
-    function setQuota(uid, quota, ready) {
-        $.post(
-            OC.filePath('settings', 'ajax', 'setquota.php'),
-            {username:uid, quota:quota},
-            function (result) {
-                if (ready) {
-                    ready(result.data.quota);
-                }
-            }
-        );
-    }
+	function setQuota (uid, quota, ready) {
+		$.post(
+			OC.filePath('settings', 'ajax', 'setquota.php'),
+			{username: uid, quota: quota},
+			function (result) {
+				if (ready) {
+					ready(result.data.quota);
+				}
+			}
+		);
+	}
 
-    $('select[multiple]').each(function (index, element) {
-        UserList.applyMultiplySelect($(element));
-    });
+	$('select[multiple]').each(function (index, element) {
+		UserList.applyMultiplySelect($(element));
+	});
 
-    $('table').on('click', 'td.remove>a', function (event) {
-        var row = $(this).parent().parent();
-        var uid = $(row).attr('data-uid');
-        $(row).hide();
-        // Call function for handling delete/undo
-        UserList.do_delete(uid);
-    });
+	$('table').on('click', 'td.remove>a', function (event) {
+		var row = $(this).parent().parent();
+		var uid = $(row).attr('data-uid');
+		$(row).hide();
+		// Call function for handling delete/undo
+		UserList.do_delete(uid);
+	});
 
-    $('table').on('click', 'td.password>img', function (event) {
-        event.stopPropagation();
-        var img = $(this);
-        var uid = img.parent().parent().attr('data-uid');
-        var input = $('<input type="password">');
-        img.css('display', 'none');
-        img.parent().children('span').replaceWith(input);
-        input.focus();
-        input.keypress(function (event) {
-            if (event.keyCode == 13) {
-                if ($(this).val().length > 0) {
-                    $.post(
-                        OC.filePath('settings', 'ajax', 'changepassword.php'),
-                        {username:uid, password:$(this).val()},
-                        function (result) {
-                        }
-                    );
-                    input.blur();
-                } else {
-                    input.blur();
-                }
-            }
-        });
-        input.blur(function () {
-            $(this).replaceWith($('<span>●●●●●●●</span>'));
-            img.css('display', '');
-        });
-    });
-    $('table').on('click', 'td.password', function (event) {
-        $(this).children('img').click();
-    });
-    
-    $('table').on('click', 'td.displayName>img', function (event) {
-        event.stopPropagation();
-        var img = $(this);
-        var uid = img.parent().parent().attr('data-uid');
-        var displayName = img.parent().parent().attr('data-displayName');
-        var input = $('<input type="text" value="'+displayName+'">');
-        img.css('display', 'none');
-        img.parent().children('span').replaceWith(input);
-        input.focus();
-        input.keypress(function (event) {
-            if (event.keyCode == 13) {
-                if ($(this).val().length > 0) {
-                    $.post(
-                        OC.filePath('settings', 'ajax', 'changedisplayname.php'),
-                        {username:uid, displayName:$(this).val()},
-                        function (result) {
-                        }
-                    );
-                    input.blur();
-                } else {
-                    input.blur();
-                }
-            }
-        });
-        input.blur(function () {
-            $(this).replaceWith($(this).val());
-            img.css('display', '');
-        });
-    });
-    $('table').on('click', 'td.displayName', function (event) {
-        $(this).children('img').click();
-    });
-    
-
-    $('select.quota, select.quota-user').on('change', function () {
-        var select = $(this);
-        var uid = $(this).parent().parent().parent().attr('data-uid');
-        var quota = $(this).val();
-        var other = $(this).next();
-        if (quota != 'other') {
-            other.hide();
-            select.data('previous', quota);
-            setQuota(uid, quota);
-        } else {
-            other.show();
-            select.addClass('active');
-            other.focus();
-        }
-    });
-    $('select.quota, select.quota-user').each(function (i, select) {
-        $(select).data('previous', $(select).val());
-    })
+	$('table').on('click', 'td.password>img', function (event) {
+		event.stopPropagation();
+		var img = $(this);
+		var uid = img.parent().parent().attr('data-uid');
+		var input = $('<input type="password">');
+		img.css('display', 'none');
+		img.parent().children('span').replaceWith(input);
+		input.focus();
+		input.keypress(function (event) {
+			if (event.keyCode == 13) {
+				if ($(this).val().length > 0) {
+					$.post(
+						OC.filePath('settings', 'ajax', 'changepassword.php'),
+						{username: uid, password: $(this).val()},
+						function (result) {
+						}
+					);
+					input.blur();
+				} else {
+					input.blur();
+				}
+			}
+		});
+		input.blur(function () {
+			$(this).replaceWith($('<span>●●●●●●●</span>'));
+			img.css('display', '');
+		});
+	});
+	$('table').on('click', 'td.password', function (event) {
+		$(this).children('img').click();
+	});
 
-    $('input.quota-other').on('change', function () {
-        var uid = $(this).parent().parent().parent().attr('data-uid');
-        var quota = $(this).val();
-        var select = $(this).prev();
-        var other = $(this);
-        if (quota) {
-            setQuota(uid, quota, function (quota) {
-                select.children().attr('selected', null);
-                var existingOption = select.children().filter(function (i, option) {
-                    return ($(option).val() == quota);
-                });
-                if (existingOption.length) {
-                    existingOption.attr('selected', 'selected');
-                } else {
-                    var option = $('<option/>');
-                    option.attr('selected', 'selected').attr('value', quota).text(quota);
-                    select.children().last().before(option);
-                }
-                select.val(quota);
-                select.removeClass('active');
-                other.val(null);
-                other.hide();
-            });
-        } else {
-            var previous = select.data('previous');
-            select.children().attr('selected', null);
-            select.children().each(function (i, option) {
-                if ($(option).val() == previous) {
-                    $(option).attr('selected', 'selected');
-                }
-            });
-            select.removeClass('active');
-            other.hide();
-        }
-    });
+	$('table').on('click', 'td.displayName>img', function (event) {
+		event.stopPropagation();
+		var img = $(this);
+		var uid = img.parent().parent().attr('data-uid');
+		var displayName = escapeHTML(img.parent().parent().attr('data-displayName'));
+		var input = $('<input type="text" value="' + displayName + '">');
+		img.css('display', 'none');
+		img.parent().children('span').replaceWith(input);
+		input.focus();
+		input.keypress(function (event) {
+			if (event.keyCode == 13) {
+				if ($(this).val().length > 0) {
+					$.post(
+						OC.filePath('settings', 'ajax', 'changedisplayname.php'),
+						{username: uid, displayName: $(this).val()},
+						function (result) {
+						}
+					);
+					input.blur();
+				} else {
+					input.blur();
+				}
+			}
+		});
+		input.blur(function () {
+			$(this).replaceWith(escapeHTML($(this).val()));
+			img.css('display', '');
+		});
+	});
+	$('table').on('click', 'td.displayName', function (event) {
+		$(this).children('img').click();
+	});
 
-    $('input.quota-other').on('blur', function () {
-        $(this).change();
-    })
+	$('select.quota, select.quota-user').singleSelect().on('change', function () {
+		var uid = $(this).parent().parent().attr('data-uid');
+		var quota = $(this).val();
+		setQuota(uid, quota);
+	});
 
-    $('#newuser').submit(function (event) {
-        event.preventDefault();
-        var username = $('#newusername').val();
-        var password = $('#newuserpassword').val();
-        if ($('#content table tbody tr').filterAttr('data-uid', username).length > 0) {
-            OC.dialogs.alert(
-                t('settings', 'The username is already being used'),
-                t('settings', 'Error creating user'));
-            return;
-        }
-        if ($.trim(username) == '') {
-            OC.dialogs.alert(
-                t('settings', 'A valid username must be provided'),
-                t('settings', 'Error creating user'));
-            return false;
-        }
-        if ($.trim(password) == '') {
-            OC.dialogs.alert(
-                t('settings', 'A valid password must be provided'),
-                t('settings', 'Error creating user'));
-            return false;
-        }
-        var groups = $('#newusergroups').prev().children('div').data('settings').checked;
-        $('#newuser').get(0).reset();
-        $.post(
-            OC.filePath('settings', 'ajax', 'createuser.php'),
-            {
-                username:username,
-                password:password,
-                groups:groups
-            },
-            function (result) {
-                if (result.status != 'success') {
-                    OC.dialogs.alert(result.data.message,
-                        t('settings', 'Error creating user'));
-                } else {
-                    UserList.add(username, result.data.groups, null, 'default', true);
-                }
-            }
-        );
-    });
-    // Handle undo notifications
-    OC.Notification.hide();
-    $('#notification').on('click', '.undo', function () {
-        if ($('#notification').data('deleteuser')) {
-            $('tbody tr').filterAttr('data-uid', UserList.deleteUid).show();
-            UserList.deleteCanceled = true;
-        }
-        OC.Notification.hide();
-    });
-    UserList.useUndo = ('onbeforeunload' in window)
-    $(window).bind('beforeunload', function () {
-        UserList.finishDelete(null);
-    });
+	$('#newuser').submit(function (event) {
+		event.preventDefault();
+		var username = $('#newusername').val();
+		var password = $('#newuserpassword').val();
+		if ($.trim(username) == '') {
+			OC.dialogs.alert(
+				t('settings', 'A valid username must be provided'),
+				t('settings', 'Error creating user'));
+			return false;
+		}
+		if ($.trim(password) == '') {
+			OC.dialogs.alert(
+				t('settings', 'A valid password must be provided'),
+				t('settings', 'Error creating user'));
+			return false;
+		}
+		var groups = $('#newusergroups').prev().children('div').data('settings').checked;
+		$('#newuser').get(0).reset();
+		$.post(
+			OC.filePath('settings', 'ajax', 'createuser.php'),
+			{
+				username: username,
+				password: password,
+				groups: groups
+			},
+			function (result) {
+				if (result.status != 'success') {
+					OC.dialogs.alert(result.data.message,
+						t('settings', 'Error creating user'));
+				} else {
+					UserList.add(username, result.data.groups, null, 'default', true);
+				}
+			}
+		);
+	});
+	// Handle undo notifications
+	OC.Notification.hide();
+	$('#notification').on('click', '.undo', function () {
+		if ($('#notification').data('deleteuser')) {
+			$('tbody tr').filterAttr('data-uid', UserList.deleteUid).show();
+			UserList.deleteCanceled = true;
+		}
+		OC.Notification.hide();
+	});
+	UserList.useUndo = ('onbeforeunload' in window)
+	$(window).bind('beforeunload', function () {
+		UserList.finishDelete(null);
+	});
 });
diff --git a/settings/l10n/ar.php b/settings/l10n/ar.php
index 499c237eb7b9b3c4c3617fd0383f510dfafe0e7e..b2e805d522deef5afe516ceb0e1971e6420115ef 100644
--- a/settings/l10n/ar.php
+++ b/settings/l10n/ar.php
@@ -17,7 +17,14 @@
 "Enable" => "تفعيل",
 "Error" => "خطأ",
 "Saving..." => "حفظ",
+"Groups" => "مجموعات",
+"Group Admin" => "مدير المجموعة",
+"Delete" => "حذف",
 "__language_name__" => "__language_name__",
+"Security Warning" => "تحذير أمان",
+"More" => "المزيد",
+"Version" => "إصدار",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "طوّر من قبل <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud مجتمع</a>, الـ <a href=\"https://github.com/owncloud\" target=\"_blank\">النص المصدري</a> مرخص بموجب <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">رخصة أفيرو العمومية</abbr></a>.",
 "Add your App" => "أضف تطبيقاتك",
 "More Apps" => "المزيد من التطبيقات",
 "Select an App" => "إختر تطبيقاً",
@@ -31,16 +38,11 @@
 "Bugtracker" => "تعقب علة",
 "Commercial Support" => "دعم تجاري",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "تم إستهلاك <strong>%s</strong> من المتوفر <strong>%s</strong>",
-"Clients" => "الزبائن",
-"Download Desktop Clients" => "تحميل عملاء سطح المكتب",
-"Download Android Client" => "تحميل عميل آندرويد",
-"Download iOS Client" => "تحميل عميل آي أو أس",
 "Password" => "كلمات السر",
 "Your password was changed" => "لقد تم تغيير كلمة السر",
 "Unable to change your password" => "لم يتم تعديل كلمة السر بنجاح",
 "Current password" => "كلمات السر الحالية",
 "New password" => "كلمات سر جديدة",
-"show" => "أظهر",
 "Change password" => "عدل كلمة السر",
 "Email" => "العنوان البريدي",
 "Your email address" => "عنوانك البريدي",
@@ -49,11 +51,6 @@
 "Help translate" => "ساعد في الترجمه",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "إستخدم هذا العنوان للإتصال بـ ownCloud في مدير الملفات",
-"Version" => "إصدار",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "طوّر من قبل <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud مجتمع</a>, الـ <a href=\"https://github.com/owncloud\" target=\"_blank\">النص المصدري</a> مرخص بموجب <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">رخصة أفيرو العمومية</abbr></a>.",
-"Groups" => "مجموعات",
 "Create" => "انشئ",
-"Other" => "شيء آخر",
-"Group Admin" => "مدير المجموعة",
-"Delete" => "حذف"
+"Other" => "شيء آخر"
 );
diff --git a/settings/l10n/bg_BG.php b/settings/l10n/bg_BG.php
index 418546a630c672e6bd682b086c55a63abf5ce018..cdb9927a6aa766b3d4524975c2ca0d234ec50cc5 100644
--- a/settings/l10n/bg_BG.php
+++ b/settings/l10n/bg_BG.php
@@ -1,25 +1,52 @@
 <?php $TRANSLATIONS = array(
 "Authentication error" => "Възникна проблем с идентификацията",
+"Group already exists" => "Групата вече съществува",
+"Unable to add group" => "Невъзможно добавяне на група",
+"Unable to delete group" => "Невъзможно изтриване на група",
+"Unable to delete user" => "Невъзможно изтриване на потребител",
 "Language changed" => "Езикът е променен",
 "Invalid request" => "Невалидна заявка",
+"Disable" => "Изключено",
 "Enable" => "Включено",
+"Please wait...." => "Моля почакайте....",
+"Updating...." => "Обновява се...",
 "Error" => "Грешка",
+"Updated" => "Обновено",
+"Saving..." => "Записване...",
+"deleted" => "изтрито",
+"undo" => "възтановяване",
+"Groups" => "Групи",
+"Delete" => "Изтриване",
 "__language_name__" => "__language_name__",
+"More" => "Още",
+"Version" => "Версия",
 "Add your App" => "Добавете Ваше приложение",
+"More Apps" => "Още приложения",
 "Select an App" => "Изберете приложение",
 "Update" => "Обновяване",
+"User Documentation" => "Потребителска документация",
+"Administrator Documentation" => "Административна документация",
+"Online Documentation" => "Документация",
+"Forum" => "Форум",
+"Bugtracker" => "Докладвани грешки",
+"Commercial Support" => "Платена поддръжка",
+"Show First Run Wizard again" => "Покажи настройките за първоначално зареждане отново",
 "Password" => "Парола",
 "Unable to change your password" => "Промяната на паролата не беше извършена",
 "Current password" => "Текуща парола",
 "New password" => "Нова парола",
-"show" => "показва",
 "Change password" => "Промяна на паролата",
+"Display Name" => "Екранно име",
 "Email" => "E-mail",
 "Your email address" => "Вашия email адрес",
 "Language" => "Език",
 "Help translate" => "Помогнете с превода",
-"Groups" => "Групи",
+"WebDAV" => "WebDAV",
+"Login Name" => "Потребител",
 "Create" => "Създаване",
+"Default Storage" => "Хранилище по подразбиране",
+"Unlimited" => "Неограничено",
 "Other" => "Други",
-"Delete" => "Изтриване"
+"Storage" => "Хранилище",
+"Default" => "По подразбиране"
 );
diff --git a/settings/l10n/bn_BD.php b/settings/l10n/bn_BD.php
index fc90036536a60c8ff525b07911fc8728647a1aab..bbaa5be0043196c281df6044cbd1a51347cf516d 100644
--- a/settings/l10n/bn_BD.php
+++ b/settings/l10n/bn_BD.php
@@ -17,7 +17,15 @@
 "Enable" => "সক্রিয় ",
 "Error" => "সমস্যা",
 "Saving..." => "সংরক্ষণ করা হচ্ছে..",
+"undo" => "ক্রিয়া প্রত্যাহার",
+"Groups" => "গোষ্ঠীসমূহ",
+"Group Admin" => "গোষ্ঠী প্রশাসক",
+"Delete" => "মুছে ফেল",
 "__language_name__" => "__language_name__",
+"Security Warning" => "নিরাপত্তাজনিত সতর্কতা",
+"More" => "বেশী",
+"Version" => "ভার্সন",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "তৈলী করেছেন <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud সম্প্রদায়</a>, যার <a href=\"https://github.com/owncloud\" target=\"_blank\"> উৎস কোডটি <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> এর অধীনে লাইসেন্সকৃত।",
 "Add your App" => "আপনার অ্যাপটি যোগ করুন",
 "More Apps" => "আরও অ্যাপ",
 "Select an App" => "অ্যাপ নির্বাচন করুন",
@@ -31,16 +39,12 @@
 "Bugtracker" => "বাগট্র্যাকার",
 "Commercial Support" => "বাণিজ্যিক সাপোর্ট",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "আপনি ব্যবহার করছেন  <strong>%s</strong>, সুলভ  <strong>%s</strong> এর মধ্যে।",
-"Clients" => "ক্লায়েন্ট",
-"Download Desktop Clients" => "ডেস্কটপ ক্লায়েন্ট  ডাউনলোড করুন",
-"Download Android Client" => "অ্যান্ড্রয়েড ক্লায়েন্ট ডাউনলোড করুন",
-"Download iOS Client" => "iOS ক্লায়েন্ট ডাউনলোড করুন",
+"Show First Run Wizard again" => "প্রথমবার চালানোর যাদুকর পূনরায় প্রদর্শন কর",
 "Password" => "কূটশব্দ",
 "Your password was changed" => "আপনার কূটশব্দটি পরিবর্তন করা হয়েছে ",
 "Unable to change your password" => "আপনার কূটশব্দটি পরিবর্তন করতে সক্ষম নয়",
 "Current password" => "বর্তমান কূটশব্দ",
 "New password" => "নতুন কূটশব্দ",
-"show" => "প্রদর্শন",
 "Change password" => "কূটশব্দ পরিবর্তন করুন",
 "Email" => "ই-মেইল ",
 "Your email address" => "আপনার ই-মেইল ঠিকানা",
@@ -49,15 +53,10 @@
 "Help translate" => "অনুবাদ করতে সহায়তা করুন",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "আপনার ownCloud এ সংযুক্ত হতে এই ঠিকানাটি আপনার ফাইল ব্যবস্থাপকে ব্যবহার করুন",
-"Version" => "ভার্সন",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "তৈলী করেছেন <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud সম্প্রদায়</a>, যার <a href=\"https://github.com/owncloud\" target=\"_blank\"> উৎস কোডটি <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> এর অধীনে লাইসেন্সকৃত।",
-"Groups" => "গোষ্ঠীসমূহ",
 "Create" => "তৈরী কর",
 "Default Storage" => "পূর্বনির্ধারিত সংরক্ষণাগার",
 "Unlimited" => "অসীম",
 "Other" => "অন্যান্য",
-"Group Admin" => "গোষ্ঠী প্রশাসক",
 "Storage" => "সংরক্ষণাগার",
-"Default" => "পূর্বনির্ধারিত",
-"Delete" => "মুছে ফেল"
+"Default" => "পূর্বনির্ধারিত"
 );
diff --git a/settings/l10n/ca.php b/settings/l10n/ca.php
index 301ead2802d240e1f51dc101a36b0c47d5b52150..e4b7208ee611a4e970847ce645b54dd47d6e7734 100644
--- a/settings/l10n/ca.php
+++ b/settings/l10n/ca.php
@@ -24,7 +24,50 @@
 "Error" => "Error",
 "Updated" => "Actualitzada",
 "Saving..." => "S'està desant...",
+"deleted" => "esborrat",
+"undo" => "desfés",
+"Unable to remove user" => "No s'ha pogut eliminar l'usuari",
+"Groups" => "Grups",
+"Group Admin" => "Grup Admin",
+"Delete" => "Suprimeix",
+"add group" => "afegeix grup",
+"A valid username must be provided" => "Heu de facilitar un nom d'usuari vàlid",
+"Error creating user" => "Error en crear l'usuari",
+"A valid password must be provided" => "Heu de facilitar una contrasenya vàlida",
 "__language_name__" => "Català",
+"Security Warning" => "Avís de seguretat",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "La carpeta de dades i els fitxers provablement són accessibles des d'internet. El fitxer .htaccess que proporciona ownCloud no funciona. Us recomanem que configureu el vostre servidor web de manera que la carpeta de dades no sigui accessible o que moveu la carpeta de dades fora de la carpeta arrel del servidor web.",
+"Setup Warning" => "Avís de configuració",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "El servidor web no està configurat correctament per permetre la sincronització de fitxers perquè la interfície WebDAV sembla no funcionar correctament.",
+"Please double check the <a href='%s'>installation guides</a>." => "Comproveu les <a href='%s'>guies d'instal·lació</a>.",
+"Module 'fileinfo' missing" => "No s'ha trobat el mòdul 'fileinfo'",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "El mòdul de PHP 'fileinfo' no s'ha trobat. Us recomanem que habiliteu aquest mòdul per obtenir millors resultats amb la detecció mime-type.",
+"Locale not working" => "Locale no funciona",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Aquest servidor ownCloud no pot establir el locale del sistema a \"en_US.UTF-8\"/\"en_US.UTF8\". Això significa que hi poden haver problemes amb alguns caràcters en el nom dels fitxers. Us recomanem instal·lar els paquets necessaris añ sistema per donar suport en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "La connexió a internet no funciona",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Aquest servidor ownCloud no té cap connexió a internet que funcioni. Això significa que algunes de les característiques com el muntatge d'emmagatzemament externs, les notificacions quant a actualitzacions o la instal·lació d'aplicacions de tercers no funcionarà. L'accés remot a fitxers i l'enviament de correus electrònics podria tampoc no funcionar. Us suggerim que habiliteu la connexió a internet per aquest servidor si voleu gaudir de totes les possibilitats d'ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Executa una tasca per cada paquet carregat",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php està registrat en un servei webcron. Feu la crida a cron.php a l'arrel d'ownCloud cada minut a través de http.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Usa un servei cron del sistema. Feu la crida al fitxer cron.php a través d'un cronjob del sistema cada minut.",
+"Sharing" => "Compartir",
+"Enable Share API" => "Habilita l'API de compartir",
+"Allow apps to use the Share API" => "Permet que les aplicacions utilitzin l'API de compartir",
+"Allow links" => "Permet enllaços",
+"Allow users to share items to the public with links" => "Permet als usuaris compartir elements amb el públic amb enllaços",
+"Allow resharing" => "Permet compartir de nou",
+"Allow users to share items shared with them again" => "Permet als usuaris compartir de nou elements ja compartits amb ells",
+"Allow users to share with anyone" => "Permet compartir amb qualsevol",
+"Allow users to only share with users in their groups" => "Permet als usuaris compartir només amb els usuaris del seu grup",
+"Security" => "Seguretat",
+"Enforce HTTPS" => "Força HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Força als clients la connexió amb ownCloud via una connexió encriptada.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Connecteu aquesta instància onwCloud via HTTPS per habilitar o deshabilitar el forçament SSL.",
+"Log" => "Registre",
+"Log level" => "Nivell de registre",
+"More" => "Més",
+"Version" => "Versió",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitat ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">codi font</a> té llicència <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Afegiu la vostra aplicació",
 "More Apps" => "Més aplicacions",
 "Select an App" => "Seleccioneu una aplicació",
@@ -38,16 +81,13 @@
 "Bugtracker" => "Seguiment d'errors",
 "Commercial Support" => "Suport comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Heu utilitzat <strong>%s</strong> d'un total disponible de <strong>%s</strong>",
-"Clients" => "Clients",
-"Download Desktop Clients" => "Baixa clients d'escriptori",
-"Download Android Client" => " Baixa el client per Android",
-"Download iOS Client" => "Baixa el client per iOS",
+"Get the apps to sync your files" => "Obtén les aplicacions per sincronitzar fitxers",
+"Show First Run Wizard again" => "Torna a mostrar l'assistent de primera execució",
 "Password" => "Contrasenya",
 "Your password was changed" => "La seva contrasenya s'ha canviat",
 "Unable to change your password" => "No s'ha pogut canviar la contrasenya",
 "Current password" => "Contrasenya actual",
 "New password" => "Contrasenya nova",
-"show" => "mostra",
 "Change password" => "Canvia la contrasenya",
 "Display Name" => "Nom a mostrar",
 "Your display name was changed" => "El vostre nom a mostrar ha canviat",
@@ -60,18 +100,13 @@
 "Help translate" => "Ajudeu-nos amb la traducció",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Useu aquesta adreça per connectar amb ownCloud des del gestor de fitxers",
-"Version" => "Versió",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitat ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">codi font</a> té llicència <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nom d'accés",
-"Groups" => "Grups",
 "Create" => "Crea",
 "Default Storage" => "Emmagatzemament per defecte",
 "Unlimited" => "Il·limitat",
 "Other" => "Un altre",
-"Group Admin" => "Grup Admin",
 "Storage" => "Emmagatzemament",
 "change display name" => "canvia el nom a mostrar",
 "set new password" => "estableix nova contrasenya",
-"Default" => "Per defecte",
-"Delete" => "Suprimeix"
+"Default" => "Per defecte"
 );
diff --git a/settings/l10n/cs_CZ.php b/settings/l10n/cs_CZ.php
index 30f44dfefc6b3c4519018cb149abfa5a3e6c41c8..45bacb0bb63dfb4661a6db454b75a9cd6d44442a 100644
--- a/settings/l10n/cs_CZ.php
+++ b/settings/l10n/cs_CZ.php
@@ -24,7 +24,50 @@
 "Error" => "Chyba",
 "Updated" => "Aktualizováno",
 "Saving..." => "Ukládám...",
+"deleted" => "smazáno",
+"undo" => "zpět",
+"Unable to remove user" => "Nelze odebrat uživatele",
+"Groups" => "Skupiny",
+"Group Admin" => "Správa skupiny",
+"Delete" => "Smazat",
+"add group" => "přidat skupinu",
+"A valid username must be provided" => "Musíte zadat platné uživatelské jméno",
+"Error creating user" => "Chyba při vytváření užiatele",
+"A valid password must be provided" => "Musíte zadat platné heslo",
 "__language_name__" => "Česky",
+"Security Warning" => "Bezpečnostní upozornění",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Váš adresář dat a všechny Vaše soubory jsou pravděpodobně přístupné z internetu. Soubor .htaccess, který je poskytován ownCloud, nefunguje. Důrazně Vám doporučujeme nastavit váš webový server tak, aby nebyl adresář dat přístupný, nebo přesunout adresář dat mimo kořenovou složku dokumentů webového serveru.",
+"Setup Warning" => "Upozornění nastavení",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Váš webový server není správně nastaven pro umožnění synchronizace, protože rozhraní WebDAV je rozbité.",
+"Please double check the <a href='%s'>installation guides</a>." => "Zkonzultujte, prosím, <a href='%s'>průvodce instalací</a>.",
+"Module 'fileinfo' missing" => "Schází modul 'fileinfo'",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Schází modul PHP 'fileinfo'. Doporučujeme jej povolit pro nejlepší výsledky detekce typů MIME.",
+"Locale not working" => "Locale nefunguje",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Server ownCloud nemůže nastavit systémové locale na \"en_US.UTF-8\"/\"en_US.UTF8\".  Můžete tedy mít problémy s některými znaky v názvech souborů. Důrazně doporučujeme nainstalovat potřebné balíčky pro podporu en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "Spojení s internetem nefujguje",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Server ownCloud nemá funkční spojení s internetem. Některé moduly jako externí úložiště, oznámení o dostupných aktualizacích, nebo instalace aplikací třetích stran nefungují. Přístup k souborům z jiných míst a odesílání oznamovacích e-mailů také nemusí fungovat. Pokud si přejete využívat všech vlastností ownCloud, doporučujeme povolit internetové spojení pro tento server.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Spustit jednu úlohu s každou načtenou stránkou",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php je registrován u služby webcron. Zavolá stránku cron.php v kořenovém adresáři owncloud každou minutu skrze http.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Použít systémovou službu cron. Zavolat soubor cron.php ze složky owncloud pomocí systémové úlohy cron každou minutu.",
+"Sharing" => "Sdílení",
+"Enable Share API" => "Povolit API sdílení",
+"Allow apps to use the Share API" => "Povolit aplikacím používat API sdílení",
+"Allow links" => "Povolit odkazy",
+"Allow users to share items to the public with links" => "Povolit uživatelům sdílet položky s veřejností pomocí odkazů",
+"Allow resharing" => "Povolit znovu-sdílení",
+"Allow users to share items shared with them again" => "Povolit uživatelům znovu sdílet položky, které jsou pro ně sdíleny",
+"Allow users to share with anyone" => "Povolit uživatelům sdílet s kýmkoliv",
+"Allow users to only share with users in their groups" => "Povolit uživatelům sdílet pouze s uživateli v jejich skupinách",
+"Security" => "Zabezpečení",
+"Enforce HTTPS" => "Vynutit HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Vynutí připojování klientů ownCloud skrze šifrované spojení.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Připojte se, prosím, k této instanci ownCloud skrze HTTPS pro povolení, nebo zakažte vynucení SSL.",
+"Log" => "Záznam",
+"Log level" => "Úroveň záznamu",
+"More" => "Více",
+"Version" => "Verze",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencován pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Přidat Vaší aplikaci",
 "More Apps" => "Více aplikací",
 "Select an App" => "Vyberte aplikaci",
@@ -38,16 +81,13 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Placená podpora",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Používáte <strong>%s</strong> z <strong>%s</strong> dostupných",
-"Clients" => "Klienti",
-"Download Desktop Clients" => "Stáhnout klienty pro počítač",
-"Download Android Client" => "Stáhnout klienta pro android",
-"Download iOS Client" => "Stáhnout klienta pro iOS",
+"Get the apps to sync your files" => "Získat aplikace pro synchronizaci vašich souborů",
+"Show First Run Wizard again" => "Znovu zobrazit průvodce prvním spuštěním",
 "Password" => "Heslo",
 "Your password was changed" => "Vaše heslo bylo změněno",
 "Unable to change your password" => "Vaše heslo nelze změnit",
 "Current password" => "Současné heslo",
 "New password" => "Nové heslo",
-"show" => "zobrazit",
 "Change password" => "Změnit heslo",
 "Display Name" => "Zobrazované jméno",
 "Your display name was changed" => "Vaše zobrazované jméno bylo změněno",
@@ -60,18 +100,13 @@
 "Help translate" => "Pomoci s překladem",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Použijte tuto adresu pro připojení k vašemu ownCloud skrze správce souborů",
-"Version" => "Verze",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencován pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Přihlašovací jméno",
-"Groups" => "Skupiny",
 "Create" => "Vytvořit",
 "Default Storage" => "Výchozí úložiště",
 "Unlimited" => "Neomezeně",
 "Other" => "Jiná",
-"Group Admin" => "Správa skupiny",
 "Storage" => "Úložiště",
 "change display name" => "změnit zobrazované jméno",
 "set new password" => "nastavit nové heslo",
-"Default" => "Výchozí",
-"Delete" => "Smazat"
+"Default" => "Výchozí"
 );
diff --git a/settings/l10n/da.php b/settings/l10n/da.php
index 294bd918213d020833257119a07cfb3285bdfca0..5a330d371a832350b42ba75a0dcc5cbdbd6fc510 100644
--- a/settings/l10n/da.php
+++ b/settings/l10n/da.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Kunne ikke indlæse listen fra App Store",
 "Authentication error" => "Adgangsfejl",
+"Unable to change display name" => "Kunne ikke skifte skærmnavn",
 "Group already exists" => "Gruppen findes allerede",
 "Unable to add group" => "Gruppen kan ikke oprettes",
 "Could not enable app. " => "Applikationen kunne ikke aktiveres.",
@@ -13,11 +14,29 @@
 "Admins can't remove themself from the admin group" => "Administratorer kan ikke fjerne dem selv fra admin gruppen",
 "Unable to add user to group %s" => "Brugeren kan ikke tilføjes til gruppen %s",
 "Unable to remove user from group %s" => "Brugeren kan ikke fjernes fra gruppen %s",
+"Couldn't update app." => "Kunne ikke opdatere app'en.",
+"Update to {appversion}" => "Opdatér til {appversion}",
 "Disable" => "Deaktiver",
 "Enable" => "Aktiver",
+"Please wait...." => "Vent venligst...",
+"Updating...." => "Opdaterer....",
+"Error while updating app" => "Der opstod en fejl under app opgraderingen",
 "Error" => "Fejl",
+"Updated" => "Opdateret",
 "Saving..." => "Gemmer...",
+"deleted" => "Slettet",
+"undo" => "fortryd",
+"Groups" => "Grupper",
+"Group Admin" => "Gruppe Administrator",
+"Delete" => "Slet",
 "__language_name__" => "Dansk",
+"Security Warning" => "Sikkerhedsadvarsel",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Din data mappe og dine filer er muligvis tilgængelige fra internettet. .htaccess filen som ownCloud leverer virker ikke. Vi anbefaler på det kraftigste at du konfigurerer din webserver på en måske så data mappen ikke  længere er tilgængelig eller at du flytter data mappen uden for webserverens dokument rod.  ",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Din webserver er endnu ikke sat op til at tillade fil synkronisering fordi WebDAV grænsefladen virker ødelagt.",
+"Please double check the <a href='%s'>installation guides</a>." => "Dobbelttjek venligst <a href='%s'>installations vejledningerne</a>.",
+"More" => "Mere",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Udviklet af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownClouds community</a>, og <a href=\"https://github.com/owncloud\" target=\"_blank\">kildekoden</a> er underlagt licensen <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Tilføj din App",
 "More Apps" => "Flere Apps",
 "Select an App" => "Vælg en App",
@@ -31,17 +50,18 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Kommerciel support",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Du har brugt <strong>%s</strong> af den tilgængelige <strong>%s</strong>",
-"Clients" => "Klienter",
-"Download Desktop Clients" => "Hent Desktop Klienter",
-"Download Android Client" => "Hent Android Klient",
-"Download iOS Client" => "Hent iOS Klient",
+"Get the apps to sync your files" => "Hent applikationerne for at synkronisere dine filer",
+"Show First Run Wizard again" => "Vis Første Kørsel Guiden igen",
 "Password" => "Kodeord",
 "Your password was changed" => "Din adgangskode blev ændret",
 "Unable to change your password" => "Ude af stand til at ændre dit kodeord",
 "Current password" => "Nuværende adgangskode",
 "New password" => "Ny adgangskode",
-"show" => "vis",
 "Change password" => "Skift kodeord",
+"Display Name" => "Skærmnavn",
+"Your display name was changed" => "Dit skærmnavn blev ændret",
+"Unable to change your display name" => "Kunne ikke skifte dit skærmnavn",
+"Change display name" => "Skift skærmnavn",
 "Email" => "Email",
 "Your email address" => "Din emailadresse",
 "Fill in an email address to enable password recovery" => "Indtast en emailadresse for at kunne få påmindelse om adgangskode",
@@ -49,15 +69,13 @@
 "Help translate" => "Hjælp med oversættelsen",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Brug denne adresse til at oprette forbindelse til din ownCloud i din filstyring",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Udviklet af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownClouds community</a>, og <a href=\"https://github.com/owncloud\" target=\"_blank\">kildekoden</a> er underlagt licensen <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Grupper",
+"Login Name" => "Loginnavn",
 "Create" => "Ny",
 "Default Storage" => "Standard opbevaring",
 "Unlimited" => "Ubegrænset",
 "Other" => "Andet",
-"Group Admin" => "Gruppe Administrator",
 "Storage" => "Opbevaring",
-"Default" => "Standard",
-"Delete" => "Slet"
+"change display name" => "skift skærmnavn",
+"set new password" => "skift kodeord",
+"Default" => "Standard"
 );
diff --git a/settings/l10n/de.php b/settings/l10n/de.php
index b7ace81cf5968ff83c14f1c10e6730d0987ce204..4b8ee76e762e16ca7ebcd1951553c0fdc5459294 100644
--- a/settings/l10n/de.php
+++ b/settings/l10n/de.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Die Liste der Anwendungen im Store konnte nicht geladen werden.",
 "Authentication error" => "Fehler bei der Anmeldung",
+"Unable to change display name" => "Das Ändern des Anzeigenamens ist nicht möglich",
 "Group already exists" => "Gruppe existiert bereits",
 "Unable to add group" => "Gruppe konnte nicht angelegt werden",
 "Could not enable app. " => "App konnte nicht aktiviert werden.",
@@ -13,12 +14,60 @@
 "Admins can't remove themself from the admin group" => "Administratoren können sich nicht selbst aus der Admin-Gruppe löschen.",
 "Unable to add user to group %s" => "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden",
 "Unable to remove user from group %s" => "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden",
+"Couldn't update app." => "Die App konnte nicht geupdated werden.",
+"Update to {appversion}" => "Update zu {appversion}",
 "Disable" => "Deaktivieren",
 "Enable" => "Aktivieren",
+"Please wait...." => "Bitte warten...",
+"Updating...." => "Update...",
 "Error while updating app" => "Fehler beim Aktualisieren der App",
 "Error" => "Fehler",
+"Updated" => "Geupdated",
 "Saving..." => "Speichern...",
+"deleted" => "gelöscht",
+"undo" => "rückgängig machen",
+"Unable to remove user" => "Benutzer konnte nicht entfernt werden.",
+"Groups" => "Gruppen",
+"Group Admin" => "Gruppenadministrator",
+"Delete" => "Löschen",
+"add group" => "Gruppe hinzufügen",
+"A valid username must be provided" => "Es muss ein gültiger Benutzername angegeben werden",
+"Error creating user" => "Beim anlegen des Benutzers ist ein Fehler aufgetreten",
+"A valid password must be provided" => "Es muss ein gültiges Passwort angegeben werden",
 "__language_name__" => "Deutsch (Persönlich)",
+"Security Warning" => "Sicherheitswarnung",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Dein Datenverzeichnis und deine Datein sind vielleicht vom Internet aus erreichbar. Die .htaccess Datei, die ownCloud verwendet, arbeitet nicht richtig. Wir schlagen Dir dringend vor, dass du deinen Webserver so konfigurierst, dass das Datenverzeichnis nicht länger erreichbar ist oder, dass du dein Datenverzeichnis aus dem Dokumenten-root des Webservers bewegst.",
+"Setup Warning" => "Einrichtungswarnung",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Dein Web-Server ist noch nicht für Datei-Synchronisation bereit, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
+"Please double check the <a href='%s'>installation guides</a>." => "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>.",
+"Module 'fileinfo' missing" => "Modul 'fileinfo' fehlt ",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Das PHP-Modul 'fileinfo' fehlt. Wir empfehlen dieses Modul zu aktivieren um die besten Resultate bei der Erkennung der Dateitypen zu erreichen.",
+"Locale not working" => "Ländereinstellung funktioniert nicht",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Dieser ownCloud Server kann die Ländereinstellung nicht auf \"de_DE.UTF-8\"/\"de_DE.UTF8\" ändern. Dies bedeutet dass es Probleme mit bestimmten Zeichen in Dateinamen geben könnte. Wir empfehlen die für de_DE.UTF-8/de_DE.UTF8 benötigten Pakete auf ihrem System zu installieren.",
+"Internet connection not working" => "Keine Netzwerkverbindung",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Dieser ownCloud Server hat keine funktionierende Netzwerkverbindung. Dies bedeutet das einige Funktionen wie das einbinden von externen Speichern, Update-Benachrichtigungen oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Fernzugriff auf Dateien und das Senden von Benachrichtigungsmails funktioniert eventuell ebenfalls nicht. Wir empfehlen die Netzwerkverbindung für diesen Server zu aktivieren wenn Sie alle Funktionen von ownCloud nutzen wollen.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Führe eine Aufgabe mit jeder geladenen Seite aus",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php ist an einem Webcron-Service registriert. Die cron.php Seite wird einmal pro Minute über http abgerufen.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Nutze den Cron Systemdienst. Rufe die Datei cron.php im owncloud Ordner einmal pro Minute über einen Cronjob auf.",
+"Sharing" => "Teilen",
+"Enable Share API" => "Aktiviere Sharing-API",
+"Allow apps to use the Share API" => "Erlaube Apps die Nutzung der Sharing-API",
+"Allow links" => "Erlaube Links",
+"Allow users to share items to the public with links" => "Erlaube Benutzern Inhalte über öffentliche Links zu teilen",
+"Allow resharing" => "Erlaube erneutes teilen",
+"Allow users to share items shared with them again" => "Erlaube Benutzern mit ihnen geteilte Inhalte erneut zu teilen",
+"Allow users to share with anyone" => "Erlaube Benutzern mit jedem zu teilen",
+"Allow users to only share with users in their groups" => "Erlaube Benutzern nur mit Benutzern ihrer Gruppe zu teilen",
+"Security" => "Sicherheit",
+"Enforce HTTPS" => "Erzwinge HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Erzwingt die Verwendung einer verschlüsselten Verbindung",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Bitte verbinden Sie sich über eine HTTPS Verbindung mit diesem ownCloud Server um diese Einstellung zu ändern",
+"Log" => "Log",
+"Log level" => "Logtiefe",
+"More" => "Mehr",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>, der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.",
 "Add your App" => "Füge Deine Anwendung hinzu",
 "More Apps" => "Weitere Anwendungen",
 "Select an App" => "Wähle eine Anwendung aus",
@@ -32,18 +81,18 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Kommerzieller Support",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Du verwendest <strong>%s</strong> der verfügbaren <strong>%s<strong>",
-"Clients" => "Clients",
-"Download Desktop Clients" => "Desktop-Client herunterladen",
-"Download Android Client" => "Android-Client herunterladen",
-"Download iOS Client" => "iOS-Client herunterladen",
+"Get the apps to sync your files" => "Laden Sie die Apps zur Synchronisierung ihrer Daten herunter",
+"Show First Run Wizard again" => "Erstinstallation erneut durchführen",
 "Password" => "Passwort",
 "Your password was changed" => "Dein Passwort wurde geändert.",
 "Unable to change your password" => "Passwort konnte nicht geändert werden",
 "Current password" => "Aktuelles Passwort",
 "New password" => "Neues Passwort",
-"show" => "zeigen",
 "Change password" => "Passwort ändern",
 "Display Name" => "Anzeigename",
+"Your display name was changed" => "Dein Anzeigename wurde geändert",
+"Unable to change your display name" => "Das Ändern deines Anzeigenamens ist nicht möglich",
+"Change display name" => "Anzeigenamen ändern",
 "Email" => "E-Mail",
 "Your email address" => "Deine E-Mail-Adresse",
 "Fill in an email address to enable password recovery" => "Trage eine E-Mail-Adresse ein, um die Passwort-Wiederherstellung zu aktivieren.",
@@ -51,18 +100,13 @@
 "Help translate" => "Hilf bei der Übersetzung",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Verwende diese Adresse, um Deinen Dateimanager mit Deiner ownCloud zu verbinden",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>, der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.",
 "Login Name" => "Loginname",
-"Groups" => "Gruppen",
 "Create" => "Anlegen",
 "Default Storage" => "Standard-Speicher",
 "Unlimited" => "Unbegrenzt",
 "Other" => "Andere",
-"Group Admin" => "Gruppenadministrator",
 "Storage" => "Speicher",
 "change display name" => "Anzeigenamen ändern",
 "set new password" => "Neues Passwort setzen",
-"Default" => "Standard",
-"Delete" => "Löschen"
+"Default" => "Standard"
 );
diff --git a/settings/l10n/de_DE.php b/settings/l10n/de_DE.php
index ab8c791bbe0e208132941f5221dc273c7e00e7a8..cf947019585a76efe029a24766e2f86353dd5a91 100644
--- a/settings/l10n/de_DE.php
+++ b/settings/l10n/de_DE.php
@@ -24,7 +24,35 @@
 "Error" => "Fehler",
 "Updated" => "Geupdated",
 "Saving..." => "Speichern...",
+"deleted" => "gelöscht",
+"undo" => "rückgängig machen",
+"Unable to remove user" => "Benutzer konnte nicht entfernt werden.",
+"Groups" => "Gruppen",
+"Group Admin" => "Gruppenadministrator",
+"Delete" => "Löschen",
+"add group" => "Gruppe konnte nicht hinzugefügt werden",
+"Error creating user" => "Beim Erstellen des Benutzers ist ein Fehler aufgetreten",
 "__language_name__" => "Deutsch (Förmlich: Sie)",
+"Security Warning" => "Sicherheitshinweis",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich über das Internet erreichbar. Die von ownCloud bereitgestellte .htaccess Datei funktioniert nicht. Wir empfehlen Ihnen dringend, Ihren Webserver so zu konfigurieren, dass das Datenverzeichnis nicht mehr über das Internet erreichbar ist. Alternativ können Sie auch das Datenverzeichnis aus dem Dokumentenverzeichnis des Webservers verschieben.",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Ihr Web-Server ist wahrscheinlich noch nicht konfiguriert, Datei-Synchronisation zu erlauben, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
+"Please double check the <a href='%s'>installation guides</a>." => "Bitte prüfen Sie die <a href='%s'>Instalationsanleitungen</a>.",
+"Execute one task with each page loaded" => "Führe eine Aufgabe bei jedem Laden der Seite aus",
+"Sharing" => "Teilen",
+"Enable Share API" => "Teilen-API aktivieren",
+"Allow apps to use the Share API" => "Erlaube es Anwendungen, die Teilen-API zu benutzen",
+"Allow links" => "Links erlauben",
+"Allow users to share items to the public with links" => "Erlaube es Benutzern, Items per öffentlichem Link zu teilen",
+"Allow resharing" => "Erlaube weiterteilen",
+"Security" => "Sicherheit",
+"Enforce HTTPS" => "HTTPS erzwingen",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Zwingt die Clients, sich über eine verschlüsselte Verbindung mit ownCloud zu verbinden.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Bitte verbinden Sie sich mit dieser ownCloud-Instanz per HTTPS um SSL-Erzwingung zu aktivieren oder deaktivieren.",
+"Log" => "Log",
+"Log level" => "Log-Level",
+"More" => "Mehr",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>. Der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.",
 "Add your App" => "Fügen Sie Ihre Anwendung hinzu",
 "More Apps" => "Weitere Anwendungen",
 "Select an App" => "Wählen Sie eine Anwendung aus",
@@ -38,20 +66,17 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Kommerzieller Support",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Sie verwenden <strong>%s</strong> der verfügbaren <strong>%s</strong>",
-"Clients" => "Clients",
-"Download Desktop Clients" => "Desktop-Client herunterladen",
-"Download Android Client" => "Android-Client herunterladen",
-"Download iOS Client" => "iOS-Client herunterladen",
+"Get the apps to sync your files" => "Installieren Sie die Anwendungen um Ihre Dateien zu synchronisieren",
+"Show First Run Wizard again" => "Zeige den Einrichtungsassistenten erneut",
 "Password" => "Passwort",
 "Your password was changed" => "Ihr Passwort wurde geändert.",
 "Unable to change your password" => "Das Passwort konnte nicht geändert werden",
 "Current password" => "Aktuelles Passwort",
 "New password" => "Neues Passwort",
-"show" => "zeigen",
 "Change password" => "Passwort ändern",
 "Display Name" => "Anzeigename",
-"Your display name was changed" => "Dein Anzeigename wurde geändert",
-"Unable to change your display name" => "Das Ändern deines Anzeigenamens ist nicht möglich",
+"Your display name was changed" => "Ihr Anzeigename wurde geändert",
+"Unable to change your display name" => "Das Ändern Ihres Anzeigenamens ist nicht möglich",
 "Change display name" => "Anzeigenamen ändern",
 "Email" => "E-Mail",
 "Your email address" => "Ihre E-Mail-Adresse",
@@ -60,18 +85,13 @@
 "Help translate" => "Helfen Sie bei der Übersetzung",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Verwenden Sie diese Adresse, um Ihren Dateimanager mit Ihrer ownCloud zu verbinden",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>. Der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.",
 "Login Name" => "Loginname",
-"Groups" => "Gruppen",
 "Create" => "Anlegen",
 "Default Storage" => "Standard-Speicher",
 "Unlimited" => "Unbegrenzt",
 "Other" => "Andere",
-"Group Admin" => "Gruppenadministrator",
 "Storage" => "Speicher",
 "change display name" => "Anzeigenamen ändern",
 "set new password" => "Neues Passwort setzen",
-"Default" => "Standard",
-"Delete" => "Löschen"
+"Default" => "Standard"
 );
diff --git a/settings/l10n/el.php b/settings/l10n/el.php
index 925ecf695aaa54b93d7a163ed13ebcbc66a95043..66d9d92ca30e14ca205f68ecd3505874627ce8af 100644
--- a/settings/l10n/el.php
+++ b/settings/l10n/el.php
@@ -17,7 +17,17 @@
 "Enable" => "Ενεργοποίηση",
 "Error" => "Σφάλμα",
 "Saving..." => "Αποθήκευση...",
+"deleted" => "διαγράφηκε",
+"undo" => "αναίρεση",
+"Groups" => "Ομάδες",
+"Group Admin" => "Ομάδα Διαχειριστών",
+"Delete" => "Διαγραφή",
 "__language_name__" => "__όνομα_γλώσσας__",
+"Security Warning" => "Προειδοποίηση Ασφαλείας",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ο κατάλογος data και τα αρχεία σας πιθανόν να είναι διαθέσιμα στο διαδίκτυο. Το αρχείο .htaccess που παρέχει το ownCloud δεν δουλεύει. Σας προτείνουμε ανεπιφύλακτα να ρυθμίσετε το διακομιστή σας με τέτοιο τρόπο ώστε ο κατάλογος data να μην είναι πλέον προσβάσιμος ή να μετακινήσετε τον κατάλογο data έξω από τον κατάλογο του διακομιστή.",
+"More" => "Περισσότερα",
+"Version" => "Έκδοση",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Αναπτύχθηκε από την <a href=\"http://ownCloud.org/contact\" target=\"_blank\">κοινότητα ownCloud</a>, ο <a href=\"https://github.com/owncloud\" target=\"_blank\">πηγαίος κώδικας</a> είναι υπό άδεια χρήσης <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Πρόσθεστε τη Δικιά σας Εφαρμογή",
 "More Apps" => "Περισσότερες Εφαρμογές",
 "Select an App" => "Επιλέξτε μια Εφαρμογή",
@@ -31,16 +41,12 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Εμπορική Υποστήριξη",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Χρησιμοποιήσατε <strong>%s</strong> από διαθέσιμα <strong>%s</strong>",
-"Clients" => "Πελάτες",
-"Download Desktop Clients" => "Λήψη Προγραμμάτων για Σταθερούς Υπολογιστές",
-"Download Android Client" => "Λήψη Προγράμματος Android",
-"Download iOS Client" => "Λήψη Προγράμματος iOS",
+"Show First Run Wizard again" => "Προβολή Πρώτης Εκτέλεσης Οδηγού πάλι",
 "Password" => "Συνθηματικό",
 "Your password was changed" => "Το συνθηματικό σας έχει αλλάξει",
 "Unable to change your password" => "Δεν ήταν δυνατή η αλλαγή του κωδικού πρόσβασης",
 "Current password" => "Τρέχων συνθηματικό",
 "New password" => "Νέο συνθηματικό",
-"show" => "εμφάνιση",
 "Change password" => "Αλλαγή συνθηματικού",
 "Email" => "Email",
 "Your email address" => "Η διεύθυνση ηλεκτρονικού ταχυδρομείου σας",
@@ -49,15 +55,10 @@
 "Help translate" => "Βοηθήστε στη μετάφραση",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Χρήση αυτής της διεύθυνσης για σύνδεση στο ownCloud με τον διαχειριστή αρχείων σας",
-"Version" => "Έκδοση",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Αναπτύχθηκε από την <a href=\"http://ownCloud.org/contact\" target=\"_blank\">κοινότητα ownCloud</a>, ο <a href=\"https://github.com/owncloud\" target=\"_blank\">πηγαίος κώδικας</a> είναι υπό άδεια χρήσης <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Ομάδες",
 "Create" => "Δημιουργία",
 "Default Storage" => "Προκαθορισμένη Αποθήκευση ",
 "Unlimited" => "Απεριόριστο",
 "Other" => "Άλλα",
-"Group Admin" => "Ομάδα Διαχειριστών",
 "Storage" => "Αποθήκευση",
-"Default" => "Προκαθορισμένο",
-"Delete" => "Διαγραφή"
+"Default" => "Προκαθορισμένο"
 );
diff --git a/settings/l10n/eo.php b/settings/l10n/eo.php
index f84526c3c916771f801d4e56e177797972fbc6b8..e381794f6f3a5c4dd7130bf1f64a8b6d5f44c251 100644
--- a/settings/l10n/eo.php
+++ b/settings/l10n/eo.php
@@ -17,7 +17,16 @@
 "Enable" => "Kapabligi",
 "Error" => "Eraro",
 "Saving..." => "Konservante...",
+"deleted" => "forigita",
+"undo" => "malfari",
+"Groups" => "Grupoj",
+"Group Admin" => "Grupadministranto",
+"Delete" => "Forigi",
 "__language_name__" => "Esperanto",
+"Security Warning" => "Sekureca averto",
+"More" => "Pli",
+"Version" => "Eldono",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Ellaborita de la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunumo de ownCloud</a>, la <a href=\"https://github.com/owncloud\" target=\"_blank\">fontokodo</a> publikas laŭ la permesilo <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Aldonu vian aplikaĵon",
 "More Apps" => "Pli da aplikaĵoj",
 "Select an App" => "Elekti aplikaĵon",
@@ -31,16 +40,11 @@
 "Bugtracker" => "Cimoraportejo",
 "Commercial Support" => "Komerca subteno",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Vi uzas <strong>%s</strong> el la haveblaj <strong>%s</strong>",
-"Clients" => "Klientoj",
-"Download Desktop Clients" => "Elŝuti labortablajn klientojn",
-"Download Android Client" => "Elŝuti Android-klienton",
-"Download iOS Client" => "Elŝuti iOS-klienton",
 "Password" => "Pasvorto",
 "Your password was changed" => "Via pasvorto ŝanĝiĝis",
 "Unable to change your password" => "Ne eblis ŝanĝi vian pasvorton",
 "Current password" => "Nuna pasvorto",
 "New password" => "Nova pasvorto",
-"show" => "montri",
 "Change password" => "Ŝanĝi la pasvorton",
 "Email" => "Retpoŝto",
 "Your email address" => "Via retpoŝta adreso",
@@ -49,15 +53,10 @@
 "Help translate" => "Helpu traduki",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Uzu ĉi tiun adreson por konekti al via ownCloud vian dosieradministrilon",
-"Version" => "Eldono",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Ellaborita de la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunumo de ownCloud</a>, la <a href=\"https://github.com/owncloud\" target=\"_blank\">fontokodo</a> publikas laŭ la permesilo <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Grupoj",
 "Create" => "Krei",
 "Default Storage" => "Defaŭlta konservejo",
 "Unlimited" => "Senlima",
 "Other" => "Alia",
-"Group Admin" => "Grupadministranto",
 "Storage" => "Konservejo",
-"Default" => "Defaŭlta",
-"Delete" => "Forigi"
+"Default" => "Defaŭlta"
 );
diff --git a/settings/l10n/es.php b/settings/l10n/es.php
index 1b4fd6ac7a69a69464b1ede7e939e7ccba5a7480..e0c20c6d97c8e88d6da98d69ee4bf66d81f6cc3d 100644
--- a/settings/l10n/es.php
+++ b/settings/l10n/es.php
@@ -24,7 +24,19 @@
 "Error" => "Error",
 "Updated" => "Actualizado",
 "Saving..." => "Guardando...",
+"deleted" => "borrado",
+"undo" => "deshacer",
+"Groups" => "Grupos",
+"Group Admin" => "Grupo admin",
+"Delete" => "Eliminar",
 "__language_name__" => "Castellano",
+"Security Warning" => "Advertencia de seguridad",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Su directorio de datos y sus archivos están probablemente accesibles desde internet. El archivo .htaccess que ownCloud provee no está funcionando. Sugerimos fuertemente que configure su servidor web de manera que el directorio de datos ya no esté accesible o mueva el directorio de datos fuera del documento raíz de su servidor web.",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, vuelva a comprobar las <a href='%s'>guías de instalación</a>.",
+"More" => "Más",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Añade tu aplicación",
 "More Apps" => "Más aplicaciones",
 "Select an App" => "Seleccionar una aplicación",
@@ -38,16 +50,12 @@
 "Bugtracker" => "Rastreador de Bugs",
 "Commercial Support" => "Soporte Comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Ha usado <strong>%s</strong> de <strong>%s</strong> disponibles",
-"Clients" => "Clientes",
-"Download Desktop Clients" => "Descargar clientes de escritorio",
-"Download Android Client" => "Descargar cliente para android",
-"Download iOS Client" => "Descargar cliente para iOS",
+"Show First Run Wizard again" => "Mostrar asistente para iniciar otra vez",
 "Password" => "Contraseña",
 "Your password was changed" => "Su contraseña ha sido cambiada",
 "Unable to change your password" => "No se ha podido cambiar tu contraseña",
 "Current password" => "Contraseña actual",
 "New password" => "Nueva contraseña:",
-"show" => "mostrar",
 "Change password" => "Cambiar contraseña",
 "Display Name" => "Nombre a mostrar",
 "Your display name was changed" => "Su nombre fue cambiado",
@@ -60,18 +68,13 @@
 "Help translate" => "Ayúdanos a traducir",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Use esta dirección para conectarse a su cuenta de ownCloud en el administrador de archivos",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nombre de usuario",
-"Groups" => "Grupos",
 "Create" => "Crear",
 "Default Storage" => "Almacenamiento Predeterminado",
 "Unlimited" => "Ilimitado",
 "Other" => "Otro",
-"Group Admin" => "Grupo admin",
 "Storage" => "Alamacenamiento",
 "change display name" => "Cambiar nombre a mostrar",
 "set new password" => "Configurar nueva contraseña",
-"Default" => "Predeterminado",
-"Delete" => "Eliminar"
+"Default" => "Predeterminado"
 );
diff --git a/settings/l10n/es_AR.php b/settings/l10n/es_AR.php
index a33d9e8063d47543a4fef58f0f2a4e29b5599fab..d5e054a14dc08507161757c53dc302cac9f76411 100644
--- a/settings/l10n/es_AR.php
+++ b/settings/l10n/es_AR.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Imposible cargar la lista desde el App Store",
 "Authentication error" => "Error al autenticar",
+"Unable to change display name" => "No fue posible cambiar el nombre mostrado",
 "Group already exists" => "El grupo ya existe",
 "Unable to add group" => "No fue posible añadir el grupo",
 "Could not enable app. " => "No se puede  habilitar la aplicación.",
@@ -13,11 +14,56 @@
 "Admins can't remove themself from the admin group" => "Los administradores no se pueden quitar a ellos mismos del grupo administrador. ",
 "Unable to add user to group %s" => "No fue posible añadir el usuario al grupo %s",
 "Unable to remove user from group %s" => "No es posible eliminar al usuario del grupo %s",
+"Couldn't update app." => "No se pudo actualizar la aplicación.",
+"Update to {appversion}" => "Actualizado a {appversion}",
 "Disable" => "Desactivar",
 "Enable" => "Activar",
+"Please wait...." => "Por favor, esperá....",
+"Updating...." => "Actualizando....",
+"Error while updating app" => "Error al actualizar",
 "Error" => "Error",
+"Updated" => "Actualizado",
 "Saving..." => "Guardando...",
+"deleted" => "borrado",
+"undo" => "deshacer",
+"Unable to remove user" => "Imposible remover usuario",
+"Groups" => "Grupos",
+"Group Admin" => "Grupo Administrador",
+"Delete" => "Borrar",
+"add group" => "Agregar grupo",
+"A valid username must be provided" => "Debe ingresar un nombre de usuario válido",
+"Error creating user" => "Error creando usuario",
+"A valid password must be provided" => "Debe ingresar una contraseña válida",
 "__language_name__" => "Castellano (Argentina)",
+"Security Warning" => "Advertencia de seguridad",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Tu directorio de datos y tus archivos son probablemente accesibles desde internet. El archivo .htaccess provisto por ownCloud no está funcionando. Te sugerimos que configures tu servidor web de manera que el directorio de datos ya no esté accesible, o que muevas el directorio de datos afuera del directorio raíz de tu servidor web.",
+"Setup Warning" => "Alerta de Configuración",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Tu servidor web no está configurado todavía para permitir sincronización de archivos porque la interfaz WebDAV parece no funcionar.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, comprobá nuevamente la <a href='%s'>guía de instalación</a>.",
+"Module 'fileinfo' missing" => "Modulo 'fileinfo' no existe",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "El modulo PHP 'fileinfo' no existe. Es muy recomendable que active este modulo para obtener mejores resultados con la detección mime-type",
+"Locale not working" => "\"Locale\" no está funcionando",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "El servidor ownCloud no puede establecer el sistema locale a \"en_US.UTF-8\"/\"en_US.UTF8\". Esto significa que debe haber u problema con ciertos caracteres en los nombres de archivo. Le recomendamos instalar en su sitema los paquetes requeridos para soportar en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "La conexión a Internet no esta funcionando. ",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Ejecute una tarea con cada pagina cargada.",
+"Sharing" => "Compartiendo",
+"Enable Share API" => "Habilitar Share API",
+"Allow apps to use the Share API" => "Permitir a las aplicaciones usar la Share API",
+"Allow links" => "Permitir enlaces",
+"Allow users to share items to the public with links" => "Permitir a los usuarios compartir enlaces públicos",
+"Allow resharing" => "Permitir Re-Compartir",
+"Allow users to share items shared with them again" => "Permite a los usuarios volver a compartir items que le han compartido",
+"Allow users to share with anyone" => "Permitir a los usuarios compartir con todos.",
+"Allow users to only share with users in their groups" => "Permitir a los usuarios compartir solo con los de su propio grupo",
+"Security" => "Seguridad",
+"Enforce HTTPS" => "Forzar HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Forzar a los clientes conectar a ownCloud vía conexión encriptada",
+"Log" => "Log",
+"Log level" => "Nivel de Log",
+"More" => "Más",
+"Version" => "Versión",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Añadí tu aplicación",
 "More Apps" => "Más aplicaciones",
 "Select an App" => "Seleccionar una aplicación",
@@ -31,18 +77,18 @@
 "Bugtracker" => "Informar errores",
 "Commercial Support" => "Soporte comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Usaste  <strong>%s</strong>  de los  <strong>%s</strong>  disponibles",
-"Clients" => "Clientes",
-"Download Desktop Clients" => "Descargar clientes de escritorio",
-"Download Android Client" => "Descargar cliente de Android",
-"Download iOS Client" => "Descargar cliente de iOS",
+"Get the apps to sync your files" => "Obtené aplicaciones para sincronizar tus archivos",
+"Show First Run Wizard again" => "Mostrar de nuevo el asistente de primera ejecución",
 "Password" => "Contraseña",
 "Your password was changed" => "Tu contraseña fue cambiada",
 "Unable to change your password" => "No fue posible cambiar tu contraseña",
 "Current password" => "Contraseña actual",
 "New password" => "Nueva contraseña:",
-"show" => "mostrar",
 "Change password" => "Cambiar contraseña",
 "Display Name" => "Nombre a mostrar",
+"Your display name was changed" => "El nombre mostrado fue cambiado",
+"Unable to change your display name" => "No fue posible cambiar tu nombre",
+"Change display name" => "Cambiar nombre",
 "Email" => "Correo electrónico",
 "Your email address" => "Tu dirección de e-mail",
 "Fill in an email address to enable password recovery" => "Escribí una dirección de correo electrónico para restablecer la contraseña",
@@ -50,16 +96,13 @@
 "Help translate" => "Ayudanos a traducir",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Utiliza esta dirección para conectarte con ownCloud en tu Administrador de Archivos",
-"Version" => "Versión",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nombre de ",
-"Groups" => "Grupos",
 "Create" => "Crear",
 "Default Storage" => "Almacenamiento Predeterminado",
 "Unlimited" => "Ilimitado",
 "Other" => "Otro",
-"Group Admin" => "Grupo Administrador",
 "Storage" => "Almacenamiento",
-"Default" => "Predeterminado",
-"Delete" => "Borrar"
+"change display name" => "Cambiar el nombre que se muestra",
+"set new password" => "Configurar nueva contraseña",
+"Default" => "Predeterminado"
 );
diff --git a/settings/l10n/et_EE.php b/settings/l10n/et_EE.php
index df5b707fcd5ae85324b6dda6a2554baf52a4e57b..649e91c43a69d40b4d91c43d1c8f36ed8ea619ae 100644
--- a/settings/l10n/et_EE.php
+++ b/settings/l10n/et_EE.php
@@ -12,33 +12,63 @@
 "Invalid request" => "Vigane päring",
 "Unable to add user to group %s" => "Kasutajat ei saa lisada gruppi %s",
 "Unable to remove user from group %s" => "Kasutajat ei saa eemaldada grupist %s",
+"Couldn't update app." => "Rakenduse uuendamine ebaõnnestus.",
+"Update to {appversion}" => "Uuenda versioonile {appversion}",
 "Disable" => "Lülita välja",
 "Enable" => "Lülita sisse",
+"Please wait...." => "Palun oota...",
+"Updating...." => "Uuendamine...",
+"Error while updating app" => "Viga rakenduse uuendamisel",
 "Error" => "Viga",
+"Updated" => "Uuendatud",
 "Saving..." => "Salvestamine...",
+"deleted" => "kustutatud",
+"undo" => "tagasi",
+"Groups" => "Grupid",
+"Group Admin" => "Grupi admin",
+"Delete" => "Kustuta",
+"add group" => "lisa grupp",
+"Error creating user" => "Viga kasutaja loomisel",
 "__language_name__" => "Eesti",
+"Security Warning" => "Turvahoiatus",
+"Sharing" => "Jagamine",
+"Security" => "Turvalisus",
+"Enforce HTTPS" => "Sunni peale HTTPS-i kasutamine",
+"Log" => "Logi",
+"Log level" => "Logi tase",
+"More" => "Rohkem",
+"Version" => "Versioon",
 "Add your App" => "Lisa oma rakendus",
 "More Apps" => "Veel rakendusi",
 "Select an App" => "Vali programm",
 "See application page at apps.owncloud.com" => "Vaata rakenduste lehte aadressil apps.owncloud.com",
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-litsenseeritud <span class=\"author\"></span>",
 "Update" => "Uuenda",
-"Clients" => "Kliendid",
+"User Documentation" => "Kasutaja dokumentatsioon",
+"Administrator Documentation" => "Administraatori dokumentatsioon",
+"Online Documentation" => "Online dokumentatsioon",
+"Forum" => "Foorum",
+"Bugtracker" => "Vigade nimekiri",
+"Commercial Support" => "Tasuine kasutajatugi",
 "Password" => "Parool",
 "Your password was changed" => "Sinu parooli on muudetud",
 "Unable to change your password" => "Sa ei saa oma parooli muuta",
 "Current password" => "Praegune parool",
 "New password" => "Uus parool",
-"show" => "näita",
 "Change password" => "Muuda parooli",
+"Display Name" => "Näidatav nimi",
+"Change display name" => "Muuda näidatavat nime",
 "Email" => "E-post",
 "Your email address" => "Sinu e-posti aadress",
 "Fill in an email address to enable password recovery" => "Parooli taastamise sisse lülitamiseks sisesta e-posti aadress",
 "Language" => "Keel",
 "Help translate" => "Aita tõlkida",
-"Groups" => "Grupid",
+"WebDAV" => "WebDAV",
+"Login Name" => "Kasutajanimi",
 "Create" => "Lisa",
+"Unlimited" => "Piiramatult",
 "Other" => "Muu",
-"Group Admin" => "Grupi admin",
-"Delete" => "Kustuta"
+"change display name" => "muuda näidatavat nime",
+"set new password" => "määra uus parool",
+"Default" => "Vaikeväärtus"
 );
diff --git a/settings/l10n/eu.php b/settings/l10n/eu.php
index 1be2c7940bce405d65b524fa531591305f7bd7fa..94c9fe55e27eb4bc3b2d40a4c5fc345594a5a8a2 100644
--- a/settings/l10n/eu.php
+++ b/settings/l10n/eu.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Ezin izan da App Dendatik zerrenda kargatu",
 "Authentication error" => "Autentifikazio errorea",
+"Unable to change display name" => "Ezin izan da bistaratze izena aldatu",
 "Group already exists" => "Taldea dagoeneko existitzenda",
 "Unable to add group" => "Ezin izan da taldea gehitu",
 "Could not enable app. " => "Ezin izan da aplikazioa gaitu.",
@@ -13,11 +14,59 @@
 "Admins can't remove themself from the admin group" => "Kudeatzaileak ezin du bere burua kendu kudeatzaile taldetik",
 "Unable to add user to group %s" => "Ezin izan da erabiltzailea %s taldera gehitu",
 "Unable to remove user from group %s" => "Ezin izan da erabiltzailea %s taldetik ezabatu",
+"Couldn't update app." => "Ezin izan da aplikazioa eguneratu.",
+"Update to {appversion}" => "Eguneratu {appversion}-ra",
 "Disable" => "Ez-gaitu",
 "Enable" => "Gaitu",
+"Please wait...." => "Itxoin mesedez...",
+"Updating...." => "Eguneratzen...",
+"Error while updating app" => "Errorea aplikazioa eguneratzen zen bitartean",
 "Error" => "Errorea",
+"Updated" => "Eguneratuta",
 "Saving..." => "Gordetzen...",
+"deleted" => "ezabatuta",
+"undo" => "desegin",
+"Unable to remove user" => "Ezin izan da erabiltzailea aldatu",
+"Groups" => "Taldeak",
+"Group Admin" => "Talde administradorea",
+"Delete" => "Ezabatu",
+"add group" => "gehitu taldea",
+"A valid username must be provided" => "Baliozko erabiltzaile izena eman behar da",
+"Error creating user" => "Errore bat egon da erabiltzailea sortzean",
+"A valid password must be provided" => "Baliozko pasahitza eman behar da",
 "__language_name__" => "Euskera",
+"Security Warning" => "Segurtasun abisua",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Zure data karpeta eta zure fitxategiak internetetik zuzenean eskuragarri egon daitezke. ownCloudek emandako .htaccess fitxategia ez du bere lana egiten. Aholkatzen dizugu zure web zerbitzaria ongi konfiguratzea data karpeta eskuragarri ez izateko edo data karpeta web zerbitzariaren dokumentu errotik mugitzea.",
+"Setup Warning" => "Konfiguratu Abisuak",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Zure web zerbitzaria ez dago oraindik ongi konfiguratuta fitxategien sinkronizazioa egiteko, WebDAV interfazea ongi ez dagoela dirudi.",
+"Please double check the <a href='%s'>installation guides</a>." => "Mesedez begiratu <a href='%s'>instalazio gidak</a>.",
+"Module 'fileinfo' missing" => "'fileinfo' Modulua falta da",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "PHP 'fileinfo' modulua falta da. Modulu hau gaitzea aholkatzen dizugu mime-type ezberdinak hobe detektatzeko.",
+"Locale not working" => "Lokala ez dabil",
+"Internet connection not working" => "Interneteko konexioak ez du funtzionatzen",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "ownCloud zerbitzari honen interneteko konexioa ez dabil. Honek esan nahi du kanpoko biltegiratze zerbitzuak, eguneraketen informazioa edo bestelako aplikazioen instalazioa bezalako programek ez dutela funtzionatuko. Urrunetik fitxategiak eskuratzea eta e-postak bidaltzea ere ezinezkoa izan daiteke. onwCloud-en aukera guztiak erabili ahal izateko zerbitzari honetan interneteko konexioa gaitzea aholkatzen dizugu.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Exekutatu zeregin bat orri karga bakoitzean",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php webcron zerbitzu batean erregistratua dago. Deitu cron.php orria ownclouden erroan minuturo http bidez.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Erabili sistemaren cron zerbitzua. Deitu cron.php fitxategia owncloud karpetan minuturo sistemaren cron lan baten bidez.",
+"Sharing" => "Partekatzea",
+"Enable Share API" => "Gaitu Partekatze APIa",
+"Allow apps to use the Share API" => "Baimendu aplikazioak Partekatze APIa erabiltzeko",
+"Allow links" => "Baimendu loturak",
+"Allow users to share items to the public with links" => "Baimendu erabiltzaileak loturen bidez fitxategiak publikoki partekatzen",
+"Allow resharing" => "Baimendu birpartekatzea",
+"Allow users to share items shared with them again" => "Baimendu erabiltzaileak haiekin partekatutako fitxategiak berriz ere partekatzen",
+"Allow users to share with anyone" => "Baimendu erabiltzaileak edonorekin partekatzen",
+"Allow users to only share with users in their groups" => "Baimendu erabiltzaileak bakarrik bere taldeko erabiltzaileekin partekatzen",
+"Security" => "Segurtasuna",
+"Enforce HTTPS" => "Behartu HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Bezeroak konexio enkriptatu baten bidez ownCloud-era konektatzera behartzen du.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Mesedez konektatu ownCloud honetara HTTPS bidez SSL-ren beharra gaitu edo ezgaitzeko",
+"Log" => "Egunkaria",
+"Log level" => "Erregistro maila",
+"More" => "Gehiago",
+"Version" => "Bertsioa",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komunitateak</a> garatuta, <a href=\"https://github.com/owncloud\" target=\"_blank\">itubruru kodea</a><a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr> lizentziarekin banatzen da</a>.",
 "Add your App" => "Gehitu zure aplikazioa",
 "More Apps" => "App gehiago",
 "Select an App" => "Aukeratu programa bat",
@@ -31,18 +80,18 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Babes komertziala",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Dagoeneko <strong>%s</strong> erabili duzu eskuragarri duzun <strong>%s</strong>etatik",
-"Clients" => "Bezeroak",
-"Download Desktop Clients" => "Deskargatu mahaigainerako bezeroak",
-"Download Android Client" => "Deskargatu Android bezeroa",
-"Download iOS Client" => "Deskargatu iOS bezeroa",
+"Get the apps to sync your files" => "Lortu aplikazioak zure fitxategiak sinkronizatzeko",
+"Show First Run Wizard again" => "Erakutsi berriz Lehenengo Aldiko Morroia",
 "Password" => "Pasahitza",
 "Your password was changed" => "Zere pasahitza aldatu da",
 "Unable to change your password" => "Ezin izan da zure pasahitza aldatu",
 "Current password" => "Uneko pasahitza",
 "New password" => "Pasahitz berria",
-"show" => "erakutsi",
 "Change password" => "Aldatu pasahitza",
 "Display Name" => "Bistaratze Izena",
+"Your display name was changed" => "Zure bistaratze izena aldatu da",
+"Unable to change your display name" => "Ezin izan da zure bistaratze izena aldatu",
+"Change display name" => "Aldatu bistaratze izena",
 "Email" => "E-Posta",
 "Your email address" => "Zure e-posta",
 "Fill in an email address to enable password recovery" => "Idatz ezazu e-posta bat pasahitza berreskuratu ahal izateko",
@@ -50,16 +99,13 @@
 "Help translate" => "Lagundu itzultzen",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Erabili helbide hau zure fitxategi kudeatzailean zure ownCloudera konektatzeko",
-"Version" => "Bertsioa",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komunitateak</a> garatuta, <a href=\"https://github.com/owncloud\" target=\"_blank\">itubruru kodea</a><a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr> lizentziarekin banatzen da</a>.",
 "Login Name" => "Sarrera Izena",
-"Groups" => "Taldeak",
 "Create" => "Sortu",
 "Default Storage" => "Lehenetsitako Biltegiratzea",
 "Unlimited" => "Mugarik gabe",
 "Other" => "Besteak",
-"Group Admin" => "Talde administradorea",
 "Storage" => "Biltegiratzea",
-"Default" => "Lehenetsia",
-"Delete" => "Ezabatu"
+"change display name" => "aldatu bistaratze izena",
+"set new password" => "ezarri pasahitz berria",
+"Default" => "Lehenetsia"
 );
diff --git a/settings/l10n/fa.php b/settings/l10n/fa.php
index d4290f6dee712105d33510c2bfc081a7af50ba6d..d75efa85eba565993e9e528a356a7634f79f48c2 100644
--- a/settings/l10n/fa.php
+++ b/settings/l10n/fa.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "قادر به بارگذاری لیست از فروشگاه اپ نیستم",
 "Authentication error" => "خطا در اعتبار سنجی",
+"Unable to change display name" => "امکان تغییر نام نمایشی شما وجود ندارد",
 "Group already exists" => "این گروه در حال حاضر موجود است",
 "Unable to add group" => "افزودن گروه امکان پذیر نیست",
 "Email saved" => "ایمیل ذخیره شد",
@@ -9,6 +10,7 @@
 "Unable to delete user" => "حذف کاربر امکان پذیر نیست",
 "Language changed" => "زبان تغییر کرد",
 "Invalid request" => "درخواست غیر قابل قبول",
+"Admins can't remove themself from the admin group" => "مدیران نمی توانند خود را از گروه مدیریت حذف کنند",
 "Disable" => "غیرفعال",
 "Enable" => "فعال",
 "Please wait...." => "لطفا صبر کنید ...",
@@ -16,33 +18,46 @@
 "Error" => "خطا",
 "Updated" => "بروز رسانی انجام شد",
 "Saving..." => "درحال ذخیره ...",
+"deleted" => "حذف شده",
+"undo" => "بازگشت",
+"Groups" => "گروه ها",
+"Delete" => "پاک کردن",
 "__language_name__" => "__language_name__",
+"Security Warning" => "اخطار امنیتی",
+"More" => "بیش‌تر",
+"Version" => "نسخه",
 "Add your App" => "برنامه خود را بیافزایید",
 "More Apps" => "برنامه های بیشتر",
 "Select an App" => "یک برنامه انتخاب کنید",
 "See application page at apps.owncloud.com" => "صفحه این اٌپ را در apps.owncloud.com ببینید",
 "Update" => "به روز رسانی",
+"User Documentation" => "مستندات کاربر",
+"Administrator Documentation" => "مستندات مدیر",
 "Forum" => "انجمن",
-"Clients" => "مشتریان",
+"Commercial Support" => "پشتیبانی تجاری",
+"Show First Run Wizard again" => "راهبری کمکی اجرای اول را دوباره نمایش بده",
 "Password" => "گذرواژه",
 "Your password was changed" => "رمز عبور شما تغییر یافت",
 "Unable to change your password" => "ناتوان در تغییر گذرواژه",
 "Current password" => "گذرواژه کنونی",
 "New password" => "گذرواژه جدید",
-"show" => "نمایش",
 "Change password" => "تغییر گذر واژه",
+"Display Name" => "نام نمایشی",
+"Your display name was changed" => "نام نمایشی شما تغییر یافت",
+"Unable to change your display name" => "امکان تغییر نام نمایشی شما وجود ندارد",
+"Change display name" => "تغییر نام نمایشی",
 "Email" => "پست الکترونیکی",
 "Your email address" => "پست الکترونیکی شما",
 "Fill in an email address to enable password recovery" => "پست الکترونیکی را پرکنید  تا بازیابی گذرواژه فعال شود",
 "Language" => "زبان",
 "Help translate" => "به ترجمه آن کمک کنید",
-"Version" => "نسخه",
-"Groups" => "گروه ها",
+"Login Name" => "نام کاربری",
 "Create" => "ایجاد کردن",
 "Default Storage" => "ذخیره سازی پیش فرض",
 "Unlimited" => "نامحدود",
 "Other" => "سایر",
 "Storage" => "حافظه",
-"Default" => "پیش فرض",
-"Delete" => "پاک کردن"
+"change display name" => "تغییر نام نمایشی",
+"set new password" => "تنظیم کلمه عبور جدید",
+"Default" => "پیش فرض"
 );
diff --git a/settings/l10n/fi_FI.php b/settings/l10n/fi_FI.php
index 9f1feb74a11584ae9c3e461d2704fd944bc41ecc..ab43f61eeedc8d7c79a455766514c0ad35f43a03 100644
--- a/settings/l10n/fi_FI.php
+++ b/settings/l10n/fi_FI.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Ei pystytä lataamaan listaa sovellusvarastosta (App Store)",
 "Authentication error" => "Todennusvirhe",
+"Unable to change display name" => "Näyttönimen muuttaminen epäonnistui",
 "Group already exists" => "Ryhmä on jo olemassa",
 "Unable to add group" => "Ryhmän lisäys epäonnistui",
 "Could not enable app. " => "Sovelluksen käyttöönotto epäonnistui.",
@@ -23,7 +24,38 @@
 "Error" => "Virhe",
 "Updated" => "Päivitetty",
 "Saving..." => "Tallennetaan...",
+"deleted" => "poistettu",
+"undo" => "kumoa",
+"Unable to remove user" => "Käyttäjän poistaminen ei onnistunut",
+"Groups" => "Ryhmät",
+"Group Admin" => "Ryhmän ylläpitäjä",
+"Delete" => "Poista",
+"add group" => "lisää ryhmä",
+"Error creating user" => "Virhe käyttäjää luotaessa",
 "__language_name__" => "_kielen_nimi_",
+"Security Warning" => "Turvallisuusvaroitus",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Data-kansio ja tiedostot ovat ehkä saavutettavissa Internetistä. .htaccess-tiedosto, jolla kontrolloidaan pääsyä, ei toimi. Suosittelemme, että muutat web-palvelimesi asetukset niin ettei data-kansio ole enää pääsyä tai siirrät data-kansion pois web-palvelimen tiedostojen juuresta.",
+"Please double check the <a href='%s'>installation guides</a>." => "Lue tarkasti <a href='%s'>asennusohjeet</a>.",
+"Module 'fileinfo' missing" => "Moduuli 'fileinfo' puuttuu",
+"Internet connection not working" => "Internet-yhteys ei toimi",
+"Cron" => "Cron",
+"Sharing" => "Jakaminen",
+"Enable Share API" => "Käytä jakamisen ohjelmointirajapintaa",
+"Allow apps to use the Share API" => "Salli sovellusten käyttää jakamisen ohjelmointirajapintaa",
+"Allow links" => "Salli linkit",
+"Allow users to share items to the public with links" => "Salli käyttäjien jakaa kohteita käyttäen linkkejä",
+"Allow resharing" => "Salli uudelleenjakaminen",
+"Allow users to share items shared with them again" => "Mahdollistaa käyttäjien jakavan uudelleen heidän kanssaan jaettuja kohteita",
+"Allow users to share with anyone" => "Salli käyttäjien jakaa kenen tahansa kanssa",
+"Allow users to only share with users in their groups" => "Salli jakaminen vain samoissa ryhmissä olevien käyttäjien kesken",
+"Security" => "Tietoturva",
+"Enforce HTTPS" => "Pakota HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Pakottaa salaamaan ownCloudiin kohdistuvat yhteydet.",
+"Log" => "Loki",
+"Log level" => "Lokitaso",
+"More" => "Enemmän",
+"Version" => "Versio",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-yhteisö</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">lähdekoodi</a> on julkaistu lisenssin <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> alaisena.",
 "Add your App" => "Lisää sovelluksesi",
 "More Apps" => "Lisää sovelluksia",
 "Select an App" => "Valitse sovellus",
@@ -37,18 +69,17 @@
 "Bugtracker" => "Ohjelmistovirheiden jäljitys",
 "Commercial Support" => "Kaupallinen tuki",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Käytössäsi on <strong>%s</strong>/<strong>%s</strong>",
-"Clients" => "Asiakkaat",
-"Download Desktop Clients" => "Lataa työpöytäsovelluksia",
-"Download Android Client" => "Lataa Android-sovellus",
-"Download iOS Client" => "Lataa iOS-sovellus",
+"Show First Run Wizard again" => "Näytä ensimmäisen käyttökerran avustaja uudelleen",
 "Password" => "Salasana",
 "Your password was changed" => "Salasanasi vaihdettiin",
 "Unable to change your password" => "Salasanaasi ei voitu vaihtaa",
 "Current password" => "Nykyinen salasana",
 "New password" => "Uusi salasana",
-"show" => "näytä",
 "Change password" => "Vaihda salasana",
 "Display Name" => "Näyttönimi",
+"Your display name was changed" => "Näyttönimesi muutettiin",
+"Unable to change your display name" => "Näyttönimen muuttaminen epäonnistui",
+"Change display name" => "Muuta näyttönimeä",
 "Email" => "Sähköposti",
 "Your email address" => "Sähköpostiosoitteesi",
 "Fill in an email address to enable password recovery" => "Anna sähköpostiosoitteesi, jotta unohdettu salasana on mahdollista palauttaa",
@@ -56,16 +87,11 @@
 "Help translate" => "Auta kääntämisessä",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Käytä tätä osoitetta yhdistäessäsi ownCloudiisi tiedostonhallintaa käyttäen",
-"Version" => "Versio",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-yhteisö</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">lähdekoodi</a> on julkaistu lisenssin <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> alaisena.",
 "Login Name" => "Kirjautumisnimi",
-"Groups" => "Ryhmät",
 "Create" => "Luo",
 "Unlimited" => "Rajoittamaton",
 "Other" => "Muu",
-"Group Admin" => "Ryhmän ylläpitäjä",
 "change display name" => "vaihda näyttönimi",
 "set new password" => "aseta uusi salasana",
-"Default" => "Oletus",
-"Delete" => "Poista"
+"Default" => "Oletus"
 );
diff --git a/settings/l10n/fr.php b/settings/l10n/fr.php
index a47acb6435f0c525e242c420c1416f4e6d64cc5c..7276f56f2b4357385dbba896a03ca69c782cf9d0 100644
--- a/settings/l10n/fr.php
+++ b/settings/l10n/fr.php
@@ -24,7 +24,36 @@
 "Error" => "Erreur",
 "Updated" => "Mise à jour effectuée avec succès",
 "Saving..." => "Sauvegarde...",
+"deleted" => "supprimé",
+"undo" => "annuler",
+"Unable to remove user" => "Impossible de retirer l'utilisateur",
+"Groups" => "Groupes",
+"Group Admin" => "Groupe Admin",
+"Delete" => "Supprimer",
+"add group" => "ajouter un groupe",
+"A valid username must be provided" => "Un nom d'utilisateur valide doit être saisi",
+"Error creating user" => "Erreur lors de la création de l'utilisateur",
+"A valid password must be provided" => "Un mot de passe valide doit être saisi",
 "__language_name__" => "Français",
+"Security Warning" => "Avertissement de sécurité",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Votre dossier data et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess fourni par ownCloud ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de manière à ce que le dossier data ne soit plus accessible ou bien de déplacer le dossier data en dehors du dossier racine des documents du serveur web.",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Votre serveur web, n'est pas correctement configuré pour permettre la synchronisation des fichiers, car l'interface WebDav ne fonctionne pas comme il faut.",
+"Please double check the <a href='%s'>installation guides</a>." => "Veuillez vous référer au <a href='%s'>guide d'installation</a>.",
+"Module 'fileinfo' missing" => "Module 'fileinfo' manquant",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Le module PHP 'fileinfo' est manquant. Il est vivement recommandé de l'activer afin d'obtenir de meilleurs résultats pour la détection des types de fichiers.",
+"Locale not working" => "Localisation non fonctionnelle",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Ce serveur ownCloud ne peut pas ajuster la localisation du système en tant que \"en_US.UTF-8\"/\"en_US.UTF8\". Cela signifie qu'il pourra y avoir des problèmes avec certains caractères dans les noms de fichiers. Il est vivement recommandé d'installer les paquets requis pour le support de en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "La connexion internet ne fonctionne pas",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Ce serveur ownCloud ne peut pas se connecter à internet. Cela signifie que certaines fonctionnalités, telles que l'utilisation de supports de stockage distants, les notifications de mises à jour, ou l'installation d'applications tierces ne fonctionneront pas. L'accès aux fichiers à distance, ainsi que les notifications par mails ne marcheront pas non plus. Il est recommandé d'activer la connexion internet pour ce serveur si vous souhaitez utiliser toutes les fonctionnalités offertes par ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Exécute une tâche à chaque chargement de page",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php est enregistré en tant que service webcron. Veuillez appeler la page cron.php située à la racine du serveur ownCoud via http toute les minutes.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Utilise le service cron du système. Appelle le fichier cron.php du répertoire owncloud toutes les minutes grâce à une tâche cron du système.",
+"Sharing" => "Partage",
+"Enable Share API" => "Activer l'API de partage",
+"More" => "Plus",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">communauté ownCloud</a>, le <a href=\"https://github.com/owncloud\" target=\"_blank\">code source</a> est publié sous license <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Ajoutez votre application",
 "More Apps" => "Plus d'applications…",
 "Select an App" => "Sélectionner une Application",
@@ -38,16 +67,13 @@
 "Bugtracker" => "Suivi de bugs",
 "Commercial Support" => "Support commercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Vous avez utilisé <strong>%s</strong> des <strong>%s<strong> disponibles",
-"Clients" => "Clients",
-"Download Desktop Clients" => "Télécharger le client de synchronisation pour votre ordinateur",
-"Download Android Client" => "Télécharger le client Android",
-"Download iOS Client" => "Télécharger le client iOS",
+"Get the apps to sync your files" => "Obtenez les applications de synchronisation de vos fichiers",
+"Show First Run Wizard again" => "Revoir le premier lancement de l'installeur",
 "Password" => "Mot de passe",
 "Your password was changed" => "Votre mot de passe a été changé",
 "Unable to change your password" => "Impossible de changer votre mot de passe",
 "Current password" => "Mot de passe actuel",
 "New password" => "Nouveau mot de passe",
-"show" => "Afficher",
 "Change password" => "Changer de mot de passe",
 "Display Name" => "Nom affiché",
 "Your display name was changed" => "Votre nom d'affichage a bien été modifié",
@@ -60,18 +86,13 @@
 "Help translate" => "Aidez à traduire",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Utiliser cette adresse pour vous connecter à ownCloud dans votre gestionnaire de fichiers",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">communauté ownCloud</a>, le <a href=\"https://github.com/owncloud\" target=\"_blank\">code source</a> est publié sous license <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nom de la connexion",
-"Groups" => "Groupes",
 "Create" => "Créer",
 "Default Storage" => "Support de stockage par défaut",
 "Unlimited" => "Illimité",
 "Other" => "Autre",
-"Group Admin" => "Groupe Admin",
 "Storage" => "Support de stockage",
 "change display name" => "Changer le nom affiché",
 "set new password" => "Changer le mot de passe",
-"Default" => "Défaut",
-"Delete" => "Supprimer"
+"Default" => "Défaut"
 );
diff --git a/settings/l10n/gl.php b/settings/l10n/gl.php
index 997ac53de7ee59209944cc4a900a1c167e219a24..6452a75f6cbc4d85de39522d3cd22f485c030284 100644
--- a/settings/l10n/gl.php
+++ b/settings/l10n/gl.php
@@ -5,19 +5,61 @@
 "Unable to add group" => "Non é posíbel engadir o grupo",
 "Could not enable app. " => "Non é posíbel activar o aplicativo.",
 "Email saved" => "Correo gardado",
-"Invalid email" => "correo incorrecto",
+"Invalid email" => "Correo incorrecto",
 "Unable to delete group" => "Non é posíbel eliminar o grupo.",
 "Unable to delete user" => "Non é posíbel eliminar o usuario",
 "Language changed" => "O idioma cambiou",
 "Invalid request" => "Petición incorrecta",
-"Admins can't remove themself from the admin group" => "Os administradores non se pode eliminar a si mesmos do grupo admin",
+"Admins can't remove themself from the admin group" => "Os administradores non poden eliminarse a si mesmos do grupo admin",
 "Unable to add user to group %s" => "Non é posíbel engadir o usuario ao grupo %s",
 "Unable to remove user from group %s" => "Non é posíbel eliminar o usuario do grupo %s",
+"Couldn't update app." => "Non foi posíbel actualizar o aplicativo.",
+"Update to {appversion}" => "Actualizar á {appversion}",
 "Disable" => "Desactivar",
 "Enable" => "Activar",
+"Please wait...." => "Agarde...",
+"Updating...." => "Actualizando...",
+"Error while updating app" => "Produciuse un erro mentres actualizaba o aplicativo",
 "Error" => "Erro",
+"Updated" => "Actualizado",
 "Saving..." => "Gardando...",
+"deleted" => "eliminado",
+"undo" => "desfacer",
+"Unable to remove user" => "Non é posíbel retirar o usuario",
+"Groups" => "Grupos",
+"Group Admin" => "Grupo Admin",
+"Delete" => "Eliminar",
+"add group" => "engadir un grupo",
+"A valid username must be provided" => "Debe fornecer un nome de usuario",
+"Error creating user" => "Produciuse un erro ao crear o usuario",
+"A valid password must be provided" => "Debe fornecer un contrasinal",
 "__language_name__" => "Galego",
+"Security Warning" => "Aviso de seguranza",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "O seu cartafol de datos e os seus ficheiros probabelmente sexan accesíbeis a través da Internet. O ficheiro .htaccess que fornece ownCloud non está a empregarse. Suxerímoslle que configure o seu servidor web de tal xeito que o cartafol de datos non estea accesíbel ou mova o cartafol de datos fora do directorio raíz de datos do servidor web.",
+"Setup Warning" => "Configurar os avisos",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "O seu servidor web non está aínda configurado adecuadamente para permitir a sincronización de ficheiros xa que semella que a interface WebDAV non está a funcionar.",
+"Please double check the <a href='%s'>installation guides</a>." => "Volva comprobar as <a href='%s'>guías de instalación</a>",
+"Module 'fileinfo' missing" => "Non se atopou o módulo «fileinfo»",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Non se atopou o módulo de PHP «fileinfo». É recomendábel activar este módulo para obter os mellores resultados coa detección do tipo MIME.",
+"Execute one task with each page loaded" => "Executar unha tarefa con cada páxina cargada",
+"Sharing" => "Compartindo",
+"Enable Share API" => "Activar o API para compartir",
+"Allow apps to use the Share API" => "Permitir que os aplicativos empreguen o API para compartir",
+"Allow links" => "Permitir ligazóns",
+"Allow users to share items to the public with links" => "Permitir que os usuarios compartan elementos ao público con ligazóns",
+"Allow resharing" => "Permitir compartir",
+"Allow users to share items shared with them again" => "Permitir que os usuarios compartan de novo os elementos compartidos con eles",
+"Allow users to share with anyone" => "Permitir que os usuarios compartan con calquera",
+"Allow users to only share with users in their groups" => "Permitir que os usuarios compartan só cos usuarios dos seus grupos",
+"Security" => "Seguranza",
+"Enforce HTTPS" => "Forzar HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Forzar que os clientes se conecten a ownCloud empregando unha conexión cifrada",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Conectese a esta instancia ownCloud empregando HTTPS para activar ou desactivar o forzado de SSL.",
+"Log" => "Rexistro",
+"Log level" => "Nivel de rexistro",
+"More" => "Máis",
+"Version" => "Versión",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pola <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está baixo a licenza <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Engada o seu aplicativo",
 "More Apps" => "Máis aplicativos",
 "Select an App" => "Escolla un aplicativo",
@@ -30,18 +72,16 @@
 "Forum" => "Foro",
 "Bugtracker" => "Seguemento de fallos",
 "Commercial Support" => "Asistencia comercial",
-"You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Te en uso <strong>%s</strong> do total dispoñíbel de <strong>%s</strong>",
-"Clients" => "Clientes",
-"Download Desktop Clients" => "Descargar clientes para escritorio",
-"Download Android Client" => "Descargar clientes para Android",
-"Download iOS Client" => "Descargar clientes ra iOS",
+"You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Ten en uso <strong>%s</strong> do total dispoñíbel de <strong>%s</strong>",
+"Get the apps to sync your files" => "Obteña os aplicativos para sincronizar os seus ficheiros",
+"Show First Run Wizard again" => "Amosar o axudante da primeira execución outra vez",
 "Password" => "Contrasinal",
 "Your password was changed" => "O seu contrasinal foi cambiado",
 "Unable to change your password" => "Non é posíbel cambiar o seu contrasinal",
 "Current password" => "Contrasinal actual",
 "New password" => "Novo contrasinal",
-"show" => "amosar",
 "Change password" => "Cambiar o contrasinal",
+"Display Name" => "Amosar o nome",
 "Email" => "Correo",
 "Your email address" => "O seu enderezo de correo",
 "Fill in an email address to enable password recovery" => "Escriba un enderezo de correo para activar a recuperación do contrasinal",
@@ -49,15 +89,12 @@
 "Help translate" => "Axude na tradución",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Utilice este enderezo para conectarse ao seu ownCloud co administrador de ficheiros",
-"Version" => "Versión",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pola <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está baixo a licenza <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Grupos",
+"Login Name" => "Nome de acceso",
 "Create" => "Crear",
 "Default Storage" => "Almacenamento predeterminado",
 "Unlimited" => "Sen límites",
 "Other" => "Outro",
-"Group Admin" => "Grupo Admin",
 "Storage" => "Almacenamento",
-"Default" => "Predeterminado",
-"Delete" => "Eliminar"
+"set new password" => "estabelecer un novo contrasinal",
+"Default" => "Predeterminado"
 );
diff --git a/settings/l10n/he.php b/settings/l10n/he.php
index be776d4fa2eaea5bbbfd32d4166f1bfc0fc875e6..20e97b3ffda94217cdca1953e282ec2ec82d79bf 100644
--- a/settings/l10n/he.php
+++ b/settings/l10n/he.php
@@ -17,7 +17,16 @@
 "Enable" => "הפעל",
 "Error" => "שגיאה",
 "Saving..." => "שומר..",
+"undo" => "ביטול",
+"Groups" => "קבוצות",
+"Group Admin" => "מנהל הקבוצה",
+"Delete" => "מחיקה",
 "__language_name__" => "עברית",
+"Security Warning" => "אזהרת אבטחה",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "יתכן שתיקיית הנתונים והקבצים שלך נגישים דרך האינטרנט. קובץ ה־‎.htaccess שמסופק על ידי ownCloud כנראה אינו עובד. אנו ממליצים בחום להגדיר את שרת האינטרנט שלך בדרך שבה תיקיית הנתונים לא תהיה זמינה עוד או להעביר את תיקיית הנתונים מחוץ לספריית העל של שרת האינטרנט.",
+"More" => "יותר",
+"Version" => "גרסא",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "פותח על די <a href=\"http://ownCloud.org/contact\" target=\"_blank\">קהילתownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">קוד המקור</a> מוגן ברישיון <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "הוספת היישום שלך",
 "More Apps" => "יישומים נוספים",
 "Select an App" => "בחירת יישום",
@@ -30,16 +39,11 @@
 "Forum" => "פורום",
 "Commercial Support" => "תמיכה בתשלום",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "השתמשת ב־<strong>%s</strong> מתוך <strong>%s</strong> הזמינים לך",
-"Clients" => "לקוחות",
-"Download Desktop Clients" => "הורד לתוכנה למחשב",
-"Download Android Client" => "הורד תוכנה לאנדרואיד",
-"Download iOS Client" => "הורד תוכנה לiOS",
 "Password" => "ססמה",
 "Your password was changed" => "הססמה שלך הוחלפה",
 "Unable to change your password" => "לא ניתן לשנות את הססמה שלך",
 "Current password" => "ססמה נוכחית",
 "New password" => "ססמה חדשה",
-"show" => "הצגה",
 "Change password" => "שינוי ססמה",
 "Email" => "דוא״ל",
 "Your email address" => "כתובת הדוא״ל שלך",
@@ -47,11 +51,6 @@
 "Language" => "פה",
 "Help translate" => "עזרה בתרגום",
 "Use this address to connect to your ownCloud in your file manager" => "השתמש בכתובת זאת על מנת להתחבר אל ownCloud דרך סייר קבצים.",
-"Version" => "גרסא",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "פותח על די <a href=\"http://ownCloud.org/contact\" target=\"_blank\">קהילתownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">קוד המקור</a> מוגן ברישיון <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "קבוצות",
 "Create" => "יצירה",
-"Other" => "אחר",
-"Group Admin" => "מנהל הקבוצה",
-"Delete" => "מחיקה"
+"Other" => "אחר"
 );
diff --git a/settings/l10n/hr.php b/settings/l10n/hr.php
index f55cdcc687a08ad201baa39db2041f185695890b..013cce38908e79292be08ac1ba58e39748bcd1d6 100644
--- a/settings/l10n/hr.php
+++ b/settings/l10n/hr.php
@@ -9,25 +9,25 @@
 "Enable" => "Uključi",
 "Error" => "Greška",
 "Saving..." => "Spremanje...",
+"deleted" => "izbrisano",
+"undo" => "vrati",
+"Groups" => "Grupe",
+"Group Admin" => "Grupa Admin",
+"Delete" => "Obriši",
 "__language_name__" => "__ime_jezika__",
 "Add your App" => "Dodajte vašu aplikaciju",
 "Select an App" => "Odaberite Aplikaciju",
 "See application page at apps.owncloud.com" => "Pogledajte stranicu s aplikacijama na apps.owncloud.com",
-"Clients" => "Klijenti",
 "Password" => "Lozinka",
 "Unable to change your password" => "Nemoguće promijeniti lozinku",
 "Current password" => "Trenutna lozinka",
 "New password" => "Nova lozinka",
-"show" => "prikaz",
 "Change password" => "Izmjena lozinke",
 "Email" => "e-mail adresa",
 "Your email address" => "Vaša e-mail adresa",
 "Fill in an email address to enable password recovery" => "Ispunite vase e-mail adresa kako bi se omogućilo oporavak lozinke",
 "Language" => "Jezik",
 "Help translate" => "Pomoć prevesti",
-"Groups" => "Grupe",
 "Create" => "Izradi",
-"Other" => "ostali",
-"Group Admin" => "Grupa Admin",
-"Delete" => "Obriši"
+"Other" => "ostali"
 );
diff --git a/settings/l10n/hu_HU.php b/settings/l10n/hu_HU.php
index 23d6c3f5f7873dc7c4bee8e9c55fdb452c0eba7a..9bcca68907115e24bc94daba62290001d326e866 100644
--- a/settings/l10n/hu_HU.php
+++ b/settings/l10n/hu_HU.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nem tölthető le a lista az App Store-ból",
 "Authentication error" => "Azonosítási hiba",
+"Unable to change display name" => "Nem sikerült megváltoztatni a megjelenítési nevet",
 "Group already exists" => "A csoport már létezik",
 "Unable to add group" => "A csoport nem hozható létre",
 "Could not enable app. " => "A program nem aktiválható.",
@@ -13,11 +14,60 @@
 "Admins can't remove themself from the admin group" => "Adminisztrátorok nem távolíthatják el magukat az admin csoportból.",
 "Unable to add user to group %s" => "A felhasználó nem adható hozzá ehhez a csoporthoz: %s",
 "Unable to remove user from group %s" => "A felhasználó nem távolítható el ebből a csoportból: %s",
+"Couldn't update app." => "A program frissítése nem sikerült.",
+"Update to {appversion}" => "Frissítés erre a verzióra: {appversion}",
 "Disable" => "Letiltás",
 "Enable" => "Engedélyezés",
+"Please wait...." => "Kérem várjon...",
+"Updating...." => "Frissítés folyamatban...",
+"Error while updating app" => "Hiba történt a programfrissítés közben",
 "Error" => "Hiba",
+"Updated" => "Frissítve",
 "Saving..." => "Mentés...",
+"deleted" => "törölve",
+"undo" => "visszavonás",
+"Unable to remove user" => "A felhasználót nem sikerült eltávolítáni",
+"Groups" => "Csoportok",
+"Group Admin" => "Csoportadminisztrátor",
+"Delete" => "Törlés",
+"add group" => "csoport hozzáadása",
+"A valid username must be provided" => "Érvényes felhasználónevet kell megadnia",
+"Error creating user" => "A felhasználó nem hozható létre",
+"A valid password must be provided" => "Érvényes jelszót kell megadnia",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Biztonsági figyelmeztetés",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Az adatkönytára és az itt levő fájlok valószínűleg elérhetők az internetről. Az ownCloud által beillesztett .htaccess fájl nem működik. Nagyon fontos, hogy a webszervert úgy konfigurálja, hogy az adatkönyvtár nem legyen közvetlenül kívülről elérhető, vagy az adatkönyvtárt tegye a webszerver dokumentumfáján kívülre.",
+"Setup Warning" => "A beállítással kapcsolatos figyelmeztetés",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Az Ön webkiszolgálója nincs megfelelően beállítva az állományok szinkronizálásához, mert a WebDAV-elérés úgy tűnik, nem működik.",
+"Please double check the <a href='%s'>installation guides</a>." => "Kérjük tüzetesen tanulmányozza át a <a href='%s'>telepítési útmutatót</a>.",
+"Module 'fileinfo' missing" => "A 'fileinfo' modul hiányzik",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "A 'fileinfo' PHP modul hiányzik. Erősen javasolt ennek a modulnak az telepítése, ha az ember jó eredményt szeretne a MIME-típusok felismerésében.",
+"Locale not working" => "A nyelvi lokalizáció nem működik",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Az ownCloud kiszolgáló nem tudja beállítani a rendszer lokalizációját \"en_US.UTF-8\"/\"en_US.UTF8\"-re.  Emiatt bizonyos karakterek problémákat okozhatnak a fájlnevekben. Erősen javasolt, hogy telepítse az en_US.UTF-8/en_US.UTF8 támogatásához szükséges csomagokat.",
+"Internet connection not working" => "Az internet kapcsolat nem működik",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Az ownCloud kiszolgálónak nincs internet kapcsolata. Ez azt jelenti, hogy bizonyos dolgok nem fognak működni, pl. külső tárolók csatolása, programfrissítésekről való értesítések, vagy külső fejlesztői modulok telepítése. Lehet, hogy az állományok távolról történő elérése, ill. az email értesítések sem fog működni. Javasoljuk, hogy engedélyezze az internet kapcsolatot a kiszolgáló számára, ha az ownCloud összes szolgáltatását szeretné használni.",
+"Cron" => "Ütemezett feladatok",
+"Execute one task with each page loaded" => "Egy-egy feladat végrehajtása minden alkalommal, amikor egy weboldalt letöltenek",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "A cron.php webcron szolgáltatásként van regisztrálva. Hívja meg az owncloud könyvtárban levő cron.php állományt http-n keresztül percenként egyszer.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "A rendszer cron szolgáltatásának használata. Hívja meg az owncloud könyvtárban levő  cron.php állományt percenként egyszer a rendszer cron szolgáltatásának segítségével.",
+"Sharing" => "Megosztás",
+"Enable Share API" => "A megosztás API-jának engedélyezése",
+"Allow apps to use the Share API" => "Lehetővé teszi, hogy a programmodulok is használhassák a megosztást",
+"Allow links" => "Linkek engedélyezése",
+"Allow users to share items to the public with links" => "Lehetővé teszi, hogy a felhasználók linkek segítségével külsősökkel is megoszthassák az adataikat",
+"Allow resharing" => "A továbbosztás engedélyezése",
+"Allow users to share items shared with them again" => "Lehetővé teszi, hogy a felhasználók a velük megosztott állományokat megosszák egy további, harmadik féllel",
+"Allow users to share with anyone" => "A felhasználók bárkivel megoszthatják állományaikat",
+"Allow users to only share with users in their groups" => "A felhasználók csak olyanokkal oszthatják meg állományaikat, akikkel közös csoportban vannak",
+"Security" => "Biztonság",
+"Enforce HTTPS" => "Kötelező HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Kötelezővé teszi, hogy a böngészőprogramok titkosított csatornán kapcsolódjanak az ownCloud szolgáltatáshoz.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Kérjük, hogy HTTPS protokollt használjon, ha be vagy ki  akarja kapcsolni a kötelező SSL beállítást.",
+"Log" => "Naplózás",
+"Log level" => "Naplózási szint",
+"More" => "Több",
+"Version" => "Verzió",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "A programot az <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud közösség</a> fejleszti. A <a href=\"https://github.com/owncloud\" target=\"_blank\">forráskód</a> az <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> feltételei mellett használható föl.",
 "Add your App" => "Az alkalmazás hozzáadása",
 "More Apps" => "További alkalmazások",
 "Select an App" => "Válasszon egy alkalmazást",
@@ -31,17 +81,18 @@
 "Bugtracker" => "Hibabejelentések",
 "Commercial Support" => "Megvásárolható támogatás",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Az Ön tárterület-felhasználása jelenleg: <strong>%s</strong>. Maximálisan ennyi áll rendelkezésére: <strong>%s</strong>",
-"Clients" => "Kliensek",
-"Download Desktop Clients" => "Desktop kliensprogramok letöltése",
-"Download Android Client" => "Android kliens letöltése",
-"Download iOS Client" => "iOS kliens letöltése",
+"Get the apps to sync your files" => "Töltse le az állományok szinkronizációjához szükséges programokat",
+"Show First Run Wizard again" => "Nézzük meg újra az első bejelentkezéskori segítséget!",
 "Password" => "Jelszó",
 "Your password was changed" => "A jelszava megváltozott",
 "Unable to change your password" => "A jelszó nem változtatható meg",
 "Current password" => "A jelenlegi jelszó",
 "New password" => "Az új jelszó",
-"show" => "lássam",
 "Change password" => "A jelszó megváltoztatása",
+"Display Name" => "A megjelenített név",
+"Your display name was changed" => "Az Ön megjelenítési neve megváltozott",
+"Unable to change your display name" => "Nem sikerült megváltoztatni az Ön megjelenítési nevét",
+"Change display name" => "A megjelenítési név módosítása",
 "Email" => "Email",
 "Your email address" => "Az Ön email címe",
 "Fill in an email address to enable password recovery" => "Adja meg az email címét, hogy jelszó-emlékeztetőt kérhessen, ha elfelejtette a jelszavát!",
@@ -49,15 +100,13 @@
 "Help translate" => "Segítsen a fordításban!",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Ennek a címnek a megadásával a WebDAV-protokollon keresztül saját gépének fájlkezelőjével is is elérheti az állományait.",
-"Version" => "Verzió",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "A programot az <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud közösség</a> fejleszti. A <a href=\"https://github.com/owncloud\" target=\"_blank\">forráskód</a> az <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> feltételei mellett használható föl.",
-"Groups" => "Csoportok",
+"Login Name" => "Bejelentkezési név",
 "Create" => "Létrehozás",
 "Default Storage" => "Alapértelmezett tárhely",
 "Unlimited" => "Korlátlan",
 "Other" => "Más",
-"Group Admin" => "Csoportadminisztrátor",
 "Storage" => "Tárhely",
-"Default" => "Alapértelmezett",
-"Delete" => "Törlés"
+"change display name" => "a megjelenített név módosítása",
+"set new password" => "új jelszó beállítása",
+"Default" => "Alapértelmezett"
 );
diff --git a/settings/l10n/ia.php b/settings/l10n/ia.php
index fe26eea5e2805b58a178638b16403b98b7cbd109..6e7feaf378c84cedbdaed01419053c22aef30884 100644
--- a/settings/l10n/ia.php
+++ b/settings/l10n/ia.php
@@ -1,23 +1,21 @@
 <?php $TRANSLATIONS = array(
 "Language changed" => "Linguage cambiate",
 "Invalid request" => "Requesta invalide",
+"Groups" => "Gruppos",
+"Delete" => "Deler",
 "__language_name__" => "Interlingua",
 "Add your App" => "Adder tu application",
 "Select an App" => "Selectionar un app",
 "Update" => "Actualisar",
-"Clients" => "Clientes",
 "Password" => "Contrasigno",
 "Unable to change your password" => "Non pote cambiar tu contrasigno",
 "Current password" => "Contrasigno currente",
 "New password" => "Nove contrasigno",
-"show" => "monstrar",
 "Change password" => "Cambiar contrasigno",
 "Email" => "E-posta",
 "Your email address" => "Tu adresse de e-posta",
 "Language" => "Linguage",
 "Help translate" => "Adjuta a traducer",
-"Groups" => "Gruppos",
 "Create" => "Crear",
-"Other" => "Altere",
-"Delete" => "Deler"
+"Other" => "Altere"
 );
diff --git a/settings/l10n/id.php b/settings/l10n/id.php
index 181450e58bad6ab7bff998765ac7c73e879356dc..e62b3e15a7ad222c128e1b5d68fba71977b79f87 100644
--- a/settings/l10n/id.php
+++ b/settings/l10n/id.php
@@ -8,26 +8,28 @@
 "Enable" => "Aktifkan",
 "Error" => "kesalahan",
 "Saving..." => "Menyimpan...",
+"deleted" => "dihapus",
+"undo" => "batal dikerjakan",
+"Groups" => "Group",
+"Group Admin" => "Admin Grup",
+"Delete" => "Hapus",
 "__language_name__" => "__language_name__",
+"Security Warning" => "peringatan keamanan",
+"More" => "lagi",
 "Add your App" => "Tambahkan App anda",
 "Select an App" => "Pilih satu aplikasi",
 "See application page at apps.owncloud.com" => "Lihat halaman aplikasi di apps.owncloud.com",
 "Update" => "Pembaruan",
-"Clients" => "Klien",
 "Password" => "Password",
 "Unable to change your password" => "Tidak dapat merubah password anda",
 "Current password" => "Password saat ini",
 "New password" => "kata kunci baru",
-"show" => "perlihatkan",
 "Change password" => "Rubah password",
 "Email" => "Email",
 "Your email address" => "Alamat email anda",
 "Fill in an email address to enable password recovery" => "Masukkan alamat email untuk mengaktifkan pemulihan password",
 "Language" => "Bahasa",
 "Help translate" => "Bantu menerjemahkan",
-"Groups" => "Group",
 "Create" => "Buat",
-"Other" => "Lain-lain",
-"Group Admin" => "Admin Grup",
-"Delete" => "Hapus"
+"Other" => "Lain-lain"
 );
diff --git a/settings/l10n/is.php b/settings/l10n/is.php
index 75f46a01925049e987a811a36887700fbcc04a15..e5c6e9f63471a0a4ad685f01af878ae3c3ebd0f1 100644
--- a/settings/l10n/is.php
+++ b/settings/l10n/is.php
@@ -17,7 +17,16 @@
 "Enable" => "Virkja",
 "Error" => "Villa",
 "Saving..." => "Er að vista ...",
+"undo" => "afturkalla",
+"Groups" => "Hópar",
+"Group Admin" => "Hópstjóri",
+"Delete" => "Eyða",
 "__language_name__" => "__nafn_tungumáls__",
+"Security Warning" => "Öryggis aðvörun",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Gagnamappan þín er að öllum líkindum aðgengileg frá internetinu. Skráin .htaccess sem fylgir með ownCloud er ekki að virka. Við mælum eindregið með því að þú stillir vefþjóninn þannig að gagnamappan verði ekki aðgengileg frá internetinu eða færir hana út fyrir vefrótina.",
+"More" => "Meira",
+"Version" => "Útgáfa",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Þróað af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud samfélaginu</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">forrita kóðinn</a> er skráðu með <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Bæta við forriti",
 "More Apps" => "Fleiri forrit",
 "Select an App" => "Veldu forrit",
@@ -31,16 +40,11 @@
 "Bugtracker" => "Villubókhald",
 "Commercial Support" => "Borgaður stuðningur",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Þú hefur notað <strong>%s</strong> af tiltæku <strong>%s</strong>",
-"Clients" => "Notendahugbúnaður",
-"Download Desktop Clients" => "Hlaða niður notendahugbúnaði",
-"Download Android Client" => "Hlaða niður Andoid hugbúnaði",
-"Download iOS Client" => "Hlaða niður iOS hugbúnaði",
 "Password" => "Lykilorð",
 "Your password was changed" => "Lykilorði þínu hefur verið breytt",
 "Unable to change your password" => "Ekki tókst að breyta lykilorðinu þínu",
 "Current password" => "Núverandi lykilorð",
 "New password" => "Nýtt lykilorð",
-"show" => "sýna",
 "Change password" => "Breyta lykilorði",
 "Email" => "Netfang",
 "Your email address" => "Netfangið þitt",
@@ -49,15 +53,10 @@
 "Help translate" => "Hjálpa við þýðingu",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Notaðu þessa vefslóð til að tengjast ownCloud svæðinu þínu",
-"Version" => "Útgáfa",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Þróað af <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud samfélaginu</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">forrita kóðinn</a> er skráðu með <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Hópar",
 "Create" => "Búa til",
 "Default Storage" => "Sjálfgefin gagnageymsla",
 "Unlimited" => "Ótakmarkað",
 "Other" => "Annað",
-"Group Admin" => "Hópstjóri",
 "Storage" => "gagnapláss",
-"Default" => "Sjálfgefið",
-"Delete" => "Eyða"
+"Default" => "Sjálfgefið"
 );
diff --git a/settings/l10n/it.php b/settings/l10n/it.php
index 7f860f69edcb010a73e2f4861f44cc8f2b2abc70..700a336d2d227ab2628dab58b9f0ddc094127a28 100644
--- a/settings/l10n/it.php
+++ b/settings/l10n/it.php
@@ -24,7 +24,50 @@
 "Error" => "Errore",
 "Updated" => "Aggiornato",
 "Saving..." => "Salvataggio in corso...",
+"deleted" => "eliminati",
+"undo" => "annulla",
+"Unable to remove user" => "Impossibile rimuovere l'utente",
+"Groups" => "Gruppi",
+"Group Admin" => "Gruppi amministrati",
+"Delete" => "Elimina",
+"add group" => "aggiungi gruppo",
+"A valid username must be provided" => "Deve essere fornito un nome utente valido",
+"Error creating user" => "Errore durante la creazione dell'utente",
+"A valid password must be provided" => "Deve essere fornita una password valida",
 "__language_name__" => "Italiano",
+"Security Warning" => "Avviso di sicurezza",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "La cartella dei dati e i tuoi file sono probabilmente accessibili da Internet. Il file .htaccess fornito da ownCloud non funziona. Ti suggeriamo vivamente di configurare il server web in modo che la cartella dei dati non sia più accessibile o sposta tale cartella fuori dalla radice del sito.",
+"Setup Warning" => "Avviso di configurazione",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata.",
+"Please double check the <a href='%s'>installation guides</a>." => "Leggi attentamente le <a href='%s'>guide d'installazione</a>.",
+"Module 'fileinfo' missing" => "Modulo 'fileinfo' mancante",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Il modulo PHP 'fileinfo' non è presente. Consigliamo vivamente di abilitare questo modulo per ottenere risultati migliori con il rilevamento dei tipi MIME.",
+"Locale not working" => "Locale non funzionante",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Questo server ownCloud non può impostare la localizzazione a \"en_US.UTF-8\"/\"en_US.UTF8\". Ciò significa che potrebbero verificarsi dei problemi con alcuni caratteri nei nomi dei file. Consigliamo vivamente di installare i pacchetti necessari a supportare en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "Concessione Internet non funzionante",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Questo server ownCloud non ha una connessione a Internet funzionante. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. Anche l'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Ti suggeriamo di abilitare la connessione a Internet del server se desideri disporre di tutte le funzionalità di ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Esegui un'operazione con ogni pagina caricata",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php è registrato su un sevizio webcron. Invoca la pagina cron.php nella radice di ownCloud ogni minuto, tramite http.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Utilizza il servizio cron di sistema. Invoca il file cron.php nella cartella di ownCloud tramite un job ogni minuto.",
+"Sharing" => "Condivisione",
+"Enable Share API" => "Abilita API di condivisione",
+"Allow apps to use the Share API" => "Consenti alle applicazioni di utilizzare le API di condivisione",
+"Allow links" => "Consenti collegamenti",
+"Allow users to share items to the public with links" => "Consenti agli utenti di condividere pubblicamente elementi tramite collegamenti",
+"Allow resharing" => "Consenti la ri-condivisione",
+"Allow users to share items shared with them again" => "Consenti agli utenti di condividere a loro volta elementi condivisi da altri",
+"Allow users to share with anyone" => "Consenti agli utenti di condividere con chiunque",
+"Allow users to only share with users in their groups" => "Consenti agli utenti di condividere solo con utenti dei loro gruppi",
+"Security" => "Protezione",
+"Enforce HTTPS" => "Forza HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Obbliga i client a connettersi a ownCloud tramite una confessione cifrata.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Connettiti a questa istanza di ownCloud tramite HTTPS per abilitare o disabilitare la protezione SSL.",
+"Log" => "Log",
+"Log level" => "Livello di log",
+"More" => "Più",
+"Version" => "Versione",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunità di ownCloud</a>, il <a href=\"https://github.com/owncloud\" target=\"_blank\">codice sorgente</a> è licenziato nei termini della <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Aggiungi la tua applicazione",
 "More Apps" => "Altre applicazioni",
 "Select an App" => "Seleziona un'applicazione",
@@ -38,16 +81,13 @@
 "Bugtracker" => "Sistema di tracciamento bug",
 "Commercial Support" => "Supporto commerciale",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Hai utilizzato <strong>%s</strong> dei <strong>%s</strong> disponibili",
-"Clients" => "Client",
-"Download Desktop Clients" => "Scarica client desktop",
-"Download Android Client" => "Scarica client Android",
-"Download iOS Client" => "Scarica client iOS",
+"Get the apps to sync your files" => "Scarica le applicazioni per sincronizzare i tuoi file",
+"Show First Run Wizard again" => "Mostra nuovamente la procedura di primo avvio",
 "Password" => "Password",
 "Your password was changed" => "La tua password è cambiata",
 "Unable to change your password" => "Modifica password non riuscita",
 "Current password" => "Password attuale",
 "New password" => "Nuova password",
-"show" => "mostra",
 "Change password" => "Modifica password",
 "Display Name" => "Nome visualizzato",
 "Your display name was changed" => "Il tuo nome visualizzato è stato cambiato",
@@ -60,18 +100,13 @@
 "Help translate" => "Migliora la traduzione",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Usa questo indirizzo per connetterti al tuo ownCloud dal tuo gestore file",
-"Version" => "Versione",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunità di ownCloud</a>, il <a href=\"https://github.com/owncloud\" target=\"_blank\">codice sorgente</a> è licenziato nei termini della <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nome utente",
-"Groups" => "Gruppi",
 "Create" => "Crea",
 "Default Storage" => "Archiviazione predefinita",
 "Unlimited" => "Illimitata",
 "Other" => "Altro",
-"Group Admin" => "Gruppi amministrati",
 "Storage" => "Archiviazione",
 "change display name" => "cambia il nome visualizzato",
 "set new password" => "imposta una nuova password",
-"Default" => "Predefinito",
-"Delete" => "Elimina"
+"Default" => "Predefinito"
 );
diff --git a/settings/l10n/ja_JP.php b/settings/l10n/ja_JP.php
index d255b6703378bbd3f6ba77576637f64dd3aa1f12..9a4cf460d268ee2b9e1d8c5627343647838495a0 100644
--- a/settings/l10n/ja_JP.php
+++ b/settings/l10n/ja_JP.php
@@ -24,7 +24,50 @@
 "Error" => "エラー",
 "Updated" => "更新済み",
 "Saving..." => "保存中...",
+"deleted" => "削除",
+"undo" => "元に戻す",
+"Unable to remove user" => "ユーザを削除出来ません",
+"Groups" => "グループ",
+"Group Admin" => "グループ管理者",
+"Delete" => "削除",
+"add group" => "グループを追加",
+"A valid username must be provided" => "有効なユーザ名を指定する必要があります",
+"Error creating user" => "ユーザ作成エラー",
+"A valid password must be provided" => "有効なパスワードを指定する必要があります",
 "__language_name__" => "Japanese (日本語)",
+"Security Warning" => "セキュリティ警告",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "データディレクトリとファイルが恐らくインターネットからアクセスできるようになっています。ownCloudが提供する .htaccessファイルが機能していません。データディレクトリを全くアクセスできないようにするか、データディレクトリをウェブサーバのドキュメントルートの外に置くようにウェブサーバを設定することを強くお勧めします。 ",
+"Setup Warning" => "セットアップ警告",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "WebDAVインタフェースが動作していないと考えられるため、あなたのWEBサーバはまだファイルの同期を許可するように適切な設定がされていません。",
+"Please double check the <a href='%s'>installation guides</a>." => "<a href='%s'>インストールガイド</a>をよく確認してください。",
+"Module 'fileinfo' missing" => "モジュール 'fileinfo' が見つかりません",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "PHP のモジュール 'fileinfo' が見つかりません。mimeタイプの検出を精度良く行うために、このモジュールを有効にすることを強くお勧めします。",
+"Locale not working" => "ロケールが動作していません",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "この ownCloud サーバは、システムロケールを \"en_US.UTF-8\"/\"en_US.UTF8\" に設定できません。これは、ファイル名の特定の文字で問題が発生する可能性があることを意味しています。en_US.UTF-8/en_US.UTF8 をサポートするために、システムに必要なパッケージをインストールすることを強く推奨します。",
+"Internet connection not working" => "インターネット接続が動作していません",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "この ownCloud サーバには有効なインターネット接続がありません。これは、外部ストレージのマウント、更新の通知、サードパーティ製アプリのインストール、のようないくつかの機能が動作しないことを意味しています。リモートからファイルにアクセスしたり、通知メールを送信したりすることもできません。全ての機能を利用するためには、このサーバのインターネット接続を有効にすることを推奨します。",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "各ページの読み込み時にタスクを実行する",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php は webcron サービスに登録されています。owncloud のルートにある cron.php のページを http 経由で1分に1回呼び出して下さい。",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "システムの cron サービスを利用する。システムの cronjob を通して1分に1回 owncloud 内の cron.php ファイルを呼び出して下さい。",
+"Sharing" => "共有",
+"Enable Share API" => "共有APIを有効にする",
+"Allow apps to use the Share API" => "アプリからの共有APIの利用を許可する",
+"Allow links" => "リンクを許可する",
+"Allow users to share items to the public with links" => "リンクによりアイテムを公開することを許可する",
+"Allow resharing" => "再共有を許可する",
+"Allow users to share items shared with them again" => "ユーザが共有しているアイテムの再共有を許可する",
+"Allow users to share with anyone" => "ユーザが誰とでも共有することを許可する",
+"Allow users to only share with users in their groups" => "ユーザにグループ内のユーザとのみ共有を許可する",
+"Security" => "セキュリティ",
+"Enforce HTTPS" => "常にHTTPSを使用する",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "クライアントからownCloudへの接続を常に暗号化する",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "常にSSL接続を有効/無効にするために、HTTPS経由でこの ownCloud に接続して下さい。",
+"Log" => "ログ",
+"Log level" => "ログレベル",
+"More" => "詳細",
+"Version" => "バージョン",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>により開発されています、<a href=\"https://github.com/owncloud\" target=\"_blank\">ソースコード</a>ライセンスは、<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> ライセンスにより提供されています。",
 "Add your App" => "アプリを追加",
 "More Apps" => "さらにアプリを表示",
 "Select an App" => "アプリを選択してください",
@@ -38,16 +81,13 @@
 "Bugtracker" => "バグトラッカー",
 "Commercial Support" => "コマーシャルサポート",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "現在、<strong>%s</strong> / <strong>%s</strong> を利用しています",
-"Clients" => "顧客",
-"Download Desktop Clients" => "デスクトップクライアントをダウンロード",
-"Download Android Client" => "Androidクライアントをダウンロード",
-"Download iOS Client" => "iOSクライアントをダウンロード",
+"Get the apps to sync your files" => "あなたのファイルを同期するためのアプリを取得",
+"Show First Run Wizard again" => "初回実行ウィザードを再度表示する",
 "Password" => "パスワード",
 "Your password was changed" => "パスワードを変更しました",
 "Unable to change your password" => "パスワードを変更することができません",
 "Current password" => "現在のパスワード",
 "New password" => "新しいパスワード",
-"show" => "表示",
 "Change password" => "パスワードを変更",
 "Display Name" => "表示名",
 "Your display name was changed" => "あなたの表示名を変更しました",
@@ -60,18 +100,13 @@
 "Help translate" => "翻訳に協力する",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "ファイルマネージャでownCloudに接続する際はこのアドレスを利用してください",
-"Version" => "バージョン",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>により開発されています、<a href=\"https://github.com/owncloud\" target=\"_blank\">ソースコード</a>ライセンスは、<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> ライセンスにより提供されています。",
 "Login Name" => "ログイン名",
-"Groups" => "グループ",
 "Create" => "作成",
 "Default Storage" => "デフォルトストレージ",
 "Unlimited" => "無制限",
 "Other" => "その他",
-"Group Admin" => "グループ管理者",
 "Storage" => "ストレージ",
 "change display name" => "表示名を変更",
 "set new password" => "新しいパスワードを設定",
-"Default" => "デフォルト",
-"Delete" => "削除"
+"Default" => "デフォルト"
 );
diff --git a/settings/l10n/ka_GE.php b/settings/l10n/ka_GE.php
index 0fc42d427284711dac136c2c31803d2b27184f1f..27699d3f980d7e6db9e17f9097842bb17cb6c8cd 100644
--- a/settings/l10n/ka_GE.php
+++ b/settings/l10n/ka_GE.php
@@ -16,29 +16,29 @@
 "Enable" => "ჩართვა",
 "Error" => "შეცდომა",
 "Saving..." => "შენახვა...",
+"undo" => "დაბრუნება",
+"Groups" => "ჯგუფი",
+"Group Admin" => "ჯგუფის ადმინისტრატორი",
+"Delete" => "წაშლა",
 "__language_name__" => "__language_name__",
+"Security Warning" => "უსაფრთხოების გაფრთხილება",
 "Add your App" => "დაამატე შენი აპლიკაცია",
 "More Apps" => "უფრო მეტი აპლიკაციები",
 "Select an App" => "აირჩიეთ აპლიკაცია",
 "See application page at apps.owncloud.com" => "ნახეთ აპლიკაციის გვერდი apps.owncloud.com –ზე",
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ლიცენსირებულია <span class=\"author\"></span>",
 "Update" => "განახლება",
-"Clients" => "კლიენტები",
 "Password" => "პაროლი",
 "Your password was changed" => "თქვენი პაროლი შეიცვალა",
 "Unable to change your password" => "თქვენი პაროლი არ შეიცვალა",
 "Current password" => "მიმდინარე პაროლი",
 "New password" => "ახალი პაროლი",
-"show" => "გამოაჩინე",
 "Change password" => "პაროლის შეცვლა",
 "Email" => "იმეილი",
 "Your email address" => "თქვენი იმეილ მისამართი",
 "Fill in an email address to enable password recovery" => "შეავსეთ იმეილ მისამართის ველი პაროლის აღსადგენად",
 "Language" => "ენა",
 "Help translate" => "თარგმნის დახმარება",
-"Groups" => "ჯგუფი",
 "Create" => "შექმნა",
-"Other" => "სხვა",
-"Group Admin" => "ჯგუფის ადმინისტრატორი",
-"Delete" => "წაშლა"
+"Other" => "სხვა"
 );
diff --git a/settings/l10n/ko.php b/settings/l10n/ko.php
index a542b35feec05667595ffb80bbd11385a6601195..fb6f7e6228b9747fe8387d58b9eddeb60036ca0c 100644
--- a/settings/l10n/ko.php
+++ b/settings/l10n/ko.php
@@ -17,7 +17,17 @@
 "Enable" => "활성화",
 "Error" => "오류",
 "Saving..." => "저장 중...",
+"deleted" => "삭제",
+"undo" => "실행 취소",
+"Groups" => "그룹",
+"Group Admin" => "그룹 관리자",
+"Delete" => "삭제",
 "__language_name__" => "한국어",
+"Security Warning" => "보안 경고",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "데이터 디렉터리와 파일을 인터넷에서 접근할 수 있는 것 같습니다. ownCloud에서 제공한 .htaccess 파일이 작동하지 않습니다. 웹 서버를 다시 설정하여 데이터 디렉터리에 접근할 수 없도록 하거나 문서 루트 바깥쪽으로 옮기는 것을 추천합니다.",
+"More" => "더 중요함",
+"Version" => "버전",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 커뮤니티</a>에 의해서 개발되었습니다. <a href=\"https://github.com/owncloud\" target=\"_blank\">원본 코드</a>는 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>에 따라 사용이 허가됩니다.",
 "Add your App" => "앱 추가",
 "More Apps" => "더 많은 앱",
 "Select an App" => "앱 선택",
@@ -31,16 +41,12 @@
 "Bugtracker" => "버그 트래커",
 "Commercial Support" => "상업용 지원",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "현재 공간 <strong>%s</strong>/<strong>%s</strong>을(를) 사용 중입니다",
-"Clients" => "클라이언트",
-"Download Desktop Clients" => "데스크톱 클라이언트 다운로드",
-"Download Android Client" => "안드로이드 클라이언트 다운로드",
-"Download iOS Client" => "iOS 클라이언트 다운로드",
+"Show First Run Wizard again" => "첫 실행 마법사 다시 보이기",
 "Password" => "암호",
 "Your password was changed" => "암호가 변경되었습니다",
 "Unable to change your password" => "암호를 변경할 수 없음",
 "Current password" => "현재 암호",
 "New password" => "새 암호",
-"show" => "보이기",
 "Change password" => "암호 변경",
 "Display Name" => "표시 이름",
 "Email" => "이메일",
@@ -50,18 +56,13 @@
 "Help translate" => "번역 돕기",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "파일 관리자에서 ownCloud에 접속하려면 이 주소를 사용하십시오.",
-"Version" => "버전",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 커뮤니티</a>에 의해서 개발되었습니다. <a href=\"https://github.com/owncloud\" target=\"_blank\">원본 코드</a>는 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>에 따라 사용이 허가됩니다.",
 "Login Name" => "로그인 이름",
-"Groups" => "그룹",
 "Create" => "만들기",
 "Default Storage" => "기본 저장소",
 "Unlimited" => "무제한",
 "Other" => "기타",
-"Group Admin" => "그룹 관리자",
 "Storage" => "저장소",
 "change display name" => "표시 이름 변경",
 "set new password" => "새 암호 설정",
-"Default" => "기본값",
-"Delete" => "삭제"
+"Default" => "기본값"
 );
diff --git a/settings/l10n/lb.php b/settings/l10n/lb.php
index 5ef88f27891e36c7099b080cbdea9e2089fa6057..793ae3d4dcd58fb6f4bb994e9078ca0f338fb64f 100644
--- a/settings/l10n/lb.php
+++ b/settings/l10n/lb.php
@@ -9,25 +9,26 @@
 "Enable" => "Aschalten",
 "Error" => "Fehler",
 "Saving..." => "Speicheren...",
+"deleted" => "geläscht",
+"undo" => "réckgängeg man",
+"Groups" => "Gruppen",
+"Group Admin" => "Gruppen Admin",
+"Delete" => "Läschen",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Sécherheets Warnung",
 "Add your App" => "Setz deng App bei",
 "Select an App" => "Wiel eng Applikatioun aus",
 "See application page at apps.owncloud.com" => "Kuck dir d'Applicatioun's Säit op apps.owncloud.com un",
-"Clients" => "Clienten",
 "Password" => "Passwuert",
 "Unable to change your password" => "Konnt däin Passwuert net änneren",
 "Current password" => "Momentan 't Passwuert",
 "New password" => "Neit Passwuert",
-"show" => "weisen",
 "Change password" => "Passwuert änneren",
 "Email" => "Email",
 "Your email address" => "Deng Email Adress",
 "Fill in an email address to enable password recovery" => "Gëff eng Email Adress an fir d'Passwuert recovery ze erlaben",
 "Language" => "Sprooch",
 "Help translate" => "Hëllef iwwersetzen",
-"Groups" => "Gruppen",
 "Create" => "Erstellen",
-"Other" => "Aner",
-"Group Admin" => "Gruppen Admin",
-"Delete" => "Läschen"
+"Other" => "Aner"
 );
diff --git a/settings/l10n/lt_LT.php b/settings/l10n/lt_LT.php
index e514e7f775896a922e7e5f7baa1a76fdb83eef7b..177ce10dddb7b89022835a290d4cde0022d2aad2 100644
--- a/settings/l10n/lt_LT.php
+++ b/settings/l10n/lt_LT.php
@@ -10,27 +10,29 @@
 "Enable" => "Įjungti",
 "Error" => "Klaida",
 "Saving..." => "Saugoma..",
+"undo" => "anuliuoti",
+"Groups" => "Grupės",
+"Delete" => "Ištrinti",
 "__language_name__" => "Kalba",
+"Security Warning" => "Saugumo pranešimas",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Jūsų duomenų aplankalas ir Jūsų failai turbūt yra pasiekiami per internetą. Failas .htaccess, kuris duodamas, neveikia. Mes rekomenduojame susitvarkyti savo nustatymsu taip, kad failai nebūtų pasiekiami per internetą, arba persikelti juos kitur.",
+"More" => "Daugiau",
 "Add your App" => "Pridėti programėlę",
 "More Apps" => "Daugiau aplikacijų",
 "Select an App" => "Pasirinkite programą",
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>- autorius<span class=\"author\"></span>",
 "Update" => "Atnaujinti",
-"Clients" => "Klientai",
 "Password" => "Slaptažodis",
 "Your password was changed" => "Jūsų slaptažodis buvo pakeistas",
 "Unable to change your password" => "Neįmanoma pakeisti slaptažodžio",
 "Current password" => "Dabartinis slaptažodis",
 "New password" => "Naujas slaptažodis",
-"show" => "rodyti",
 "Change password" => "Pakeisti slaptažodį",
 "Email" => "El. paštas",
 "Your email address" => "Jūsų el. pašto adresas",
 "Fill in an email address to enable password recovery" => "Pamiršto slaptažodžio atkūrimui įveskite savo el. pašto adresą",
 "Language" => "Kalba",
 "Help translate" => "Padėkite išversti",
-"Groups" => "Grupės",
 "Create" => "Sukurti",
-"Other" => "Kita",
-"Delete" => "Ištrinti"
+"Other" => "Kita"
 );
diff --git a/settings/l10n/lv.php b/settings/l10n/lv.php
index 03977206f77bfbd4865c5e9c3a6ed77cbd0cb6c2..464633132f243f3bc97bd95e7d0b0dbb2d567b27 100644
--- a/settings/l10n/lv.php
+++ b/settings/l10n/lv.php
@@ -24,7 +24,50 @@
 "Error" => "Kļūda",
 "Updated" => "Atjaunināta",
 "Saving..." => "Saglabā...",
+"deleted" => "izdzests",
+"undo" => "atsaukt",
+"Unable to remove user" => "Nevar izņemt lietotāju",
+"Groups" => "Grupas",
+"Group Admin" => "Grupas administrators",
+"Delete" => "Dzēst",
+"add group" => "pievienot grupu",
+"A valid username must be provided" => "Jānorāda derīgs lietotājvārds",
+"Error creating user" => "Kļūda, veidojot lietotāju",
+"A valid password must be provided" => "Jānorāda derīga parole",
 "__language_name__" => "__valodas_nosaukums__",
+"Security Warning" => "Brīdinājums par drošību",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Jūsu datu direktorija un datnes visdrīzāk ir pieejamas no interneta. ownCloud nodrošinātā .htaccess datne nedarbojas. Mēs iesakām konfigurēt serveri tā, lai datu direktorija vairs nebūtu pieejama, vai arī pārvietojiet datu direktoriju ārpus tīmekļa servera dokumentu saknes.",
+"Setup Warning" => "Iestatīšanas brīdinājums",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Jūsu serveris vēl nav pareizi iestatīts, lai ļautu sinhronizēt datnes, jo izskatās, ka WebDAV saskarne ir salauzta.",
+"Please double check the <a href='%s'>installation guides</a>." => "Lūdzu, vēlreiz pārbaudiet <a href='%s'>instalēšanas palīdzību</a>.",
+"Module 'fileinfo' missing" => "Trūkst modulis “fileinfo”",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Trūkst PHP modulis “fileinfo”. Mēs iesakām to aktivēt, lai pēc iespējas labāk noteiktu mime tipus.",
+"Locale not working" => "Lokāle nestrādā",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Šis ownCloud serveris nevar iestatīt sistēmas lokāli uz \"en_US.UTF-8\"/\"en_US.UTF8\". Tas nozīmē, ka varētu būt problēmas ar noteiktām rakstzīmēm datņu nosaukumos. Mēs iesakām instalēt vajadzīgās pakotnes savā sistēmā en_US.UTF-8/en_US.UTF8 atbalstam.",
+"Internet connection not working" => "Interneta savienojums nedarbojas",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Šim ownCloud serverim nav strādājoša interneta savienojuma. Tas nozīmē, ka dažas no šīm iespējām, piemēram, ārējas krātuves montēšana, paziņošana par atjauninājumiem vai trešās puses programmatūras instalēšana nestrādā. Varētu nestrādāt attālināta piekļuve pie datnēm un paziņojumu e-pasta vēstuļu sūtīšana. Mēs iesakām aktivēt interneta savienojumu šim serverim, ja vēlaties visas ownCloud iespējas.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Izpildīt vienu uzdevumu ar katru ielādēto lapu",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php ir reģistrēts webcron servisā. Izsauciet cron.php lapu ownCloud saknē caur http reizi sekundē.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Izmantot sistēmas cron servisu. Izsauciet cron.php datni ownCloud mapē caur sistēmas cornjob reizi minūtē.",
+"Sharing" => "Dalīšanās",
+"Enable Share API" => "Aktivēt koplietošanas API",
+"Allow apps to use the Share API" => "Ļauj lietotnēm izmantot koplietošanas API",
+"Allow links" => "Atļaut saites",
+"Allow users to share items to the public with links" => "Ļaut lietotājiem publiski dalīties ar vienumiem, izmantojot saites",
+"Allow resharing" => "Atļaut atkārtotu koplietošanu",
+"Allow users to share items shared with them again" => "Ļaut lietotājiem dalīties ar vienumiem atkārtoti",
+"Allow users to share with anyone" => "Ļaut lietotājiem dalīties ar visiem",
+"Allow users to only share with users in their groups" => "Ļaut lietotājiem dalīties ar lietotājiem to grupās",
+"Security" => "Drošība",
+"Enforce HTTPS" => "Uzspiest HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Piespiež klientus savienoties ar ownCloud caur šifrētu savienojumu.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Lūdzu, savienojieties ar šo ownCloud pakalpojumu caur HTTPS, lai aktivētu vai deaktivētu SSL piemērošanu.",
+"Log" => "Žurnāls",
+"Log level" => "Žurnāla līmenis",
+"More" => "Vairāk",
+"Version" => "Versija",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Izstrādājusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kopiena</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">pirmkodu</a>kurš ir licencēts zem <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Pievieno savu lietotni",
 "More Apps" => "Vairāk lietotņu",
 "Select an App" => "Izvēlies lietotni",
@@ -38,16 +81,13 @@
 "Bugtracker" => "Kļūdu sekotājs",
 "Commercial Support" => "Komerciālais atbalsts",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Jūs lietojat <strong>%s</strong> no pieejamajiem <strong>%s</strong>",
-"Clients" => "Klienti",
-"Download Desktop Clients" => "Lejupielādēt darbvirsmas klientus",
-"Download Android Client" => "Lejupielādēt Android klientu",
-"Download iOS Client" => "Lejupielādēt iOS klientu",
+"Get the apps to sync your files" => "Saņem lietotnes, lai sinhronizētu savas datnes",
+"Show First Run Wizard again" => "Vēlreiz rādīt pirmās palaišanas vedni",
 "Password" => "Parole",
 "Your password was changed" => "Jūru parole tika nomainīta",
 "Unable to change your password" => "Nevar nomainīt jūsu paroli",
 "Current password" => "Pašreizējā parole",
 "New password" => "Jauna parole",
-"show" => "parādīt",
 "Change password" => "Mainīt paroli",
 "Display Name" => "Redzamais vārds",
 "Your display name was changed" => "Jūsu redzamais vārds tika mainīts",
@@ -60,18 +100,13 @@
 "Help translate" => "Palīdzi tulkot",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Izmanto šo adresi, lai, izmantojot datņu pārvaldnieku, savienotos ar savu ownCloud",
-"Version" => "Versija",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Izstrādājusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kopiena</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">pirmkodu</a>kurš ir licencēts zem <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Ierakstīšanās vārds",
-"Groups" => "Grupas",
 "Create" => "Izveidot",
 "Default Storage" => "Noklusējuma krātuve",
 "Unlimited" => "Neierobežota",
 "Other" => "Cits",
-"Group Admin" => "Grupas administrators",
 "Storage" => "Krātuve",
 "change display name" => "mainīt redzamo vārdu",
 "set new password" => "iestatīt jaunu paroli",
-"Default" => "Noklusējuma",
-"Delete" => "Dzēst"
+"Default" => "Noklusējuma"
 );
diff --git a/settings/l10n/mk.php b/settings/l10n/mk.php
index aba63bc0575739f07ed516af73f569729c82e321..1994c2ab67e156312aa8b5865bd78723b619aa03 100644
--- a/settings/l10n/mk.php
+++ b/settings/l10n/mk.php
@@ -17,7 +17,16 @@
 "Enable" => "Овозможи",
 "Error" => "Грешка",
 "Saving..." => "Снимам...",
+"undo" => "врати",
+"Groups" => "Групи",
+"Group Admin" => "Администратор на група",
+"Delete" => "Избриши",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Безбедносно предупредување",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Вашата папка со податоци и датотеките е најверојатно достапна од интернет. .htaccess датотеката што ја овозможува ownCloud не фунционира. Силно препорачуваме да го исконфигурирате вашиот сервер за вашата папка со податоци не е достапна преку интернетт или преместете ја надвор од коренот на веб серверот.",
+"More" => "Повеќе",
+"Version" => "Верзија",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Развој од <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud заедницата</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворниот код</a> е лиценциран со<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Додадете ја Вашата апликација",
 "More Apps" => "Повеќе аппликации",
 "Select an App" => "Избери аппликација",
@@ -30,16 +39,11 @@
 "Forum" => "Форум",
 "Commercial Support" => "Комерцијална подршка",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Имате искористено <strong>%s</strong> од достапните <strong>%s</strong>",
-"Clients" => "Клиенти",
-"Download Desktop Clients" => "Преземи клиенти за десктоп",
-"Download Android Client" => "Преземи клиент за Андроид",
-"Download iOS Client" => "Преземи iOS клиент",
 "Password" => "Лозинка",
 "Your password was changed" => "Вашата лозинка беше променета.",
 "Unable to change your password" => "Вашата лозинка неможе да се смени",
 "Current password" => "Моментална лозинка",
 "New password" => "Нова лозинка",
-"show" => "прикажи",
 "Change password" => "Смени лозинка",
 "Email" => "Е-пошта",
 "Your email address" => "Вашата адреса за е-пошта",
@@ -48,11 +52,6 @@
 "Help translate" => "Помогни во преводот",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Користете ја оваа адреса да ",
-"Version" => "Верзија",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Развој од <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud заедницата</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворниот код</a> е лиценциран со<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Групи",
 "Create" => "Создај",
-"Other" => "Останато",
-"Group Admin" => "Администратор на група",
-"Delete" => "Избриши"
+"Other" => "Останато"
 );
diff --git a/settings/l10n/ms_MY.php b/settings/l10n/ms_MY.php
index 95c1d01e3b51f01f7c7fe1b0257212dc9624e619..a0022d5ba3124716fd47834bb8952a7d6128da92 100644
--- a/settings/l10n/ms_MY.php
+++ b/settings/l10n/ms_MY.php
@@ -8,25 +8,25 @@
 "Enable" => "Aktif",
 "Error" => "Ralat",
 "Saving..." => "Simpan...",
+"deleted" => "dihapus",
+"Groups" => "Kumpulan",
+"Delete" => "Padam",
 "__language_name__" => "_nama_bahasa_",
+"Security Warning" => "Amaran keselamatan",
 "Add your App" => "Tambah apps anda",
 "Select an App" => "Pilih aplikasi",
 "See application page at apps.owncloud.com" => "Lihat halaman applikasi di apps.owncloud.com",
 "Update" => "Kemaskini",
-"Clients" => "klien",
 "Password" => "Kata laluan ",
 "Unable to change your password" => "Gagal mengubah kata laluan anda ",
 "Current password" => "Kata laluan semasa",
 "New password" => "Kata laluan baru",
-"show" => "Papar",
 "Change password" => "Ubah kata laluan",
 "Email" => "Emel",
 "Your email address" => "Alamat emel anda",
 "Fill in an email address to enable password recovery" => "Isi alamat emel anda untuk membolehkan pemulihan kata laluan",
 "Language" => "Bahasa",
 "Help translate" => "Bantu terjemah",
-"Groups" => "Kumpulan",
 "Create" => "Buat",
-"Other" => "Lain",
-"Delete" => "Padam"
+"Other" => "Lain"
 );
diff --git a/settings/l10n/nb_NO.php b/settings/l10n/nb_NO.php
index caf0a5518632155c001eb91d827957df8c691e59..708e78bf4b8585412ff90f8aa67197fab54d689b 100644
--- a/settings/l10n/nb_NO.php
+++ b/settings/l10n/nb_NO.php
@@ -16,7 +16,15 @@
 "Enable" => "Slå på",
 "Error" => "Feil",
 "Saving..." => "Lagrer...",
+"deleted" => "slettet",
+"undo" => "angre",
+"Groups" => "Grupper",
+"Group Admin" => "Gruppeadministrator",
+"Delete" => "Slett",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Sikkerhetsadvarsel",
+"More" => "Mer",
+"Version" => "Versjon",
 "Add your App" => "Legg til din App",
 "More Apps" => "Flere Apps",
 "Select an App" => "Velg en app",
@@ -26,16 +34,11 @@
 "Administrator Documentation" => "Administratordokumentasjon",
 "Commercial Support" => "Kommersiell støtte",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Du har brukt <strong>%s</strong> av tilgjengelig <strong>%s</strong>",
-"Clients" => "Klienter",
-"Download Desktop Clients" => "Last ned skrivebordsklienter",
-"Download Android Client" => "Last ned Android-klient",
-"Download iOS Client" => "Last ned iOS-klient",
 "Password" => "Passord",
 "Your password was changed" => "Passord har blitt endret",
 "Unable to change your password" => "Kunne ikke endre passordet ditt",
 "Current password" => "Nåværende passord",
 "New password" => "Nytt passord",
-"show" => "vis",
 "Change password" => "Endre passord",
 "Email" => "E-post",
 "Your email address" => "Din e-postadresse",
@@ -43,10 +46,6 @@
 "Language" => "Språk",
 "Help translate" => "Bidra til oversettelsen",
 "WebDAV" => "WebDAV",
-"Version" => "Versjon",
-"Groups" => "Grupper",
 "Create" => "Opprett",
-"Other" => "Annet",
-"Group Admin" => "Gruppeadministrator",
-"Delete" => "Slett"
+"Other" => "Annet"
 );
diff --git a/settings/l10n/nl.php b/settings/l10n/nl.php
index 6c256b9388db5f0878469a2d20c17ec7b45621f5..b8e6491cc5a7b63f24dae5504622a2e55205fba1 100644
--- a/settings/l10n/nl.php
+++ b/settings/l10n/nl.php
@@ -24,7 +24,50 @@
 "Error" => "Fout",
 "Updated" => "Bijgewerkt",
 "Saving..." => "Aan het bewaren.....",
+"deleted" => "verwijderd",
+"undo" => "ongedaan maken",
+"Unable to remove user" => "Kon gebruiker niet verwijderen",
+"Groups" => "Groepen",
+"Group Admin" => "Groep beheerder",
+"Delete" => "verwijderen",
+"add group" => "toevoegen groep",
+"A valid username must be provided" => "Er moet een geldige gebruikersnaam worden opgegeven",
+"Error creating user" => "Fout bij aanmaken gebruiker",
+"A valid password must be provided" => "Er moet een geldig wachtwoord worden opgegeven",
 "__language_name__" => "Nederlands",
+"Security Warning" => "Beveiligingswaarschuwing",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Uw data is waarschijnlijk toegankelijk vanaf net internet. Het  .htaccess bestand dat ownCloud levert werkt niet goed. U wordt aangeraden om de configuratie van uw webserver zodanig aan te passen dat de data folders niet meer publiekelijk toegankelijk zijn. U kunt ook de data folder verplaatsen naar een folder buiten de webserver document folder.",
+"Setup Warning" => "Instellingswaarschuwing",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Uw webserver is nog niet goed ingesteld voor bestandssynchronisatie omdat de WebDAV interface verbroken lijkt.",
+"Please double check the <a href='%s'>installation guides</a>." => "Conntroleer de <a href='%s'>installatie handleiding</a> goed.",
+"Module 'fileinfo' missing" => "Module 'fileinfo' ontbreekt",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "De PHP module 'fileinfo' ontbreekt. We adviseren met klem om deze module te activeren om de beste resultaten te bereiken voor mime-type detectie.",
+"Locale not working" => "Taalbestand werkt niet",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Deze ownCloud server kan de systeemtaal niet instellen op \"en_US.UTF-8\"/\"en_US.UTF8\". Er zijn vermoedelijk problemen met bepaalde tekens in de bestandsnamen. We adviseren om de voor ondersteuning van en_US.UTF-8/en_US.UTF8 vereiste pakketten op uw systeem te installeren.",
+"Internet connection not working" => "Internet verbinding werkt niet",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Deze ownCloud server heeft geen actieve internet verbinding. dat betekent dat sommige functies, zoals aankoppelen van externe opslag, notificaties over updates of installatie van apps van 3e partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internet verbinding voor deze server in te schakelen als u alle functies van ownCloud wilt gebruiken.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Bij laden van elke pagina één taak uitvoeren",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php is geregistreerd bij een webcron service. Roep eens per minuut de cron.php pagina aan over http in de ownCloud root.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Gebruik de systems cron service. Roep eens per minuut de cron.php file in de ownCloud map via een systeem cronjob.",
+"Sharing" => "Delen",
+"Enable Share API" => "Activeren Share API",
+"Allow apps to use the Share API" => "Apps toestaan de Share API te gebruiken",
+"Allow links" => "Toestaan links",
+"Allow users to share items to the public with links" => "Toestaan dat gebruikers objecten met links delen met anderen",
+"Allow resharing" => "Toestaan opnieuw delen",
+"Allow users to share items shared with them again" => "Toestaan dat gebruikers objecten die anderen met hun gedeeld hebben zelf ook weer delen met anderen",
+"Allow users to share with anyone" => "Toestaan dat gebruikers met iedereen delen",
+"Allow users to only share with users in their groups" => "Instellen dat gebruikers alleen met leden binnen hun groepen delen",
+"Security" => "Beveiliging",
+"Enforce HTTPS" => "Afdwingen HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Afdwingen dat de clients alleen via versleutelde verbinding contact maken met ownCloud.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Maak via HTTPS verbinding met deze ownCloud inrichting om het afdwingen van gebruik van SSL te activeren of deactiveren.",
+"Log" => "Log",
+"Log level" => "Log niveau",
+"More" => "Meer",
+"Version" => "Versie",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud gemeenschap</a>, de <a href=\"https://github.com/owncloud\" target=\"_blank\">bron code</a> is gelicenseerd onder de <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "App toevoegen",
 "More Apps" => "Meer apps",
 "Select an App" => "Selecteer een app",
@@ -38,16 +81,13 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Commerciële ondersteuning",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "U heeft <strong>%s</strong> van de <strong>%s</strong>  beschikbaren gebruikt",
-"Clients" => "Klanten",
-"Download Desktop Clients" => "Download Desktop Clients",
-"Download Android Client" => "Download Android Client",
-"Download iOS Client" => "Download iOS Client",
+"Get the apps to sync your files" => "Download de apps om bestanden te synchen",
+"Show First Run Wizard again" => "Toon de Eerste start Wizard opnieuw",
 "Password" => "Wachtwoord",
 "Your password was changed" => "Je wachtwoord is veranderd",
 "Unable to change your password" => "Niet in staat om uw wachtwoord te wijzigen",
 "Current password" => "Huidig wachtwoord",
 "New password" => "Nieuw wachtwoord",
-"show" => "weergeven",
 "Change password" => "Wijzig wachtwoord",
 "Display Name" => "Weergavenaam",
 "Your display name was changed" => "Uw weergavenaam is gewijzigd",
@@ -60,18 +100,13 @@
 "Help translate" => "Help met vertalen",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Gebruik dit adres om te verbinden met uw ownCloud in uw bestandsbeheer",
-"Version" => "Versie",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud gemeenschap</a>, de <a href=\"https://github.com/owncloud\" target=\"_blank\">bron code</a> is gelicenseerd onder de <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Inlognaam",
-"Groups" => "Groepen",
 "Create" => "Creëer",
 "Default Storage" => "Default opslag",
 "Unlimited" => "Ongelimiteerd",
 "Other" => "Andere",
-"Group Admin" => "Groep beheerder",
 "Storage" => "Opslag",
 "change display name" => "wijzig weergavenaam",
 "set new password" => "Instellen nieuw wachtwoord",
-"Default" => "Default",
-"Delete" => "verwijderen"
+"Default" => "Default"
 );
diff --git a/settings/l10n/nn_NO.php b/settings/l10n/nn_NO.php
index 8faa2d02caaf5d3d76c10cde40d8405d255cb0b7..cee3ecaeac485281ff4f59e854489f9bbea7ea64 100644
--- a/settings/l10n/nn_NO.php
+++ b/settings/l10n/nn_NO.php
@@ -8,23 +8,21 @@
 "Disable" => "Slå av",
 "Enable" => "Slå på",
 "Error" => "Feil",
+"Groups" => "Grupper",
+"Delete" => "Slett",
 "__language_name__" => "Nynorsk",
 "Select an App" => "Vel ein applikasjon",
 "Update" => "Oppdater",
-"Clients" => "Klientar",
 "Password" => "Passord",
 "Unable to change your password" => "Klarte ikkje å endra passordet",
 "Current password" => "Passord",
 "New password" => "Nytt passord",
-"show" => "vis",
 "Change password" => "Endra passord",
 "Email" => "Epost",
 "Your email address" => "Din epost addresse",
 "Fill in an email address to enable password recovery" => "Fyll inn din e-post addresse for og kunne motta passord tilbakestilling",
 "Language" => "Språk",
 "Help translate" => "Hjelp oss å oversett",
-"Groups" => "Grupper",
 "Create" => "Lag",
-"Other" => "Anna",
-"Delete" => "Slett"
+"Other" => "Anna"
 );
diff --git a/settings/l10n/oc.php b/settings/l10n/oc.php
index 9accb3acbabdd83fb1d2bde1c4792c8b82f8ba54..589ccb09bd4641348de75fafaf19d8921a6963fc 100644
--- a/settings/l10n/oc.php
+++ b/settings/l10n/oc.php
@@ -16,27 +16,28 @@
 "Enable" => "Activa",
 "Error" => "Error",
 "Saving..." => "Enregistra...",
+"deleted" => "escafat",
+"undo" => "defar",
+"Groups" => "Grops",
+"Group Admin" => "Grop Admin",
+"Delete" => "Escafa",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Avertiment de securitat",
 "Add your App" => "Ajusta ton App",
 "Select an App" => "Selecciona una applicacion",
 "See application page at apps.owncloud.com" => "Agacha la pagina d'applications en cò de apps.owncloud.com",
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licençiat per <span class=\"author\"></span>",
-"Clients" => "Practica",
 "Password" => "Senhal",
 "Your password was changed" => "Ton senhal a cambiat",
 "Unable to change your password" => "Pas possible de cambiar ton senhal",
 "Current password" => "Senhal en cors",
 "New password" => "Senhal novèl",
-"show" => "mòstra",
 "Change password" => "Cambia lo senhal",
 "Email" => "Corrièl",
 "Your email address" => "Ton adreiça de corrièl",
 "Fill in an email address to enable password recovery" => "Emplena una adreiça de corrièl per permetre lo mandadís del senhal perdut",
 "Language" => "Lenga",
 "Help translate" => "Ajuda a la revirada",
-"Groups" => "Grops",
 "Create" => "Crea",
-"Other" => "Autres",
-"Group Admin" => "Grop Admin",
-"Delete" => "Escafa"
+"Other" => "Autres"
 );
diff --git a/settings/l10n/pl.php b/settings/l10n/pl.php
index a06b39e7bd2ba687463fd87f5aad84eabc9413ca..c2aa8a2b33896f6d7e8a78f15f0532afbf28f361 100644
--- a/settings/l10n/pl.php
+++ b/settings/l10n/pl.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nie mogę załadować listy aplikacji",
 "Authentication error" => "Błąd uwierzytelniania",
+"Unable to change display name" => "Nie można zmienić nazwy wyświetlanej",
 "Group already exists" => "Grupa już istnieje",
 "Unable to add group" => "Nie można dodać grupy",
 "Could not enable app. " => "Nie można włączyć aplikacji.",
@@ -13,11 +14,27 @@
 "Admins can't remove themself from the admin group" => "Administratorzy nie mogą usunąć się sami z grupy administratorów.",
 "Unable to add user to group %s" => "Nie można dodać użytkownika do grupy %s",
 "Unable to remove user from group %s" => "Nie można usunąć użytkownika z grupy %s",
+"Couldn't update app." => "Nie można uaktualnić aplikacji",
+"Update to {appversion}" => "Aktualizacja do {appversion}",
 "Disable" => "Wyłącz",
 "Enable" => "Włącz",
+"Please wait...." => "Prosze czekać...",
+"Updating...." => "Aktualizacja w toku...",
+"Error while updating app" => "Błąd podczas aktualizacji aplikacji",
 "Error" => "Błąd",
+"Updated" => "Zaktualizowano",
 "Saving..." => "Zapisywanie...",
+"deleted" => "skasuj",
+"undo" => "wróć",
+"Groups" => "Grupy",
+"Group Admin" => "Grupa Admin",
+"Delete" => "Usuń",
 "__language_name__" => "Polski",
+"Security Warning" => "Ostrzeżenie o zabezpieczeniach",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Katalog danych (data) i pliki są prawdopodobnie dostępnego z Internetu. Sprawdź plik .htaccess oraz konfigurację serwera (hosta). Sugerujemy, skonfiguruj swój serwer w taki sposób, żeby dane katalogu nie były dostępne lub przenieść katalog danych spoza głównego dokumentu webserwera.",
+"More" => "Więcej",
+"Version" => "Wersja",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Stworzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Dodaj aplikacje",
 "More Apps" => "Więcej aplikacji",
 "Select an App" => "Zaznacz aplikacje",
@@ -31,17 +48,18 @@
 "Bugtracker" => "Zgłaszanie błędów",
 "Commercial Support" => "Wsparcie komercyjne",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Korzystasz z <strong>%s</strong> z dostępnych <strong>%s</strong>",
-"Clients" => "Klienci",
-"Download Desktop Clients" => "Pobierz klienta dla Komputera",
-"Download Android Client" => "Pobierz klienta dla Androida",
-"Download iOS Client" => "Pobierz klienta dla iOS",
+"Get the apps to sync your files" => "Pobierz aplikacje żeby synchronizować swoje pliki",
+"Show First Run Wizard again" => "Uruchom ponownie kreatora pierwszego uruchomienia",
 "Password" => "Hasło",
 "Your password was changed" => "Twoje hasło zostało zmienione",
 "Unable to change your password" => "Nie można zmienić hasła",
 "Current password" => "Bieżące hasło",
 "New password" => "Nowe hasło",
-"show" => "Wyświetlanie",
 "Change password" => "Zmień hasło",
+"Display Name" => "Wyświetlana nazwa",
+"Your display name was changed" => "Twoja nazwa wyświetlana została zmieniona",
+"Unable to change your display name" => "Nie można zmianić wyświetlanej nazwy",
+"Change display name" => "Zmiana wyświetlanej nazwy",
 "Email" => "E-mail",
 "Your email address" => "Adres e-mail użytkownika",
 "Fill in an email address to enable password recovery" => "Proszę wprowadzić adres e-mail, aby uzyskać możliwość odzyskania hasła",
@@ -49,15 +67,13 @@
 "Help translate" => "Pomóż w tłumaczeniu",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Użyj tego adresu aby podłączyć zasób ownCloud w menedżerze plików",
-"Version" => "Wersja",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Stworzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Grupy",
+"Login Name" => "Login",
 "Create" => "Utwórz",
 "Default Storage" => "Domyślny magazyn",
 "Unlimited" => "Bez limitu",
 "Other" => "Inne",
-"Group Admin" => "Grupa Admin",
 "Storage" => "Magazyn",
-"Default" => "Domyślny",
-"Delete" => "Usuń"
+"change display name" => "zmień nazwę wyświetlaną",
+"set new password" => "zmień hasło",
+"Default" => "Domyślny"
 );
diff --git a/settings/l10n/pt_BR.php b/settings/l10n/pt_BR.php
index 5a8281446db402115b330e082318c9ae177e2361..700bafc8153e90d2c8f5c1d1ddc3832ac5b20947 100644
--- a/settings/l10n/pt_BR.php
+++ b/settings/l10n/pt_BR.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Não foi possível carregar lista da App Store",
 "Authentication error" => "Erro de autenticação",
+"Unable to change display name" => "Impossível alterar nome de exibição",
 "Group already exists" => "Grupo já existe",
 "Unable to add group" => "Não foi possível adicionar grupo",
 "Could not enable app. " => "Não foi possível habilitar aplicativo.",
@@ -13,11 +14,60 @@
 "Admins can't remove themself from the admin group" => "Admins não podem se remover do grupo admin",
 "Unable to add user to group %s" => "Não foi possível adicionar usuário ao grupo %s",
 "Unable to remove user from group %s" => "Não foi possível remover usuário do grupo %s",
+"Couldn't update app." => "Não foi possível atualizar o app.",
+"Update to {appversion}" => "Atualizar para {appversion}",
 "Disable" => "Desabilitar",
 "Enable" => "Habilitar",
+"Please wait...." => "Por favor, aguarde...",
+"Updating...." => "Atualizando...",
+"Error while updating app" => "Erro ao atualizar aplicativo",
 "Error" => "Erro",
+"Updated" => "Atualizado",
 "Saving..." => "Guardando...",
+"deleted" => "excluído",
+"undo" => "desfazer",
+"Unable to remove user" => "Impossível remover usuário",
+"Groups" => "Grupos",
+"Group Admin" => "Grupo Administrativo",
+"Delete" => "Excluir",
+"add group" => "adicionar grupo",
+"A valid username must be provided" => "Forneça um nome de usuário válido",
+"Error creating user" => "Erro ao criar usuário",
+"A valid password must be provided" => "Forneça uma senha válida",
 "__language_name__" => "Português (Brasil)",
+"Security Warning" => "Aviso de Segurança",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Seu diretório de dados e seus arquivos estão, provavelmente, acessíveis a partir da internet. O .htaccess que o ownCloud fornece não está funcionando. Nós sugerimos que você configure o seu servidor web de uma forma que o diretório de dados esteja mais acessível ou que você mova o diretório de dados para fora da raiz do servidor web.",
+"Setup Warning" => "Aviso de Configuração",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Seu servidor web não está configurado corretamente para permitir sincronização de arquivos porque a interface WebDAV parece estar quebrada.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor, confira os <a href='%s'>guias de instalação</a>.",
+"Module 'fileinfo' missing" => "Módulo 'fileinfo' faltando",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "O módulo PHP 'fileinfo' está faltando. Recomendamos que ative este módulo para obter uma melhor detecção do tipo de mídia (mime-type).",
+"Locale not working" => "Localização não funcionando",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Este servidor ownCloud não pode definir a localização do sistema para \"en_US.UTF-8\"/\"en_US.UTF8\". Isto significa que deve haver problemas com certos caracteres em nomes de arquivos. Sugerimos que instale os pacotes necessários no seu sistema para suportar en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "Sem conexão com a internet",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Este servidor ownCloud não tem conexão com a internet. Isto significa que alguns dos recursos como montar armazenamento externo, notificar atualizações ou instalar aplicativos de terceiros não funcionam. Acesso remoto a arquivos e envio de e-mails de notificação podem também não funcionar. Sugerimos que habilite a conexão com a internet neste servidor se quiser usufruir de todos os recursos do ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Execute uma tarefa com cada página carregada",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php está registrado no serviço webcron. Chame a página cron.php na raíz do owncloud a cada minuto por http.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Usar serviço de cron do sistema. Chama o arquivo cron.php na pasta owncloud via cronjob do sistema a cada minuto.",
+"Sharing" => "Compartilhamento",
+"Enable Share API" => "Habilitar API de Compartilhamento",
+"Allow apps to use the Share API" => "Permitir que aplicativos usem a API de Compartilhamento",
+"Allow links" => "Permitir links",
+"Allow users to share items to the public with links" => "Permitir que usuários compartilhem itens com o público usando links",
+"Allow resharing" => "Permitir recompartilhamento",
+"Allow users to share items shared with them again" => "Permitir que usuários compartilhem novamente itens compartilhados com eles",
+"Allow users to share with anyone" => "Permitir que usuários compartilhem com qualquer um",
+"Allow users to only share with users in their groups" => "Permitir que usuários compartilhem somente com usuários em seus grupos",
+"Security" => "Segurança",
+"Enforce HTTPS" => "Forçar HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Força o cliente a conectar-se ao ownCloud por uma conexão criptografada.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Por favor, conecte-se a esta instância do ownCloud via HTTPS para habilitar ou desabilitar 'Forçar SSL'.",
+"Log" => "Registro",
+"Log level" => "Nível de registro",
+"More" => "Mais",
+"Version" => "Versão",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Adicione seu Aplicativo",
 "More Apps" => "Mais Apps",
 "Select an App" => "Selecione um Aplicativo",
@@ -28,20 +78,21 @@
 "Administrator Documentation" => "Documentação de Administrador",
 "Online Documentation" => "Documentação Online",
 "Forum" => "Fórum",
+"Bugtracker" => "Rastreador de Bugs",
 "Commercial Support" => "Suporte Comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Você usou <strong>%s</strong> do seu espaço de <strong>%s</strong>",
-"Clients" => "Clientes",
-"Download Desktop Clients" => "Baixar Clientes Desktop",
-"Download Android Client" => "Baixar Cliente Android",
-"Download iOS Client" => "Baixar Cliente iOS",
+"Get the apps to sync your files" => "Faça com que os apps sincronize seus arquivos",
+"Show First Run Wizard again" => "Mostrar este Assistente de novo",
 "Password" => "Senha",
 "Your password was changed" => "Sua senha foi alterada",
 "Unable to change your password" => "Não é possivel alterar a sua senha",
 "Current password" => "Senha atual",
 "New password" => "Nova senha",
-"show" => "mostrar",
 "Change password" => "Alterar senha",
 "Display Name" => "Nome de Exibição",
+"Your display name was changed" => "Seu nome de exibição foi alterado",
+"Unable to change your display name" => "Impossível alterar seu nome de exibição",
+"Change display name" => "Alterar nome de exibição",
 "Email" => "E-mail",
 "Your email address" => "Seu endereço de e-mail",
 "Fill in an email address to enable password recovery" => "Preencha um endereço de e-mail para habilitar a recuperação de senha",
@@ -49,16 +100,13 @@
 "Help translate" => "Ajude a traduzir",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Usar este endereço para conectar-se ao seu ownCloud no seu gerenciador de arquivos",
-"Version" => "Versão",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nome de Login",
-"Groups" => "Grupos",
 "Create" => "Criar",
 "Default Storage" => "Armazenamento Padrão",
 "Unlimited" => "Ilimitado",
 "Other" => "Outro",
-"Group Admin" => "Grupo Administrativo",
 "Storage" => "Armazenamento",
-"Default" => "Padrão",
-"Delete" => "Apagar"
+"change display name" => "alterar nome de exibição",
+"set new password" => "definir nova senha",
+"Default" => "Padrão"
 );
diff --git a/settings/l10n/pt_PT.php b/settings/l10n/pt_PT.php
index 03982fd5e8eec005bbc796370d0c426deffba228..3ed2204daf03f468974260e29120d3fb110a2d90 100644
--- a/settings/l10n/pt_PT.php
+++ b/settings/l10n/pt_PT.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Incapaz de carregar a lista da App Store",
 "Authentication error" => "Erro de autenticação",
+"Unable to change display name" => "Não foi possível alterar o nome",
 "Group already exists" => "O grupo já existe",
 "Unable to add group" => "Impossível acrescentar o grupo",
 "Could not enable app. " => "Não foi possível activar a app.",
@@ -23,7 +24,50 @@
 "Error" => "Erro",
 "Updated" => "Actualizado",
 "Saving..." => "A guardar...",
+"deleted" => "apagado",
+"undo" => "desfazer",
+"Unable to remove user" => "Não foi possível remover o utilizador",
+"Groups" => "Grupos",
+"Group Admin" => "Grupo Administrador",
+"Delete" => "Apagar",
+"add group" => "Adicionar grupo",
+"A valid username must be provided" => "Um nome de utilizador válido deve ser fornecido",
+"Error creating user" => "Erro a criar utilizador",
+"A valid password must be provided" => "Uma password válida deve ser fornecida",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Aviso de Segurança",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "A sua pasta com os dados e os seus ficheiros estão provavelmente acessíveis a partir das internet. Sugerimos veementemente que configure o seu servidor web de maneira a que a pasta com os dados deixe de ficar acessível, ou mova a pasta com os dados para fora da raiz de documentos do servidor web.",
+"Setup Warning" => "Aviso de setup",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "O seu servidor web não está configurado correctamente para autorizar sincronização de ficheiros, pois o interface WebDAV parece estar com problemas.",
+"Please double check the <a href='%s'>installation guides</a>." => "Por favor verifique <a href='%s'>installation guides</a>.",
+"Module 'fileinfo' missing" => "Falta o módulo 'fileinfo'",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "O Módulo PHP 'fileinfo' não se encontra instalado/activado. É fortemente recomendado que active este módulo para obter os melhores resultado com a detecção dos tipos de mime.",
+"Locale not working" => "Internacionalização não está a funcionar",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Este servidor de ownCloud não consegue definir a codificação de caracteres para \"en_US.UTF-8\"/\"en_US.UTF8\". Isto significa que pode haver problemas com alguns caracteres nos nomes de ficheiros. É fortemente recomendado que instale o pacote para ser possível ver caracteres codificados em en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "A ligação à internet não está a funcionar",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Este servidor ownCloud não tem uma ligação de internet funcional. Isto significa que algumas funcionalidades como o acesso a locais externos (dropbox, gdrive, etc), notificações sobre actualizções, ou a instalação de aplicações não irá funcionar. Sugerimos que active uma ligação à internet se pretende obter todas as funcionalidades do ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Executar uma tarefa com cada página carregada",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php está registado como um serviço webcron. Aceda a pagina cron.php que se encontra na raiz do ownCloud uma vez por minuto utilizando o seu browser.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Usar o serviço cron do sistema. Aceda a pagina cron.php que se encontra na raiz do ownCloud uma vez por minuto utilizando o seu browser.",
+"Sharing" => "Partilha",
+"Enable Share API" => "Activar a API de partilha",
+"Allow apps to use the Share API" => "Permitir que os utilizadores usem a API de partilha",
+"Allow links" => "Permitir links",
+"Allow users to share items to the public with links" => "Permitir que os utilizadores partilhem itens com o público utilizando um link.",
+"Allow resharing" => "Permitir repartilha",
+"Allow users to share items shared with them again" => "Permitir que os utilizadores partilhem itens partilhados com eles",
+"Allow users to share with anyone" => "Permitir que os utilizadores partilhem com todos",
+"Allow users to only share with users in their groups" => "Permitir que os utilizadores partilhem somente com utilizadores do seu grupo",
+"Security" => "Segurança",
+"Enforce HTTPS" => "Forçar HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Forçar clientes a ligar através de uma ligação encriptada",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Por favor ligue-se ao ownCloud através de uma ligação HTTPS para ligar/desligar o forçar da ligação por SSL",
+"Log" => "Registo",
+"Log level" => "Nível do registo",
+"More" => "Mais",
+"Version" => "Versão",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o<a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob a <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Adicione a sua aplicação",
 "More Apps" => "Mais Aplicações",
 "Select an App" => "Selecione uma aplicação",
@@ -37,18 +81,18 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Suporte Comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Usou <strong>%s</strong> do disponivel <strong>%s</strong>",
-"Clients" => "Clientes",
-"Download Desktop Clients" => "Transferir os clientes de sincronização",
-"Download Android Client" => "Transferir o cliente android",
-"Download iOS Client" => "Transferir o cliente iOS",
+"Get the apps to sync your files" => "Obtenha as aplicações para sincronizar os seus ficheiros",
+"Show First Run Wizard again" => "Mostrar novamente Wizard de Arranque Inicial",
 "Password" => "Palavra-chave",
 "Your password was changed" => "A sua palavra-passe foi alterada",
 "Unable to change your password" => "Não foi possivel alterar a sua palavra-chave",
 "Current password" => "Palavra-chave actual",
 "New password" => "Nova palavra-chave",
-"show" => "mostrar",
 "Change password" => "Alterar palavra-chave",
 "Display Name" => "Nome público",
+"Your display name was changed" => "O seu nome foi alterado",
+"Unable to change your display name" => "Não foi possível alterar o seu nome",
+"Change display name" => "Alterar nome",
 "Email" => "endereço de email",
 "Your email address" => "O seu endereço de email",
 "Fill in an email address to enable password recovery" => "Preencha com o seu endereço de email para ativar a recuperação da palavra-chave",
@@ -56,18 +100,13 @@
 "Help translate" => "Ajude a traduzir",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Use este endereço no seu gestor de ficheiros para ligar à sua ownCloud",
-"Version" => "Versão",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o<a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob a <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Nome de utilizador",
-"Groups" => "Grupos",
 "Create" => "Criar",
 "Default Storage" => "Armazenamento Padrão",
 "Unlimited" => "Ilimitado",
 "Other" => "Outro",
-"Group Admin" => "Grupo Administrador",
 "Storage" => "Armazenamento",
 "change display name" => "modificar nome exibido",
 "set new password" => "definir nova palavra-passe",
-"Default" => "Padrão",
-"Delete" => "Apagar"
+"Default" => "Padrão"
 );
diff --git a/settings/l10n/ro.php b/settings/l10n/ro.php
index dcc55a843dc93673e9d030996726c10e0e6d2d45..99265e30574a4d8c1ad30025498c99a2ceccbe69 100644
--- a/settings/l10n/ro.php
+++ b/settings/l10n/ro.php
@@ -17,7 +17,17 @@
 "Enable" => "Activați",
 "Error" => "Eroare",
 "Saving..." => "Salvez...",
+"deleted" => "șters",
+"undo" => "Anulează ultima acțiune",
+"Groups" => "Grupuri",
+"Group Admin" => "Grupul Admin ",
+"Delete" => "Șterge",
 "__language_name__" => "_language_name_",
+"Security Warning" => "Avertisment de securitate",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Directorul tău de date și fișierele tale probabil sunt accesibile prin internet. Fișierul .htaccess oferit de ownCloud nu funcționează. Îți recomandăm să configurezi server-ul tău web într-un mod în care directorul de date să nu mai fie accesibil sau mută directorul de date în afara directorului root al server-ului web.",
+"More" => "Mai mult",
+"Version" => "Versiunea",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Dezvoltat de the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitatea ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">codul sursă</a> este licențiat sub <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Adaugă aplicația ta",
 "More Apps" => "Mai multe aplicații",
 "Select an App" => "Selectează o aplicație",
@@ -31,16 +41,11 @@
 "Bugtracker" => "Urmărire bug-uri",
 "Commercial Support" => "Suport comercial",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Ați utilizat <strong>%s</strong> din <strong>%s</strong> disponibile",
-"Clients" => "Clienți",
-"Download Desktop Clients" => "Descarcă client desktop",
-"Download Android Client" => "Descarcă client Android",
-"Download iOS Client" => "Descarcă client iOS",
 "Password" => "Parolă",
 "Your password was changed" => "Parola a fost modificată",
 "Unable to change your password" => "Imposibil de-ați schimbat parola",
 "Current password" => "Parola curentă",
 "New password" => "Noua parolă",
-"show" => "afișează",
 "Change password" => "Schimbă parola",
 "Email" => "Email",
 "Your email address" => "Adresa ta de email",
@@ -49,15 +54,10 @@
 "Help translate" => "Ajută la traducere",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Folosește această adresă pentru a conecta ownCloud cu managerul de fișiere",
-"Version" => "Versiunea",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Dezvoltat de the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitatea ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">codul sursă</a> este licențiat sub <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Grupuri",
 "Create" => "Crează",
 "Default Storage" => "Stocare implicită",
 "Unlimited" => "Nelimitată",
 "Other" => "Altele",
-"Group Admin" => "Grupul Admin ",
 "Storage" => "Stocare",
-"Default" => "Implicită",
-"Delete" => "Șterge"
+"Default" => "Implicită"
 );
diff --git a/settings/l10n/ru.php b/settings/l10n/ru.php
index 4c01951c5080e0c6b7bf84bc3b329fb218b9e337..393993fa6117a418c679edf33f494f602341e6e8 100644
--- a/settings/l10n/ru.php
+++ b/settings/l10n/ru.php
@@ -24,7 +24,17 @@
 "Error" => "Ошибка",
 "Updated" => "Обновлено",
 "Saving..." => "Сохранение...",
+"deleted" => "удален",
+"undo" => "отмена",
+"Groups" => "Группы",
+"Group Admin" => "Группа Администраторы",
+"Delete" => "Удалить",
 "__language_name__" => "Русский ",
+"Security Warning" => "Предупреждение безопасности",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ваши каталоги данных и файлы, вероятно, доступны из Интернета. Файл .htaccess, предоставляемый ownCloud, не работает. Мы настоятельно рекомендуем Вам настроить вебсервер таким образом, чтобы каталоги данных больше не были доступны, или переместить их за пределы корневого каталога документов веб-сервера.",
+"More" => "Больше",
+"Version" => "Версия",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Разрабатывается <a href=\"http://ownCloud.org/contact\" target=\"_blank\">сообществом ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">исходный код</a> доступен под лицензией <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Добавить приложение",
 "More Apps" => "Больше приложений",
 "Select an App" => "Выберите приложение",
@@ -38,16 +48,13 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Коммерческая поддержка",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Вы использовали <strong>%s</strong> из доступных <strong>%s</strong>",
-"Clients" => "Клиенты",
-"Download Desktop Clients" => "Загрузка приложений для компьютера",
-"Download Android Client" => "Загрузка Android-приложения",
-"Download iOS Client" => "Загрузка iOS-приложения",
+"Get the apps to sync your files" => "Получить приложения для синхронизации ваших файлов",
+"Show First Run Wizard again" => "Показать помощник настройки",
 "Password" => "Пароль",
 "Your password was changed" => "Ваш пароль изменён",
 "Unable to change your password" => "Невозможно сменить пароль",
 "Current password" => "Текущий пароль",
 "New password" => "Новый пароль",
-"show" => "показать",
 "Change password" => "Сменить пароль",
 "Display Name" => "Отображаемое имя",
 "Your display name was changed" => "Ваше отображаемое имя было изменено",
@@ -60,18 +67,13 @@
 "Help translate" => "Помочь с переводом",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Используйте этот URL для подключения файлового менеджера к Вашему хранилищу",
-"Version" => "Версия",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Разрабатывается <a href=\"http://ownCloud.org/contact\" target=\"_blank\">сообществом ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">исходный код</a> доступен под лицензией <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Имя пользователя",
-"Groups" => "Группы",
 "Create" => "Создать",
 "Default Storage" => "Хранилище по-умолчанию",
 "Unlimited" => "Неограниченно",
 "Other" => "Другое",
-"Group Admin" => "Группа Администраторы",
 "Storage" => "Хранилище",
 "change display name" => "изменить отображаемое имя",
 "set new password" => "установить новый пароль",
-"Default" => "По-умолчанию",
-"Delete" => "Удалить"
+"Default" => "По-умолчанию"
 );
diff --git a/settings/l10n/ru_RU.php b/settings/l10n/ru_RU.php
index 7dde545e2ed63c555dcc94818cd0bf5eafed036b..46897eda84a81cf98d34b799a1831b7dbddfd21c 100644
--- a/settings/l10n/ru_RU.php
+++ b/settings/l10n/ru_RU.php
@@ -17,7 +17,19 @@
 "Enable" => "Включить",
 "Error" => "Ошибка",
 "Saving..." => "Сохранение",
+"deleted" => "удалено",
+"undo" => "отменить действие",
+"Groups" => "Группы",
+"Group Admin" => "Группа Admin",
+"Delete" => "Удалить",
 "__language_name__" => "__язык_имя__",
+"Security Warning" => "Предупреждение системы безопасности",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ваши каталоги данных и файлы, вероятно, доступны из Интернета. Файл .htaccess, предоставляемый ownCloud, не работает. Мы настоятельно рекомендуем Вам настроить вебсервер таким образом, чтобы каталоги данных больше не были доступны, или переместить их за пределы корневого каталога документов веб-сервера.",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Ваш веб сервер ещё не достаточно точно настроен для возможности синхронизации, т.к. похоже, что интерфейс WebDAV сломан.",
+"Please double check the <a href='%s'>installation guides</a>." => "Пожалуйста проверте дважды <a href='%s'>гиды по установке</a>.",
+"More" => "Подробнее",
+"Version" => "Версия",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Разработанный <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Добавить Ваше приложение",
 "More Apps" => "Больше приложений",
 "Select an App" => "Выбрать приложение",
@@ -31,16 +43,12 @@
 "Bugtracker" => "Отслеживание ошибок",
 "Commercial Support" => "Коммерческая поддержка",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Вы использовали <strong>%s</strong> из возможных <strong>%s</strong>",
-"Clients" => "Клиенты",
-"Download Desktop Clients" => "Загрузка десктопных клиентов",
-"Download Android Client" => "Загрузить клиент под Android ",
-"Download iOS Client" => "Загрузить клиент под iOS ",
+"Show First Run Wizard again" => "Вновь показать помощника первоначальной настройки",
 "Password" => "Пароль",
 "Your password was changed" => "Ваш пароль был изменен",
 "Unable to change your password" => "Невозможно изменить Ваш пароль",
 "Current password" => "Текущий пароль",
 "New password" => "Новый пароль",
-"show" => "показать",
 "Change password" => "Изменить пароль",
 "Email" => "Электронная почта",
 "Your email address" => "Адрес Вашей электронной почты",
@@ -49,16 +57,11 @@
 "Help translate" => "Помогите перевести",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Используйте этот адрес для подключения к ownCloud в Вашем файловом менеджере",
-"Version" => "Версия",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Разработанный <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Группы",
 "Create" => "Создать",
 "Default Storage" => "Хранилище по умолчанию",
 "Unlimited" => "Неограниченный",
 "Other" => "Другой",
-"Group Admin" => "Группа Admin",
 "Storage" => "Хранилище",
 "set new password" => "назначить новый пароль",
-"Default" => "По умолчанию",
-"Delete" => "Удалить"
+"Default" => "По умолчанию"
 );
diff --git a/settings/l10n/si_LK.php b/settings/l10n/si_LK.php
index b2613290f91e922cc1c4f772320d984b28ffd62d..6946b41d40cdc94aa55301eb273d75f8cd1113a4 100644
--- a/settings/l10n/si_LK.php
+++ b/settings/l10n/si_LK.php
@@ -15,27 +15,29 @@
 "Enable" => "ක්‍රියත්මක කරන්න",
 "Error" => "දෝෂයක්",
 "Saving..." => "සුරැකෙමින් පවතී...",
+"undo" => "නිෂ්ප්‍රභ කරන්න",
+"Groups" => "සමූහය",
+"Group Admin" => "කාණ්ඩ පරිපාලක",
+"Delete" => "මකා දමනවා",
+"Security Warning" => "ආරක්ෂක නිවේදනයක්",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "ඔබගේ දත්ත ඩිරෙක්ටරිය හා ගොනුවලට අන්තර්ජාලයෙන් පිවිසිය හැක. ownCloud සපයා ඇති .htaccess ගොනුව ක්‍රියාකරන්නේ නැත. අපි තරයේ කියා සිටිනුයේ නම්, මෙම දත්ත හා ගොනු එසේ පිවිසීමට නොහැකි වන ලෙස ඔබේ වෙබ් සේවාදායකයා  වින්‍යාස කරන ලෙස හෝ එම ඩිරෙක්ටරිය වෙබ් මූලයෙන් පිටතට ගෙනයන ලෙසය.",
+"More" => "වැඩි",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "නිපදන ලද්දේ <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud සමාජයෙන්</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">මුල් කේතය </a>ලයිසන්ස් කර ඇත්තේ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> යටතේ.",
 "Add your App" => "යෙදුමක් එක් කිරීම",
 "More Apps" => "තවත් යෙදුම්",
 "Select an App" => "යෙදුමක් තොරන්න",
 "Update" => "යාවත්කාල කිරීම",
-"Clients" => "සේවාලාභීන්",
 "Password" => "මුරපදය",
 "Your password was changed" => "ඔබගේ මුර පදය වෙනස් කෙරුණි",
 "Unable to change your password" => "මුර පදය වෙනස් කළ නොහැකි විය",
 "Current password" => "වත්මන් මුරපදය",
 "New password" => "නව මුරපදය",
-"show" => "ප්‍රදර්ශනය කිරීම",
 "Change password" => "මුරපදය වෙනස් කිරීම",
 "Email" => "විද්‍යුත් තැපෑල",
 "Your email address" => "ඔබගේ විද්‍යුත් තැපෑල",
 "Fill in an email address to enable password recovery" => "මුරපද ප්‍රතිස්ථාපනය සඳහා විද්‍යුත් තැපැල් විස්තර ලබා දෙන්න",
 "Language" => "භාෂාව",
 "Help translate" => "පරිවර්ථන සහය",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "නිපදන ලද්දේ <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud සමාජයෙන්</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">මුල් කේතය </a>ලයිසන්ස් කර ඇත්තේ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> යටතේ.",
-"Groups" => "සමූහය",
 "Create" => "තනන්න",
-"Other" => "වෙනත්",
-"Group Admin" => "කාණ්ඩ පරිපාලක",
-"Delete" => "මකා දමනවා"
+"Other" => "වෙනත්"
 );
diff --git a/settings/l10n/sk_SK.php b/settings/l10n/sk_SK.php
index 162e4d3d01416422d0034adb975515196d08c5cd..0b0bbca7a5363d123f1531d31d48d034a37fa985 100644
--- a/settings/l10n/sk_SK.php
+++ b/settings/l10n/sk_SK.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nie je možné nahrať zoznam z App Store",
 "Authentication error" => "Chyba pri autentifikácii",
+"Unable to change display name" => "Nemožno zmeniť zobrazované meno",
 "Group already exists" => "Skupina už existuje",
 "Unable to add group" => "Nie je možné pridať skupinu",
 "Could not enable app. " => "Nie je možné zapnúť aplikáciu.",
@@ -11,7 +12,7 @@
 "Language changed" => "Jazyk zmenený",
 "Invalid request" => "Neplatná požiadavka",
 "Admins can't remove themself from the admin group" => "Administrátori nesmú odstrániť sami seba zo skupiny admin",
-"Unable to add user to group %s" => "Nie je možné pridať užívateľa do skupiny %s",
+"Unable to add user to group %s" => "Nie je možné pridať používateľa do skupiny %s",
 "Unable to remove user from group %s" => "Nie je možné odstrániť používateľa zo skupiny %s",
 "Couldn't update app." => "Nemožno aktualizovať aplikáciu.",
 "Update to {appversion}" => "Aktualizovať na {appversion}",
@@ -19,11 +20,54 @@
 "Enable" => "Povoliť",
 "Please wait...." => "Čakajte prosím...",
 "Updating...." => "Aktualizujem...",
-"Error while updating app" => "hyba pri aktualizácii aplikácie",
+"Error while updating app" => "chyba pri aktualizácii aplikácie",
 "Error" => "Chyba",
 "Updated" => "Aktualizované",
 "Saving..." => "Ukladám...",
+"deleted" => "zmazané",
+"undo" => "vrátiť",
+"Unable to remove user" => "Nemožno odobrať používateľa",
+"Groups" => "Skupiny",
+"Group Admin" => "Správca skupiny",
+"Delete" => "Odstrániť",
+"add group" => "pridať skupinu",
+"A valid username must be provided" => "Musíte zadať platné používateľské meno",
+"Error creating user" => "Chyba pri vytváraní používateľa",
+"A valid password must be provided" => "Musíte zadať platné heslo",
 "__language_name__" => "Slovensky",
+"Security Warning" => "Bezpečnostné varovanie",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Váš priečinok s dátami a Vaše súbory sú pravdepodobne dostupné z internetu. .htaccess súbor dodávaný s inštaláciou ownCloud nespĺňa úlohu. Dôrazne Vám doporučujeme nakonfigurovať webserver takým spôsobom, aby dáta v priečinku neboli verejné, alebo presuňte dáta mimo štruktúry priečinkov webservera.",
+"Setup Warning" => "Nastavenia oznámení",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Váš webový server nie je správne nastavený na synchronizáciu, pretože rozhranie WebDAV je poškodené.",
+"Please double check the <a href='%s'>installation guides</a>." => "Prosím skontrolujte <a href='%s'>inštalačnú príručku</a>.",
+"Module 'fileinfo' missing" => "Chýba modul 'fileinfo'",
+"The PHP module 'fileinfo' is missing. We strongly recommend to enable this module to get best results with mime-type detection." => "Chýba modul 'fileinfo'. Dôrazne doporučujeme ho povoliť pre dosiahnutie najlepších výsledkov zisťovania mime-typu.",
+"Locale not working" => "Lokalizácia nefunguje",
+"This ownCloud server can't set system locale to \"en_US.UTF-8\"/\"en_US.UTF8\". This means that there might be problems with certain characters in file names. We strongly suggest to install the required packages on your system to support en_US.UTF-8/en_US.UTF8." => "Tento server ownCloud nemôže nastaviť národné prostredie systému na \"en_US.UTF-8\" / \"en_US.UTF8\". To znamená, že by mohli byť problémy s niektorými znakmi v názvoch súborov. Veľmi odporúčame nainštalovať požadované balíky na podporu en_US.UTF-8/en_US.UTF8.",
+"Internet connection not working" => "Pripojenie na internet nefunguje",
+"This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps don´t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud." => "Tento server ownCloud nemá funkčné pripojenie k internetu. To znamená, že niektoré z funkcií, ako je pripojenie externého úložiska, oznámenia o aktualizáciách či inštalácia aplikácií tretích strán nefungujú. Prístup k súborom zo vzdialených miest a odosielanie oznamovacích e-mailov tiež nemusí fungovať. Odporúčame pripojiť tento server  k internetu, ak chcete využívať všetky vlastnosti ownCloud.",
+"Cron" => "Cron",
+"Execute one task with each page loaded" => "Vykonať jednu úlohu s každým načítaní stránky",
+"cron.php is registered at a webcron service. Call the cron.php page in the owncloud root once a minute over http." => "cron.php je registrovaná u služby webcron. Zavolá cron.php stránku v koreňovom priečinku owncloud raz za minútu cez protokol HTTP.",
+"Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute." => "Používať systémovú službu cron. Zavolať cron.php v priečinku owncloud cez systémovú úlohu raz za minútu",
+"Sharing" => "Zdieľanie",
+"Enable Share API" => "Povoliť API zdieľania",
+"Allow apps to use the Share API" => "Povoliť aplikáciám používať API na zdieľanie",
+"Allow links" => "Povoliť odkazy",
+"Allow users to share items to the public with links" => "Povoliť používateľom zdieľať položky pre verejnosť cez odkazy",
+"Allow resharing" => "Povoliť zdieľanie ďalej",
+"Allow users to share items shared with them again" => "Povoliť používateľom ďalej zdieľať zdieľané položky",
+"Allow users to share with anyone" => "Povoliť používateľom zdieľať s kýmkoľvek",
+"Allow users to only share with users in their groups" => "Povoliť používateľom zdieľať len s používateľmi v ich skupinách",
+"Security" => "Zabezpečenie",
+"Enforce HTTPS" => "Vynútiť HTTPS",
+"Enforces the clients to connect to ownCloud via an encrypted connection." => "Vynúti pripojovanie klientov ownCloud cez šifrované pripojenie.",
+"Please connect to this ownCloud instance via HTTPS to enable or disable the SSL enforcement." => "Pripojte sa k tejto inštancii ownCloud cez HTTPS pre povolenie alebo zakázanie vynútenia SSL.",
+"Log" => "Záznam",
+"Log level" => "Úroveň záznamu",
+"More" => "Viac",
+"Version" => "Verzia",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencovaný pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Pridať vašu aplikáciu",
 "More Apps" => "Viac aplikácií",
 "Select an App" => "Vyberte aplikáciu",
@@ -31,24 +75,24 @@
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencované <span class=\"author\"></span>",
 "Update" => "Aktualizovať",
 "User Documentation" => "Príručka používateľa",
-"Administrator Documentation" => "Príručka správcu",
+"Administrator Documentation" => "Príručka administrátora",
 "Online Documentation" => "Online príručka",
 "Forum" => "Fórum",
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Komerčná podpora",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Použili ste <strong>%s</strong> z <strong>%s</strong> dostupných ",
-"Clients" => "Klienti",
-"Download Desktop Clients" => "Stiahnuť desktopového klienta",
-"Download Android Client" => "Stiahnuť Android klienta",
-"Download iOS Client" => "Stiahnuť iOS klienta",
+"Get the apps to sync your files" => "Získať aplikácie na synchronizáciu Vašich súborov",
+"Show First Run Wizard again" => "Znovu zobraziť sprievodcu prvým spustením",
 "Password" => "Heslo",
 "Your password was changed" => "Heslo bolo zmenené",
 "Unable to change your password" => "Nie je možné zmeniť vaše heslo",
 "Current password" => "Aktuálne heslo",
 "New password" => "Nové heslo",
-"show" => "zobraziť",
 "Change password" => "Zmeniť heslo",
 "Display Name" => "Zobrazované meno",
+"Your display name was changed" => "Vaše zobrazované meno bolo zmenené",
+"Unable to change your display name" => "Nemožno zmeniť Vaše zobrazované meno",
+"Change display name" => "Zmeniť zobrazované meno",
 "Email" => "Email",
 "Your email address" => "Vaša emailová adresa",
 "Fill in an email address to enable password recovery" => "Vyplňte emailovú adresu pre aktivovanie obnovy hesla",
@@ -56,18 +100,13 @@
 "Help translate" => "Pomôcť s prekladom",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Použite túto adresu pre pripojenie vášho ownCloud k súborovému správcovi",
-"Version" => "Verzia",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencovaný pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Prihlasovacie meno",
-"Groups" => "Skupiny",
 "Create" => "Vytvoriť",
 "Default Storage" => "Predvolené úložisko",
 "Unlimited" => "Nelimitované",
 "Other" => "Iné",
-"Group Admin" => "Správca skupiny",
 "Storage" => "Úložisko",
 "change display name" => "zmeniť zobrazované meno",
 "set new password" => "nastaviť nové heslo",
-"Default" => "Predvolené",
-"Delete" => "Odstrániť"
+"Default" => "Predvolené"
 );
diff --git a/settings/l10n/sl.php b/settings/l10n/sl.php
index 8f4fb9435e813f1e3db099b70c6c2473e965129e..854c4b7bd9faa268f9d6e1f091bacc297f831b5e 100644
--- a/settings/l10n/sl.php
+++ b/settings/l10n/sl.php
@@ -17,7 +17,17 @@
 "Enable" => "Omogoči",
 "Error" => "Napaka",
 "Saving..." => "Poteka shranjevanje ...",
+"deleted" => "izbrisano",
+"undo" => "razveljavi",
+"Groups" => "Skupine",
+"Group Admin" => "Skrbnik skupine",
+"Delete" => "Izbriši",
 "__language_name__" => "__ime_jezika__",
+"Security Warning" => "Varnostno opozorilo",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Trenutno je dostop do podatkovne mape in datotek najverjetneje omogočen vsem uporabnikom na omrežju. Datoteka .htaccess, vključena v ownCloud namreč ni omogočena. Močno priporočamo nastavitev spletnega strežnika tako, da mapa podatkov ne bo javno dostopna ali pa, da jo prestavite ven iz korenske mape spletnega strežnika.",
+"More" => "Več",
+"Version" => "Različica",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Programski paket razvija <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnost ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je objavljena pod pogoji dovoljenja <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Splošno javno dovoljenje Affero\">AGPL</abbr></a>.",
 "Add your App" => "Dodaj program",
 "More Apps" => "Več programov",
 "Select an App" => "Izberite program",
@@ -31,16 +41,11 @@
 "Bugtracker" => "Sistem za sledenje napakam",
 "Commercial Support" => "Komercialna podpora",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Uporabljate <strong>%s</strong> od razpoložljivih <strong>%s</strong>",
-"Clients" => "Stranka",
-"Download Desktop Clients" => "Prenesi namizne odjemalce",
-"Download Android Client" => "Prenesi Android odjemalec",
-"Download iOS Client" => "Prenesi iOS odjemalec",
 "Password" => "Geslo",
 "Your password was changed" => "Vaše geslo je spremenjeno",
 "Unable to change your password" => "Gesla ni mogoče spremeniti.",
 "Current password" => "Trenutno geslo",
 "New password" => "Novo geslo",
-"show" => "pokaži",
 "Change password" => "Spremeni geslo",
 "Email" => "Elektronska pošta",
 "Your email address" => "Vaš elektronski poštni naslov",
@@ -49,15 +54,10 @@
 "Help translate" => "Pomagajte pri prevajanju",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Uporabite ta naslov za povezavo do ownCloud v vašem upravljalniku datotek.",
-"Version" => "Različica",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Programski paket razvija <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnost ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je objavljena pod pogoji dovoljenja <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Splošno javno dovoljenje Affero\">AGPL</abbr></a>.",
-"Groups" => "Skupine",
 "Create" => "Ustvari",
 "Default Storage" => "Privzeta shramba",
 "Unlimited" => "Neomejeno",
 "Other" => "Drugo",
-"Group Admin" => "Skrbnik skupine",
 "Storage" => "Shramba",
-"Default" => "Privzeto",
-"Delete" => "Izbriši"
+"Default" => "Privzeto"
 );
diff --git a/settings/l10n/sr.php b/settings/l10n/sr.php
index 1b12a0178ddd4755da8a4061116af58e20b1dddd..460fab121a03f177d851079410ef6fc3f9bce585 100644
--- a/settings/l10n/sr.php
+++ b/settings/l10n/sr.php
@@ -17,7 +17,14 @@
 "Enable" => "Укључи",
 "Error" => "Грешка",
 "Saving..." => "Чување у току...",
+"undo" => "опозови",
+"Groups" => "Групе",
+"Group Admin" => "Управник групе",
+"Delete" => "Обриши",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Сигурносно упозорење",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Тренутно су ваши подаци и датотеке доступне са интернета. Датотека .htaccess коју је обезбедио пакет ownCloud не функционише. Саветујемо вам да подесите веб сервер тако да директоријум са подацима не буде изложен или да га преместите изван коренског директоријума веб сервера.",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Развијају <a href=\"http://ownCloud.org/contact\" target=\"_blank\">Оунклауд (ownCloud) заједница</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворни код</a> је издат под <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Аферо Јавном Лиценцом (Affero General Public License)\">АГПЛ лиценцом</abbr></a>.",
 "Add your App" => "Додајте ваш програм",
 "More Apps" => "Више програма",
 "Select an App" => "Изаберите програм",
@@ -25,23 +32,18 @@
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-лиценцирао <span class=\"author\"></span>",
 "Update" => "Ажурирај",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Искористили сте <strong>%s</strong> од дозвољених <strong>%s</strong>",
-"Clients" => "Клијенти",
+"Show First Run Wizard again" => "Поново прикажи чаробњак за прво покретање",
 "Password" => "Лозинка",
 "Your password was changed" => "Лозинка је промењена",
 "Unable to change your password" => "Не могу да изменим вашу лозинку",
 "Current password" => "Тренутна лозинка",
 "New password" => "Нова лозинка",
-"show" => "прикажи",
 "Change password" => "Измени лозинку",
 "Email" => "Е-пошта",
 "Your email address" => "Ваша адреса е-поште",
 "Fill in an email address to enable password recovery" => "Ун",
 "Language" => "Језик",
 "Help translate" => " Помозите у превођењу",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Развијају <a href=\"http://ownCloud.org/contact\" target=\"_blank\">Оунклауд (ownCloud) заједница</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">изворни код</a> је издат под <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Аферо Јавном Лиценцом (Affero General Public License)\">АГПЛ лиценцом</abbr></a>.",
-"Groups" => "Групе",
 "Create" => "Направи",
-"Other" => "Друго",
-"Group Admin" => "Управник групе",
-"Delete" => "Обриши"
+"Other" => "Друго"
 );
diff --git a/settings/l10n/sr@latin.php b/settings/l10n/sr@latin.php
index 942594eb0286794687bc6c70d795d49aa765d95f..96190507d5312f6b1f11b9ccc74d5560d3037f5d 100644
--- a/settings/l10n/sr@latin.php
+++ b/settings/l10n/sr@latin.php
@@ -2,18 +2,16 @@
 "Authentication error" => "Greška pri autentifikaciji",
 "Language changed" => "Jezik je izmenjen",
 "Invalid request" => "Neispravan zahtev",
+"Groups" => "Grupe",
+"Delete" => "Obriši",
 "Select an App" => "Izaberite program",
-"Clients" => "Klijenti",
 "Password" => "Lozinka",
 "Unable to change your password" => "Ne mogu da izmenim vašu lozinku",
 "Current password" => "Trenutna lozinka",
 "New password" => "Nova lozinka",
-"show" => "prikaži",
 "Change password" => "Izmeni lozinku",
 "Email" => "E-mail",
 "Language" => "Jezik",
-"Groups" => "Grupe",
 "Create" => "Napravi",
-"Other" => "Drugo",
-"Delete" => "Obriši"
+"Other" => "Drugo"
 );
diff --git a/settings/l10n/sv.php b/settings/l10n/sv.php
index fb8c7854e9ba4cf1c852e3f480c5c61069891c2c..0e1723a9373e7fa407bdfe3afb1957cc4f77b9c5 100644
--- a/settings/l10n/sv.php
+++ b/settings/l10n/sv.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Kan inte ladda listan från App Store",
 "Authentication error" => "Autentiseringsfel",
+"Unable to change display name" => "Kan inte ändra visningsnamn",
 "Group already exists" => "Gruppen finns redan",
 "Unable to add group" => "Kan inte lägga till grupp",
 "Could not enable app. " => "Kunde inte aktivera appen.",
@@ -23,7 +24,19 @@
 "Error" => "Fel",
 "Updated" => "Uppdaterad",
 "Saving..." => "Sparar...",
+"deleted" => "raderad",
+"undo" => "ångra",
+"Groups" => "Grupper",
+"Group Admin" => "Gruppadministratör",
+"Delete" => "Radera",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Säkerhetsvarning",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Din datakatalog och dina filer är förmodligen tillgängliga från Internet. Den .htaccess-fil som ownCloud tillhandahåller fungerar inte. Vi rekommenderar starkt att du konfigurerar webbservern så att datakatalogen inte längre är tillgänglig eller att du flyttar datakatalogen utanför webbserverns dokument-root.",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Din webbserver är inte korrekt konfigurerad för att tillåta filsynkronisering eftersom WebDAV inte verkar fungera.",
+"Please double check the <a href='%s'>installation guides</a>." => "Var god kontrollera <a href='%s'>installationsguiden</a>.",
+"More" => "Mer",
+"Version" => "Version",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kommunity</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">källkoden</a> är licenserad under <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Lägg till din applikation",
 "More Apps" => "Fler Appar",
 "Select an App" => "Välj en App",
@@ -37,18 +50,17 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "Kommersiell support",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Du har använt <strong>%s</strong> av tillgängliga <strong>%s</strong>",
-"Clients" => "Kunder",
-"Download Desktop Clients" => "Ladda ner skrivbordsklienter",
-"Download Android Client" => "Ladda ner klient för Android",
-"Download iOS Client" => "Ladda ner klient för iOS",
+"Show First Run Wizard again" => "Visa Första uppstarts-guiden igen",
 "Password" => "Lösenord",
 "Your password was changed" => "Ditt lösenord har ändrats",
 "Unable to change your password" => "Kunde inte ändra ditt lösenord",
 "Current password" => "Nuvarande lösenord",
 "New password" => "Nytt lösenord",
-"show" => "visa",
 "Change password" => "Ändra lösenord",
 "Display Name" => "Visat namn",
+"Your display name was changed" => "Ditt visningsnamn har ändrats",
+"Unable to change your display name" => "Kan inte ändra ditt visningsnamn",
+"Change display name" => "Ändra visningsnamn",
 "Email" => "E-post",
 "Your email address" => "Din e-postadress",
 "Fill in an email address to enable password recovery" => "Fyll i en e-postadress för att aktivera återställning av lösenord",
@@ -56,18 +68,13 @@
 "Help translate" => "Hjälp att översätta",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Använd denna adress för att ansluta till ownCloud i din filhanterare",
-"Version" => "Version",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kommunity</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">källkoden</a> är licenserad under <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Inloggningsnamn",
-"Groups" => "Grupper",
 "Create" => "Skapa",
 "Default Storage" => "Förvald lagring",
 "Unlimited" => "Obegränsad",
 "Other" => "Annat",
-"Group Admin" => "Gruppadministratör",
 "Storage" => "Lagring",
 "change display name" => "ändra visat namn",
 "set new password" => "ange nytt lösenord",
-"Default" => "Förvald",
-"Delete" => "Radera"
+"Default" => "Förvald"
 );
diff --git a/settings/l10n/ta_LK.php b/settings/l10n/ta_LK.php
index 5e94df0dfb270a59fc721da1c9e2728599244192..0bb29158fd25a4c7d82abd9324aecc39720baf9f 100644
--- a/settings/l10n/ta_LK.php
+++ b/settings/l10n/ta_LK.php
@@ -16,7 +16,15 @@
 "Enable" => "செயலற்றதாக்குக",
 "Error" => "வழு",
 "Saving..." => "இயலுமைப்படுத்துக",
+"undo" => "முன் செயல் நீக்கம் ",
+"Groups" => "குழுக்கள்",
+"Group Admin" => "குழு நிர்வாகி",
+"Delete" => "அழிக்க",
 "__language_name__" => "_மொழி_பெயர்_",
+"Security Warning" => "பாதுகாப்பு எச்சரிக்கை",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "உங்களுடைய தரவு அடைவு மற்றும் உங்களுடைய கோப்புக்களை பெரும்பாலும் இணையத்தினூடாக அணுகலாம். ownCloud இனால் வழங்கப்படுகின்ற .htaccess கோப்பு வேலை செய்யவில்லை. தரவு அடைவை நீண்ட நேரத்திற்கு அணுகக்கூடியதாக உங்களுடைய வலைய சேவையகத்தை தகவமைக்குமாறு நாங்கள் உறுதியாக கூறுகிறோம் அல்லது தரவு அடைவை வலைய சேவையக மூல ஆவணத்திலிருந்து வெளியே அகற்றுக.  ",
+"More" => "மேலதிக",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "உங்களுடைய செயலியை சேர்க்க",
 "More Apps" => "மேலதிக செயலிகள்",
 "Select an App" => "செயலி ஒன்றை தெரிவுசெய்க",
@@ -24,23 +32,17 @@
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"அனுமதிப்பத்திரம்\"></span>-அனுமதி பெற்ற <span class=\"ஆசிரியர்\"></span>",
 "Update" => "இற்றைப்படுத்தல்",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "நீங்கள் <strong>%s</strong> இலுள்ள <strong>%s</strong>பயன்படுத்தியுள்ளீர்கள்",
-"Clients" => "வாடிக்கையாளர்கள்",
 "Password" => "கடவுச்சொல்",
 "Your password was changed" => "உங்களுடைய கடவுச்சொல் மாற்றப்பட்டுள்ளது",
 "Unable to change your password" => "உங்களுடைய கடவுச்சொல்லை மாற்றமுடியாது",
 "Current password" => "தற்போதைய கடவுச்சொல்",
 "New password" => "புதிய கடவுச்சொல்",
-"show" => "காட்டு",
 "Change password" => "கடவுச்சொல்லை மாற்றுக",
 "Email" => "மின்னஞ்சல்",
 "Your email address" => "உங்களுடைய மின்னஞ்சல் முகவரி",
 "Fill in an email address to enable password recovery" => "கடவுச்சொல் மீள் பெறுவதை இயலுமைப்படுத்துவதற்கு மின்னஞ்சல் முகவரியை இயலுமைப்படுத்துக",
 "Language" => "மொழி",
 "Help translate" => "மொழிபெயர்க்க உதவி",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "குழுக்கள்",
 "Create" => "உருவாக்குக",
-"Other" => "மற்றவை",
-"Group Admin" => "குழு நிர்வாகி",
-"Delete" => "அழிக்க"
+"Other" => "மற்றவை"
 );
diff --git a/settings/l10n/th_TH.php b/settings/l10n/th_TH.php
index 309dbc2657cbbfd7d54925826402240c089ebdeb..fd623655f83c0557ec909c43d58e497a4d13bd8e 100644
--- a/settings/l10n/th_TH.php
+++ b/settings/l10n/th_TH.php
@@ -23,7 +23,17 @@
 "Error" => "ข้อผิดพลาด",
 "Updated" => "อัพเดทแล้ว",
 "Saving..." => "กำลังบันทึุกข้อมูล...",
+"deleted" => "ลบแล้ว",
+"undo" => "เลิกทำ",
+"Groups" => "กลุ่ม",
+"Group Admin" => "ผู้ดูแลกลุ่ม",
+"Delete" => "ลบ",
 "__language_name__" => "ภาษาไทย",
+"Security Warning" => "คำเตือนเกี่ยวกับความปลอดภัย",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "ไดเร็กทอรี่ข้อมูลและไฟล์ของคุณสามารถเข้าถึงได้จากอินเทอร์เน็ต ไฟล์ .htaccess ที่ ownCloud มีให้ไม่สามารถทำงานได้อย่างเหมาะสม เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ใหม่ในรูปแบบที่ไดเร็กทอรี่เก็บข้อมูลไม่สามารถเข้าถึงได้อีกต่อไป หรือคุณได้ย้ายไดเร็กทอรี่ที่ใช้เก็บข้อมูลไปอยู่ภายนอกตำแหน่ง root ของเว็บเซิร์ฟเวอร์แล้ว",
+"More" => "มาก",
+"Version" => "รุ่น",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ชุมชนผู้ใช้งาน ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">ซอร์สโค้ด</a>อยู่ภายใต้สัญญาอนุญาตของ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "เพิ่มแอปของคุณ",
 "More Apps" => "แอปฯอื่นเพิ่มเติม",
 "Select an App" => "เลือก App",
@@ -37,16 +47,12 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "บริการลูกค้าแบบเสียค่าใช้จ่าย",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "คุณได้ใช้งานไปแล้ว <strong>%s</strong> จากจำนวนที่สามารถใช้ได้ <strong>%s</strong>",
-"Clients" => "ลูกค้า",
-"Download Desktop Clients" => "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับเครื่องเดสก์ท็อป",
-"Download Android Client" => "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับแอนดรอยด์",
-"Download iOS Client" => "ดาวน์โหลดโปรแกรมไคลเอนต์สำหรับ iOS",
+"Show First Run Wizard again" => "แสดงหน้าจอวิซาร์ดนำทางครั้งแรกอีกครั้ง",
 "Password" => "รหัสผ่าน",
 "Your password was changed" => "รหัสผ่านของคุณถูกเปลี่ยนแล้ว",
 "Unable to change your password" => "ไม่สามารถเปลี่ยนรหัสผ่านของคุณได้",
 "Current password" => "รหัสผ่านปัจจุบัน",
 "New password" => "รหัสผ่านใหม่",
-"show" => "แสดง",
 "Change password" => "เปลี่ยนรหัสผ่าน",
 "Display Name" => "ชื่อที่ต้องการแสดง",
 "Email" => "อีเมล์",
@@ -56,18 +62,13 @@
 "Help translate" => "ช่วยกันแปล",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "ใช้ที่อยู่นี้เพื่อเชื่อมต่อกับ ownCloud ในโปรแกรมจัดการไฟล์ของคุณ",
-"Version" => "รุ่น",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ชุมชนผู้ใช้งาน ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">ซอร์สโค้ด</a>อยู่ภายใต้สัญญาอนุญาตของ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "ชื่อที่ใช้สำหรับเข้าสู่ระบบ",
-"Groups" => "กลุ่ม",
 "Create" => "สร้าง",
 "Default Storage" => "พื้นที่จำกัดข้อมูลเริ่มต้น",
 "Unlimited" => "ไม่จำกัดจำนวน",
 "Other" => "อื่นๆ",
-"Group Admin" => "ผู้ดูแลกลุ่ม",
 "Storage" => "พื้นที่จัดเก็บข้อมูล",
 "change display name" => "เปลี่ยนชื่อที่ต้องการให้แสดง",
 "set new password" => "ตั้งค่ารหัสผ่านใหม่",
-"Default" => "ค่าเริ่มต้น",
-"Delete" => "ลบ"
+"Default" => "ค่าเริ่มต้น"
 );
diff --git a/settings/l10n/tr.php b/settings/l10n/tr.php
index db55491612e2dacaeccda51f7cd2704d127419b5..64fae2f04a856e3f95e3237a6e960306853e28bc 100644
--- a/settings/l10n/tr.php
+++ b/settings/l10n/tr.php
@@ -15,7 +15,17 @@
 "Enable" => "Etkin",
 "Error" => "Hata",
 "Saving..." => "Kaydediliyor...",
+"deleted" => "silindi",
+"undo" => "geri al",
+"Groups" => "Gruplar",
+"Group Admin" => "Yönetici Grubu ",
+"Delete" => "Sil",
 "__language_name__" => "__dil_adı__",
+"Security Warning" => "Güvenlik Uyarisi",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "data dizininiz ve dosyalarınız büyük ihtimalle internet üzerinden erişilebilir. Owncloud tarafından sağlanan .htaccess  dosyası çalışmıyor. Web sunucunuzu yapılandırarak data dizinine erişimi kapatmanızı veya data dizinini web sunucu döküman dizini dışına almanızı şiddetle tavsiye ederiz.",
+"More" => "Daha fazla",
+"Version" => "Sürüm",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Geliştirilen Taraf<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is altında lisanslanmıştır <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Uygulamanı Ekle",
 "More Apps" => "Daha fazla App",
 "Select an App" => "Bir uygulama seçin",
@@ -27,16 +37,11 @@
 "Forum" => "Forum",
 "Bugtracker" => "Hata Takip Sistemi",
 "Commercial Support" => "Ticari Destek",
-"Clients" => "Müşteriler",
-"Download Desktop Clients" => "Masaüstü İstemcilerini İndir",
-"Download Android Client" => "Android İstemcisini İndir",
-"Download iOS Client" => "iOS İstemcisini İndir",
 "Password" => "Parola",
 "Your password was changed" => "Şifreniz değiştirildi",
 "Unable to change your password" => "Parolanız değiştirilemiyor",
 "Current password" => "Mevcut parola",
 "New password" => "Yeni parola",
-"show" => "göster",
 "Change password" => "Parola değiştir",
 "Email" => "Eposta",
 "Your email address" => "Eposta adresiniz",
@@ -44,11 +49,6 @@
 "Language" => "Dil",
 "Help translate" => "Çevirilere yardım edin",
 "WebDAV" => "WebDAV",
-"Version" => "Sürüm",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Geliştirilen Taraf<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is altında lisanslanmıştır <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
-"Groups" => "Gruplar",
 "Create" => "Oluştur",
-"Other" => "Diğer",
-"Group Admin" => "Yönetici Grubu ",
-"Delete" => "Sil"
+"Other" => "Diğer"
 );
diff --git a/settings/l10n/uk.php b/settings/l10n/uk.php
index 7186b2684eb59e0598acf5aa634274e760cb1f39..fb1557577cbca6e96e2b32785ca716a72bbbb9e8 100644
--- a/settings/l10n/uk.php
+++ b/settings/l10n/uk.php
@@ -24,7 +24,17 @@
 "Error" => "Помилка",
 "Updated" => "Оновлено",
 "Saving..." => "Зберігаю...",
+"deleted" => "видалені",
+"undo" => "відмінити",
+"Groups" => "Групи",
+"Group Admin" => "Адміністратор групи",
+"Delete" => "Видалити",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Попередження про небезпеку",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ваш каталог з даними та Ваші файли можливо доступні з Інтернету. Файл .htaccess, наданий з ownCloud, не працює. Ми наполегливо рекомендуємо Вам налаштувати свій веб-сервер таким чином, щоб каталог data більше не був доступний, або перемістити каталог data за межі кореневого каталогу документів веб-сервера.",
+"More" => "Більше",
+"Version" => "Версія",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Розроблено <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud громадою</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">вихідний код</a> має ліцензію <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Додати свою програму",
 "More Apps" => "Більше програм",
 "Select an App" => "Вибрати додаток",
@@ -38,16 +48,11 @@
 "Bugtracker" => "БагТрекер",
 "Commercial Support" => "Комерційна підтримка",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Ви використали <strong>%s</strong> із доступних <strong>%s</strong>",
-"Clients" => "Клієнти",
-"Download Desktop Clients" => "Завантажити клієнт для ПК",
-"Download Android Client" => "Завантажити клієнт для Android",
-"Download iOS Client" => "Завантажити клієнт для iOS",
 "Password" => "Пароль",
 "Your password was changed" => "Ваш пароль змінено",
 "Unable to change your password" => "Не вдалося змінити Ваш пароль",
 "Current password" => "Поточний пароль",
 "New password" => "Новий пароль",
-"show" => "показати",
 "Change password" => "Змінити пароль",
 "Display Name" => "Показати Ім'я",
 "Your display name was changed" => "Ваше ім'я було змінене",
@@ -60,18 +65,13 @@
 "Help translate" => "Допомогти з перекладом",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Використовуйте цю адресу для під'єднання до вашого ownCloud у вашому файловому менеджері",
-"Version" => "Версія",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Розроблено <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud громадою</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">вихідний код</a> має ліцензію <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Ім'я Логіну",
-"Groups" => "Групи",
 "Create" => "Створити",
 "Default Storage" => "сховище за замовчуванням",
 "Unlimited" => "Необмежено",
 "Other" => "Інше",
-"Group Admin" => "Адміністратор групи",
 "Storage" => "Сховище",
 "change display name" => "змінити зображене ім'я",
 "set new password" => "встановити новий пароль",
-"Default" => "За замовчуванням",
-"Delete" => "Видалити"
+"Default" => "За замовчуванням"
 );
diff --git a/settings/l10n/vi.php b/settings/l10n/vi.php
index 1b967b27b0954e4333a6372e2fec1608d552d811..8a843f58ed82fcf6c4b5f301e698dd0b487e39de 100644
--- a/settings/l10n/vi.php
+++ b/settings/l10n/vi.php
@@ -24,7 +24,17 @@
 "Error" => "Lỗi",
 "Updated" => "Đã cập nhật",
 "Saving..." => "Đang tiến hành lưu ...",
+"deleted" => "đã xóa",
+"undo" => "lùi lại",
+"Groups" => "Nhóm",
+"Group Admin" => "Nhóm quản trị",
+"Delete" => "Xóa",
 "__language_name__" => "__Ngôn ngữ___",
+"Security Warning" => "Cảnh bảo bảo mật",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Thư mục dữ liệu và những tập tin của bạn có thể dễ dàng bị truy cập từ mạng. Tập tin .htaccess do ownCloud cung cấp không hoạt động. Chúng tôi đề nghị bạn nên cấu hình lại máy chủ web để thư mục dữ liệu không còn bị truy cập hoặc bạn nên di chuyển thư mục dữ liệu ra bên ngoài thư mục gốc của máy chủ.",
+"More" => "hơn",
+"Version" => "Phiên bản",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Thêm ứng dụng của bạn",
 "More Apps" => "Nhiều ứng dụng hơn",
 "Select an App" => "Chọn một ứng dụng",
@@ -38,16 +48,13 @@
 "Bugtracker" => "Hệ ghi nhận lỗi",
 "Commercial Support" => "Hỗ trợ có phí",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Bạn đã sử dụng <strong>%s </ strong> có sẵn <strong> %s </ strong>",
-"Clients" => "Khách hàng",
-"Download Desktop Clients" => "Download bộ cài trên desktop",
-"Download Android Client" => "Download bộ cài trên Android",
-"Download iOS Client" => "Download bộ cài trên iOS",
+"Get the apps to sync your files" => "Nhận ứng dụng để đồng bộ file của bạn",
+"Show First Run Wizard again" => "Hiện lại việc chạy đồ thuật khởi đầu",
 "Password" => "Mật khẩu",
 "Your password was changed" => "Mật khẩu của bạn đã được thay đổi.",
 "Unable to change your password" => "Không thể đổi mật khẩu",
 "Current password" => "Mật khẩu cũ",
 "New password" => "Mật khẩu mới ",
-"show" => "Hiện",
 "Change password" => "Đổi mật khẩu",
 "Display Name" => "Tên hiển thị",
 "Your display name was changed" => "Tên hiển thị của bạn đã được thay đổi",
@@ -60,18 +67,13 @@
 "Help translate" => "Hỗ trợ dịch thuật",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "Sử dụng địa chỉ này để kết nối ownCloud của bạn trong trình quản lý file của bạn",
-"Version" => "Phiên bản",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Login Name" => "Tên đăng nhập",
-"Groups" => "Nhóm",
 "Create" => "Tạo",
 "Default Storage" => "Bộ nhớ mặc định",
 "Unlimited" => "Không giới hạn",
 "Other" => "Khác",
-"Group Admin" => "Nhóm quản trị",
 "Storage" => "Bộ nhớ",
 "change display name" => "Thay đổi tên hiển thị",
 "set new password" => "đặt mật khẩu mới",
-"Default" => "Mặc định",
-"Delete" => "Xóa"
+"Default" => "Mặc định"
 );
diff --git a/settings/l10n/zh_CN.GB2312.php b/settings/l10n/zh_CN.GB2312.php
index c7d73ae2ded89b5a4036c92bd829669c9e40b606..fcb479dd827aad3e7161e38ac9cdae2f4ae8d22e 100644
--- a/settings/l10n/zh_CN.GB2312.php
+++ b/settings/l10n/zh_CN.GB2312.php
@@ -16,30 +16,33 @@
 "Enable" => "启用",
 "Error" => "出错",
 "Saving..." => "保存中...",
+"deleted" => "删除",
+"undo" => "撤销",
+"Groups" => "组",
+"Group Admin" => "群组管理员",
+"Delete" => "删除",
 "__language_name__" => "Chinese",
+"Security Warning" => "安全警告",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "您的数据文件夹和您的文件或许能够从互联网访问。ownCloud 提供的 .htaccesss 文件未其作用。我们强烈建议您配置网络服务器以使数据文件夹不能从互联网访问,或将移动数据文件夹移出网络服务器文档根目录。",
+"More" => "更多",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由 <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社区</a>开发,<a href=\"https://github.com/owncloud\" target=\"_blank\">s源代码</a> 以 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> 许可协议发布。",
 "Add your App" => "添加你的应用程序",
 "More Apps" => "更多应用",
 "Select an App" => "选择一个程序",
 "See application page at apps.owncloud.com" => "在owncloud.com上查看应用程序",
 "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>授权协议 <span class=\"author\"></span>",
 "Update" => "更新",
-"Clients" => "客户",
 "Password" => "密码",
 "Your password was changed" => "您的密码以变更",
 "Unable to change your password" => "不能改变你的密码",
 "Current password" => "现在的密码",
 "New password" => "新密码",
-"show" => "展示",
 "Change password" => "改变密码",
 "Email" => "Email",
 "Your email address" => "你的email地址",
 "Fill in an email address to enable password recovery" => "输入一个邮箱地址以激活密码恢复功能",
 "Language" => "语言",
 "Help translate" => "帮助翻译",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由 <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社区</a>开发,<a href=\"https://github.com/owncloud\" target=\"_blank\">s源代码</a> 以 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> 许可协议发布。",
-"Groups" => "组",
 "Create" => "新建",
-"Other" => "其他的",
-"Group Admin" => "群组管理员",
-"Delete" => "删除"
+"Other" => "其他的"
 );
diff --git a/settings/l10n/zh_CN.php b/settings/l10n/zh_CN.php
index 40c571a876319fca345a411f901340cd228cd0e4..e1d81eafab51797da975386d7a882547b5f3364b 100644
--- a/settings/l10n/zh_CN.php
+++ b/settings/l10n/zh_CN.php
@@ -17,7 +17,17 @@
 "Enable" => "启用",
 "Error" => "错误",
 "Saving..." => "正在保存",
+"deleted" => "已经删除",
+"undo" => "撤销",
+"Groups" => "组",
+"Group Admin" => "组管理员",
+"Delete" => "删除",
 "__language_name__" => "简体中文",
+"Security Warning" => "安全警告",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "您的数据文件夹和文件可由互联网访问。OwnCloud提供的.htaccess文件未生效。我们强烈建议您配置服务器,以使数据文件夹不可被访问,或者将数据文件夹移到web服务器根目录以外。",
+"More" => "更多",
+"Version" => "版本",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud社区</a>开发,  <a href=\"https://github.com/owncloud\" target=\"_blank\">源代码</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>许可证下发布。",
 "Add your App" => "添加应用",
 "More Apps" => "更多应用",
 "Select an App" => "选择一个应用",
@@ -31,16 +41,11 @@
 "Bugtracker" => "问题跟踪器",
 "Commercial Support" => "商业支持",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "你已使用 <strong>%s</strong>,有效空间 <strong>%s</strong>",
-"Clients" => "客户",
-"Download Desktop Clients" => "下载桌面客户端",
-"Download Android Client" => "下载 Android 客户端",
-"Download iOS Client" => "下载 iOS 客户端",
 "Password" => "密码",
 "Your password was changed" => "密码已修改",
 "Unable to change your password" => "无法修改密码",
 "Current password" => "当前密码",
 "New password" => "新密码",
-"show" => "显示",
 "Change password" => "修改密码",
 "Email" => "电子邮件",
 "Your email address" => "您的电子邮件",
@@ -49,15 +54,10 @@
 "Help translate" => "帮助翻译",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "用该地址来连接文件管理器中的 ownCloud",
-"Version" => "版本",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud社区</a>开发,  <a href=\"https://github.com/owncloud\" target=\"_blank\">源代码</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>许可证下发布。",
-"Groups" => "组",
 "Create" => "创建",
 "Default Storage" => "默认存储",
 "Unlimited" => "无限",
 "Other" => "其它",
-"Group Admin" => "组管理员",
 "Storage" => "存储",
-"Default" => "默认",
-"Delete" => "删除"
+"Default" => "默认"
 );
diff --git a/settings/l10n/zh_TW.php b/settings/l10n/zh_TW.php
index ecff21604f3591fa9ae6681f1a90ea730d66f6de..88eb956fe8e6ab3b9cf4f36ef56b28a6fa738815 100644
--- a/settings/l10n/zh_TW.php
+++ b/settings/l10n/zh_TW.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "無法從 App Store 讀取清單",
 "Authentication error" => "認證錯誤",
+"Unable to change display name" => "無法更改顯示名稱",
 "Group already exists" => "群組已存在",
 "Unable to add group" => "群組增加失敗",
 "Could not enable app. " => "未能啟動此app",
@@ -23,7 +24,18 @@
 "Error" => "錯誤",
 "Updated" => "已更新",
 "Saving..." => "儲存中...",
+"undo" => "復原",
+"Groups" => "群組",
+"Group Admin" => "群組 管理員",
+"Delete" => "刪除",
 "__language_name__" => "__語言_名稱__",
+"Security Warning" => "安全性警告",
+"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "您的資料目錄 (Data Directory) 和檔案可能可以由網際網路上面公開存取。Owncloud 所提供的 .htaccess 設定檔並未生效,我們強烈建議您設定您的網頁伺服器以防止資料目錄被公開存取,或將您的資料目錄移出網頁伺服器的 document root 。",
+"Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "您的網頁伺服器尚未被正確設定來進行檔案同步,因為您的 WebDAV 界面似乎無法使用。",
+"Please double check the <a href='%s'>installation guides</a>." => "請參考<a href='%s'>安裝指南</a>。",
+"More" => "更多",
+"Version" => "版本",
+"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社區</a>開發,<a href=\"https://github.com/owncloud\" target=\"_blank\">源代碼</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>許可證下發布。",
 "Add your App" => "添加你的 App",
 "More Apps" => "更多Apps",
 "Select an App" => "選擇一個應用程式",
@@ -37,18 +49,17 @@
 "Bugtracker" => "Bugtracker",
 "Commercial Support" => "商用支援",
 "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "您已經使用了 <strong>%s</strong> ,目前可用空間為 <strong>%s</strong>",
-"Clients" => "客戶",
-"Download Desktop Clients" => "下載桌面客戶端",
-"Download Android Client" => "下載 Android 客戶端",
-"Download iOS Client" => "下載 iOS 客戶端",
+"Show First Run Wizard again" => "再次顯示首次使用精靈",
 "Password" => "密碼",
 "Your password was changed" => "你的密碼已更改",
 "Unable to change your password" => "無法變更你的密碼",
 "Current password" => "目前密碼",
 "New password" => "新密碼",
-"show" => "顯示",
 "Change password" => "變更密碼",
 "Display Name" => "顯示名稱",
+"Your display name was changed" => "已更改顯示名稱",
+"Unable to change your display name" => "無法更改您的顯示名稱",
+"Change display name" => "更改顯示名稱",
 "Email" => "電子郵件",
 "Your email address" => "你的電子郵件信箱",
 "Fill in an email address to enable password recovery" => "請填入電子郵件信箱以便回復密碼",
@@ -56,18 +67,13 @@
 "Help translate" => "幫助翻譯",
 "WebDAV" => "WebDAV",
 "Use this address to connect to your ownCloud in your file manager" => "在您的檔案管理員中使用這個地址來連線到 ownCloud",
-"Version" => "版本",
-"Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "由<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社區</a>開發,<a href=\"https://github.com/owncloud\" target=\"_blank\">源代碼</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>許可證下發布。",
 "Login Name" => "登入名稱",
-"Groups" => "群組",
 "Create" => "創造",
 "Default Storage" => "預設儲存區",
 "Unlimited" => "無限制",
 "Other" => "其他",
-"Group Admin" => "群組 管理員",
 "Storage" => "儲存區",
 "change display name" => "修改顯示名稱",
 "set new password" => "設定新密碼",
-"Default" => "預設",
-"Delete" => "刪除"
+"Default" => "預設"
 );
diff --git a/settings/languageCodes.php b/settings/languageCodes.php
index 71655800856500b5bc833d8df6a8349fe857df89..2939461f34173e58e33b1a61275a7ed93903de4a 100644
--- a/settings/languageCodes.php
+++ b/settings/languageCodes.php
@@ -50,6 +50,17 @@ return array(
 'lv'=>'Latviešu',
 'mk'=>'македонски',
 'uk'=>'Українська',
-'vi'=>'tiếng việt',
+'vi'=>'Tiếng Việt',
 'zh_TW'=>'臺灣話',
+'af_ZA'=> 'Afrikaans',
+'bn_BD'=>'Bengali',
+'ta_LK'=>'தமிழ்',
+'zh_HK'=>'Chinese (Hong Kong)',
+'oc'=>'Occitan (post 1500)',
+'is'=>'Icelandic',
+'pl_PL'=>'Polski',
+'ka_GE'=>'Georgian for Georgia',
+'ku_IQ'=>'Kurdish Iraq',
+'ru_RU'=>'Русский язык',
+'si_LK'=>'Sinhala'
 );
diff --git a/settings/oauth.php b/settings/oauth.php
index 8dba9b33a53b4faeb4c85022cb5363193b7d01eb..07b7ae5c31d0ef3c5915ceb35514f4e7efe6285b 100644
--- a/settings/oauth.php
+++ b/settings/oauth.php
@@ -15,7 +15,7 @@ switch($operation){
 	case 'register':
 
 		// Here external apps can register with an ownCloud
-		if(empty($_GET['name']) || empty($_GET['url'])){
+		if(empty($_GET['name']) || empty($_GET['url'])) {
 			// Invalid request
 			echo 401;
 		} else {
@@ -54,13 +54,13 @@ switch($operation){
 		foreach($consumer['scopes'] as $requiredapp){
 			// App scopes are in this format: app_$appname
 			$requiredapp = end(explode('_', $requiredapp));
-			if(!in_array($requiredapp, $apps)){
+			if(!in_array($requiredapp, $apps)) {
 				$notfound[] = $requiredapp;
 			}
 		}
-		if(!empty($notfound)){
+		if(!empty($notfound)) {
 			// We need more apps :( Show error
-			if(count($notfound)==1){
+			if(count($notfound)==1) {
 				$message = 'requires that you have an extra app installed on your ownCloud. Please contact your ownCloud administrator and ask them to install the app below.';
 			} else {
 				$message = 'requires that you have some extra apps installed on your ownCloud. Please contract your ownCloud administrator and ask them to install the apps below.';
diff --git a/settings/personal.php b/settings/personal.php
index c2df8db1cccd7d64b54d2aa2759a3344053becf6..9bbc66c9b7fcf644f61713b9cfa596a84b701ff4 100644
--- a/settings/personal.php
+++ b/settings/personal.php
@@ -19,26 +19,36 @@ $storageInfo=OC_Helper::getStorageInfo();
 
 $email=OC_Preferences::getValue(OC_User::getUser(), 'settings', 'email', '');
 
-$lang=OC_Preferences::getValue( OC_User::getUser(), 'core', 'lang', OC_L10N::findLanguage() );
+$userLang=OC_Preferences::getValue( OC_User::getUser(), 'core', 'lang', OC_L10N::findLanguage() );
 $languageCodes=OC_L10N::findAvailableLanguages();
-sort ($languageCodes);
-
-//put the current language in the front
-unset($languageCodes[array_search($lang, $languageCodes)]);
-array_unshift($languageCodes, $lang);
 
 $languageNames=include 'languageCodes.php';
 $languages=array();
 foreach($languageCodes as $lang) {
 	$l=OC_L10N::get('settings', $lang);
 	if(substr($l->t('__language_name__'), 0, 1)!='_') {//first check if the language name is in the translation file
-		$languages[]=array('code'=>$lang, 'name'=>$l->t('__language_name__'));
+		$ln=array('code'=>$lang, 'name'=> (string)$l->t('__language_name__'));
 	}elseif(isset($languageNames[$lang])) {
-		$languages[]=array('code'=>$lang, 'name'=>$languageNames[$lang]);
+		$ln=array('code'=>$lang, 'name'=>$languageNames[$lang]);
 	}else{//fallback to language code
-		$languages[]=array('code'=>$lang, 'name'=>$lang);
+		$ln=array('code'=>$lang, 'name'=>$lang);
+	}
+
+	if ($lang === $userLang) {
+		$userLang = $ln;
+	} else {
+		$languages[]=$ln;
 	}
 }
+
+// sort now by displayed language not the iso-code
+usort( $languages, function ($a, $b) {
+	return strcmp($a['name'], $b['name']);
+});
+
+//put the current language in the front
+array_unshift($languages, $userLang);
+
 //links to clients
 $clients = array(
 	'desktop' => OC_Config::getValue('customclient_desktop', 'http://owncloud.org/sync-clients/'),
diff --git a/settings/templates/personal.php b/settings/templates/personal.php
index 398e65c008686ba330736dc87bbf430ca7f4c4cf..6b3e8acbf02f7f2679dadb8be395c705fae32b58 100644
--- a/settings/templates/personal.php
+++ b/settings/templates/personal.php
@@ -8,12 +8,25 @@
 	<p id="quotatext"><?php echo $l->t('You have used <strong>%s</strong> of the available <strong>%s</strong>', array($_['usage'], $_['total_space']));?></p>
 </div></div>
 
-<fieldset class="personalblock">
-	<legend><strong><?php echo $l->t('Clients');?></strong></legend>
-	<a class="button" href="<?php echo $_['clients']['desktop']; ?>" target="_blank"><?php echo $l->t('Download Desktop Clients');?></a>
-	<a class="button" href="<?php echo $_['clients']['android']; ?>" target="_blank"><?php echo $l->t('Download Android Client');?></a>
-	<a class="button" href="<?php echo $_['clients']['ios']; ?>" target="_blank"><?php echo $l->t('Download iOS Client');?></a>
-</fieldset>
+
+
+<div class="clientsbox">
+	<h2><?php echo $l->t('Get the apps to sync your files');?></h2>
+	<a href="<?php echo $_['clients']['desktop']; ?>" target="_blank">
+		<img src="<?php echo OCP\Util::imagePath('core', 'desktopapp.png'); ?>" />
+	</a>
+	<a href="<?php echo $_['clients']['android']; ?>" target="_blank">
+		<img src="<?php echo OCP\Util::imagePath('core', 'googleplay.png'); ?>" />
+	</a>
+	<a href="<?php echo $_['clients']['ios']; ?>" target="_blank">
+		<img src="<?php echo OCP\Util::imagePath('core', 'appstore.png'); ?>" />
+	</a>
+	<?php if(OC_APP::isEnabled('firstrunwizard')) {?>
+	<center><a class="button" href="#" id="showWizard"><?php echo $l->t('Show First Run Wizard again');?></a></center>
+	<?php }?>
+</div>
+
+
 
 <?php
 if($_['passwordChangeSupported']) {
@@ -24,8 +37,8 @@ if($_['passwordChangeSupported']) {
 		<div id="passwordchanged"><?php echo $l->t('Your password was changed');?></div>
 		<div id="passworderror"><?php echo $l->t('Unable to change your password');?></div>
 		<input type="password" id="pass1" name="oldpassword" placeholder="<?php echo $l->t('Current password');?>" />
-		<input type="password" id="pass2" name="password" placeholder="<?php echo $l->t('New password');?>" data-typetoggle="#show" />
-		<input type="checkbox" id="show" name="show" /><label for="show"> <?php echo $l->t('show');?></label>
+		<input type="password" id="pass2" name="personal-password" placeholder="<?php echo $l->t('New password');?>" data-typetoggle="#personal-show" />
+		<input type="checkbox" id="personal-show" name="show" /><label for="personal-show"></label>
 		<input id="passwordbutton" type="submit" value="<?php echo $l->t('Change password');?>" />
 	</fieldset>
 </form>
diff --git a/settings/templates/users.php b/settings/templates/users.php
index b3cab526947d58cd260ad13738143b5887e6a593..53a66fb46869b3d840e43fc910fbde2cebc95732 100644
--- a/settings/templates/users.php
+++ b/settings/templates/users.php
@@ -33,7 +33,6 @@ $_['subadmingroups'] = array_flip($items);
 	</form>
 	<div class="quota">
 		<span><?php echo $l->t('Default Storage');?></span>
-		<div class="quota-select-wrapper">
 			<?php if((bool) $_['isadmin']): ?>
 			<select class='quota'>
 				<option
@@ -60,7 +59,7 @@ $_['subadmingroups'] = array_flip($items);
 					<?php echo $l->t('Other');?>
 					...
 				</option>
-			</select> <input class='quota-other'/>
+			</select>
 			<?php endif; ?>
 			<?php if((bool) !$_['isadmin']): ?>
 				<select class='quota' disabled="disabled">
@@ -69,7 +68,6 @@ $_['subadmingroups'] = array_flip($items);
 					</option>
 				</select>
 			<?php endif; ?>
-		</div>
 	</div>
 </div>
 
@@ -129,41 +127,39 @@ $_['subadmingroups'] = array_flip($items);
 			</td>
 			<?php endif;?>
 			<td class="quota">
-				<div class="quota-select-wrapper">
-					<select class='quota-user'>
-						<option
-							<?php if($user['quota']=='default') echo 'selected="selected"';?>
-								value='default'>
-							<?php echo $l->t('Default');?>
-						</option>
-						<option
-						<?php if($user['quota']=='none') echo 'selected="selected"';?>
-								value='none'>
-							<?php echo $l->t('Unlimited');?>
-						</option>
-						<?php foreach($_['quota_preset'] as $preset):?>
-						<option
-						<?php if($user['quota']==$preset) echo 'selected="selected"';?>
-							value='<?php echo $preset;?>'>
-							<?php echo $preset;?>
-						</option>
-						<?php endforeach;?>
-						<?php if($user['isQuotaUserDefined']):?>
-						<option selected="selected" value='<?php echo $user['quota'];?>'>
-							<?php echo $user['quota'];?>
-						</option>
-						<?php endif;?>
-						<option value='other'>
-							<?php echo $l->t('Other');?>
-							...
-						</option>
-					</select> <input class='quota-other'/>
-				</div>
+				<select class='quota-user'>
+					<option
+						<?php if($user['quota']=='default') echo 'selected="selected"';?>
+							value='default'>
+						<?php echo $l->t('Default');?>
+					</option>
+					<option
+					<?php if($user['quota']=='none') echo 'selected="selected"';?>
+							value='none'>
+						<?php echo $l->t('Unlimited');?>
+					</option>
+					<?php foreach($_['quota_preset'] as $preset):?>
+					<option
+					<?php if($user['quota']==$preset) echo 'selected="selected"';?>
+						value='<?php echo $preset;?>'>
+						<?php echo $preset;?>
+					</option>
+					<?php endforeach;?>
+					<?php if($user['isQuotaUserDefined']):?>
+					<option selected="selected" value='<?php echo $user['quota'];?>'>
+						<?php echo $user['quota'];?>
+					</option>
+					<?php endif;?>
+					<option value='other' data-new>
+						<?php echo $l->t('Other');?>
+						...
+					</option>
+				</select>
 			</td>
 			<td class="remove">
 				<?php if($user['name']!=OC_User::getUser()):?>
 					<a href="#" class="action delete" original-title="<?php echo $l->t('Delete')?>">
-						<img src="<?php echo image_path('core', 'actions/delete.svg') ?>" />
+						<img src="<?php echo image_path('core', 'actions/delete.svg') ?>" class="svg" />
 					</a>
 				<?php endif;?>
 			</td>
diff --git a/settings/users.php b/settings/users.php
index ab7a7aed73481ca06e677af94d4dbfb5108fc9dd..7fcd1d3ed023247f6d2b9327590bfffd44263a05 100644
--- a/settings/users.php
+++ b/settings/users.php
@@ -11,6 +11,7 @@ OC_App::loadApps();
 // We have some javascript foo!
 OC_Util::addScript( 'settings', 'users' );
 OC_Util::addScript( 'core', 'multiselect' );
+OC_Util::addScript( 'core', 'singleselect' );
 OC_Util::addScript('core', 'jquery.inview');
 OC_Util::addStyle( 'settings', 'settings' );
 OC_App::setActiveNavigationEntry( 'core_users' );
diff --git a/tests/lib/files/cache/updater.php b/tests/lib/files/cache/updater.php
index b83dd0c26e50ab20926388326e838ba48df820ef..7a79f45a20344e2038120442a310e1e8299cb132 100644
--- a/tests/lib/files/cache/updater.php
+++ b/tests/lib/files/cache/updater.php
@@ -45,7 +45,7 @@ class Updater extends \PHPUnit_Framework_TestCase {
 		if (!self::$user) {
 			if (!\OC\Files\Filesystem::getView()) {
 				self::$user = uniqid();
-				\OC\Files\Filesystem::init('/' . self::$user . '/files');
+				\OC\Files\Filesystem::init(self::$user, '/' . self::$user . '/files');
 			} else {
 				self::$user = \OC_User::getUser();
 			}
diff --git a/tests/lib/files/cache/watcher.php b/tests/lib/files/cache/watcher.php
index 1ea0c2eb47a8d3ee05cc76f884216c71f0d85b6c..e43c86ed4387636347dcb5e0a74acbd1bbb20ecb 100644
--- a/tests/lib/files/cache/watcher.php
+++ b/tests/lib/files/cache/watcher.php
@@ -76,7 +76,6 @@ class Watcher extends \PHPUnit_Framework_TestCase {
 		$updater->checkUpdate('');
 
 		$entry = $cache->get('foo.txt');
-		$this->assertEquals(-1, $entry['size']);
 		$this->assertEquals('httpd/unix-directory', $entry['mimetype']);
 		$this->assertFalse($cache->inCache('folder'));
 		$this->assertFalse($cache->inCache('folder/bar.txt'));
diff --git a/tests/lib/files/filesystem.php b/tests/lib/files/filesystem.php
index fd116af2d2e3d08320c2a50ec3985d9882140ae6..6ce45e6178a7c15c9c43d9e1163a4484a702ef4a 100644
--- a/tests/lib/files/filesystem.php
+++ b/tests/lib/files/filesystem.php
@@ -82,7 +82,7 @@ class Filesystem extends \PHPUnit_Framework_TestCase {
 			$user = \OC_User::getUser();
 		}else{
 			$user=uniqid();
-			\OC\Files\Filesystem::init('/'.$user.'/files');
+			\OC\Files\Filesystem::init($user, '/'.$user.'/files');
 		}
 		\OC_Hook::clear('OC_Filesystem');
 		\OC_Hook::connect('OC_Filesystem', 'post_write', $this, 'dummyHook');
diff --git a/tests/lib/files/storage/mappedlocal.php b/tests/lib/files/storage/mappedlocal.php
new file mode 100644
index 0000000000000000000000000000000000000000..b483f3a1954d7ae2139d78d90faf9bd827e8f717
--- /dev/null
+++ b/tests/lib/files/storage/mappedlocal.php
@@ -0,0 +1,40 @@
+<?php
+/**
+* ownCloud
+*
+* @author Robin Appelman
+* @copyright 2012 Robin Appelman icewind@owncloud.com
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+* License as published by the Free Software Foundation; either
+* version 3 of the License, or any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+*
+* You should have received a copy of the GNU Affero General Public
+* License along with this library.  If not, see <http://www.gnu.org/licenses/>.
+*
+*/
+
+namespace Test\Files\Storage;
+
+class MappedLocal extends Storage {
+	/**
+	 * @var string tmpDir
+	 */
+	private $tmpDir;
+	public function setUp() {
+		$this->tmpDir=\OC_Helper::tmpFolder();
+		$this->instance=new \OC\Files\Storage\MappedLocal(array('datadir'=>$this->tmpDir));
+	}
+
+	public function tearDown() {
+		\OC_Helper::rmdirr($this->tmpDir);
+		unset($this->instance);
+	}
+}
+