allowPorts = new HashSet<>(Arrays.asList(80, 443));
@@ -159,12 +174,12 @@ protected void initTarget() throws ServletException {
// If not set externally try to use the value from web.xml
if (StringUtils.isBlank(targetUriTemplate)) {
- super.initTarget();
+ targetUriTemplate = getConfigParam(P_TARGET_URI);
+ if (targetUriTemplate == null) {
+ throw new ServletException(P_TARGET_URI + " is required in web.xml or set externally");
+ }
}
- if (targetUriTemplate == null) {
- throw new ServletException(P_TARGET_URI + " is required in web.xml or set externally");
- }
this.getServletContext().setAttribute(this.getServletName() + "." + P_TARGET_URI, targetUriTemplate);
@@ -195,7 +210,7 @@ protected void initTarget() throws ServletException {
String additionalAllowPorts = getConfigValue(P_ALLOW_PORTS);
if (StringUtils.isBlank(additionalAllowPorts)) {
- additionalAllowPorts = getConfigParam(P_EXCLUDE_HOSTS);
+ additionalAllowPorts = getConfigParam(P_ALLOW_PORTS);
}
if (StringUtils.isNotBlank(additionalAllowPorts)) {
@@ -395,7 +410,7 @@ protected void service(HttpServletRequest servletRequest, HttpServletResponse se
switch (securityMode) {
case NONE:
- super.service(servletRequest, servletResponse);
+ internalService(servletRequest, servletResponse);
break;
case DB_LINK_CHECK:
boolean proxyCallAllowed = false;
@@ -445,7 +460,7 @@ protected void service(HttpServletRequest servletRequest, HttpServletResponse se
}
if (proxyCallAllowed) {
- super.service(servletRequest, servletResponse);
+ internalService(servletRequest, servletResponse);
}
break;
}
@@ -481,6 +496,100 @@ private boolean isUrlAllowed(HttpServletRequest servletRequest) {
}
}
+ /**
+ * Updated method from {{@link org.mitre.dsmiley.httpproxy.URITemplateProxyServlet#service(HttpServletRequest, HttpServletResponse)}}
+ * to support a parameter repeated with different values. The original code doesn't support these cases:
+ * param1=value1¶m1=value2¶m1=value3
+ *
+ * Example: when proxing Kibana requests like this failed using org.mitre.dsmiley.httpproxy.URITemplateProxyServlet:
+ *
+ * http://localhost:8080/geonetwork/dashboards/api/index_patterns/_fields_for_wildcard?pattern=gn-records&
+ * meta_fields=_source&meta_fields=_id&meta_fields=_type&meta_fields=_index&meta_fields=_score
+ *
+ * @param servletRequest
+ * @param servletResponse
+ * @throws ServletException
+ * @throws IOException
+ */
+ private void internalService(HttpServletRequest servletRequest, HttpServletResponse servletResponse)
+ throws ServletException, IOException {
+ //First collect params
+ /*
+ * Do not use servletRequest.getParameter(arg) because that will
+ * typically read and consume the servlet InputStream (where our
+ * form data is stored for POST). We need the InputStream later on.
+ * So we'll parse the query string ourselves. A side benefit is
+ * we can keep the proxy parameters in the query string and not
+ * have to add them to a URL encoded form attachment.
+ */
+ String requestQueryString = servletRequest.getQueryString();
+ String queryString = "";
+ if (requestQueryString != null) {
+ queryString = "?" + requestQueryString;//no "?" but might have "#"
+ }
+ int hash = queryString.indexOf('#');
+ if (hash >= 0) {
+ queryString = queryString.substring(0, hash);
+ }
+ List pairs;
+ try {
+ //note: HttpClient 4.2 lets you parse the string without building the URI
+ pairs = URLEncodedUtils.parse(new URI(queryString), StandardCharsets.UTF_8);
+ } catch (URISyntaxException e) {
+ throw new ServletException("Unexpected URI parsing error on " + queryString, e);
+ }
+
+ LinkedHashMap> params = new LinkedHashMap<>();
+ for (NameValuePair pair : pairs) {
+ params.computeIfAbsent(pair.getName(), k -> new ArrayList<>()).add(pair.getValue());
+ }
+
+ //Now rewrite the URL
+ StringBuilder urlBuf = new StringBuilder();//note: StringBuilder isn't supported by Matcher in Java < 9
+ Matcher matcher = TEMPLATE_PATTERN.matcher(targetUriTemplate);
+ while (matcher.find()) {
+ String arg = matcher.group(1);
+ List replacementValues = params.remove(arg); //note we remove
+
+ if (replacementValues == null) {
+ throw new ServletException("Missing HTTP parameter " + arg + " to fill the template");
+ }
+ String replacement = String.join(",", replacementValues);
+ matcher.appendReplacement(urlBuf, replacement);
+ }
+ matcher.appendTail(urlBuf);
+ String newTargetUri = urlBuf.toString();
+ servletRequest.setAttribute(ATTR_TARGET_URI, newTargetUri);
+ URI targetUriObj;
+ try {
+ targetUriObj = new URI(newTargetUri);
+ } catch (Exception e) {
+ throw new ServletException("Rewritten targetUri is invalid: " + newTargetUri, e);
+ }
+ servletRequest.setAttribute(ATTR_TARGET_HOST, URIUtils.extractHost(targetUriObj));
+
+ //Determine the new query string based on removing the used names
+ StringBuilder newQueryBuf = new StringBuilder(queryString.length());
+ for (Map.Entry> nameVal : params.entrySet()) {
+ for (String name : nameVal.getValue()) {
+ if (newQueryBuf.length() > 0)
+ newQueryBuf.append('&');
+
+ newQueryBuf.append(nameVal.getKey()).append('=');
+ if (name != null)
+ newQueryBuf.append(URLEncoder.encode(name, StandardCharsets.UTF_8));
+ }
+ }
+ servletRequest.setAttribute(ATTR_QUERY_STRING, newQueryBuf.toString());
+
+ super.service(servletRequest, servletResponse);
+ }
+
+ @Override
+ protected String rewriteQueryStringFromRequest(HttpServletRequest servletRequest, String queryString) {
+ return (String) servletRequest.getAttribute(ATTR_QUERY_STRING);
+ }
+
private enum SECURITY_MODE {
NONE,
diff --git a/web/src/main/webResources/WEB-INF/config-db/database_migration.xml b/web/src/main/webResources/WEB-INF/config-db/database_migration.xml
index 5496c1827b8..5a29fa97957 100644
--- a/web/src/main/webResources/WEB-INF/config-db/database_migration.xml
+++ b/web/src/main/webResources/WEB-INF/config-db/database_migration.xml
@@ -384,5 +384,10 @@
WEB-INF/classes/setup/sql/migrate/v443/migrate-
+
+
+ WEB-INF/classes/setup/sql/migrate/v444/migrate-
+
+
diff --git a/web/src/main/webResources/WEB-INF/config-spring-geonetwork.xml b/web/src/main/webResources/WEB-INF/config-spring-geonetwork.xml
index b4c9a195ea1..25dfae0cc86 100644
--- a/web/src/main/webResources/WEB-INF/config-spring-geonetwork.xml
+++ b/web/src/main/webResources/WEB-INF/config-spring-geonetwork.xml
@@ -101,6 +101,7 @@
spa
swe
tur
+ wel
diff --git a/web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql b/web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql
index ad4997d166f..767d8f7e91c 100644
--- a/web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql
+++ b/web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql
@@ -574,7 +574,7 @@ INSERT INTO Operations (id, name) VALUES (6,'featured');
INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/site/name', 'My GeoNetwork catalogue', 0, 110, 'n');
INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/site/siteId', '', 0, 120, 'n');
INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/site/organization', 'My organization', 0, 130, 'n');
-INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/platform/version', '4.4.3', 0, 150, 'n');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/platform/version', '4.4.4', 0, 150, 'n');
INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/platform/subVersion', 'SNAPSHOT', 0, 160, 'n');
INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/site/svnUuid', '', 0, 170, 'y');
diff --git a/web/src/main/webapp/WEB-INF/classes/setup/sql/data/loc-wel-default.sql b/web/src/main/webapp/WEB-INF/classes/setup/sql/data/loc-wel-default.sql
new file mode 100644
index 00000000000..65dce3ab573
--- /dev/null
+++ b/web/src/main/webapp/WEB-INF/classes/setup/sql/data/loc-wel-default.sql
@@ -0,0 +1,545 @@
+INSERT INTO Languages (id, name, isinspire) VALUES ('wel','Cymraeg', 'y');
+
+-- Take care to table ID (related to other loc files)
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (1,'wel','Mapiau & graffeg');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (2,'wel','Setiau data');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (3,'wel','Adnoddau rhyngweithiol');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (4,'wel','Ceisiadau');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (5,'wel','Astudiaethau achos, arferion gorau');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (6,'wel','Trafodion y gynhadledd');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (7,'wel','Llun');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (8,'wel','Sain/Fideo');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (9,'wel','Cyfeirlyfrau');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (10,'wel','Adnoddau gwybodaeth eraill');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (12,'wel','Cofrestri');
+INSERT INTO CategoriesDes (iddes, langid, label) VALUES (13,'wel','Samplau Corfforol');
+
+INSERT INTO GroupsDes (iddes, langid, label) VALUES (-1,'wel','Gwestai');
+INSERT INTO GroupsDes (iddes, langid, label) VALUES (0,'wel','Mewnrwyd');
+INSERT INTO GroupsDes (iddes, langid, label) VALUES (1,'wel','I gyd');
+INSERT INTO GroupsDes (iddes, langid, label) VALUES (2,'wel','Grŵp sampl');
+
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (1,'wel','Afar');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (2,'wel','Abkhazian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (3,'wel','Achinese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (4,'wel','Acoli');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (5,'wel','Adangme');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (6,'wel','Adyghe; Adygei');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (7,'wel','Afro-Asiatic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (8,'wel','Afrihili');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (9,'wel','Afrikaans');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (10,'wel','Ainu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (11,'wel','Akan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (12,'wel','Akkadian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (13,'wel','Albanian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (14,'wel','Aleut');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (15,'wel','Algonquian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (16,'wel','Southern Altai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (17,'wel','Amharic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (18,'wel','English, Old (ca.450-1100)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (19,'wel','Angika');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (20,'wel','Apache languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (21,'wel','Arabic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (22,'wel','Aramaic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (23,'wel','Aragonese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (24,'wel','Armenian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (25,'wel','Mapudungun; Mapuche');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (26,'wel','Arapaho');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (27,'wel','Artificial (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (28,'wel','Arawak');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (29,'wel','Assamese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (30,'wel','Asturian; Bable');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (31,'wel','Athapascan languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (32,'wel','Australian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (33,'wel','Avaric');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (34,'wel','Avestan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (35,'wel','Awadhi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (36,'wel','Aymara');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (37,'wel','Azerbaijani');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (38,'wel','Banda languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (39,'wel','Bamileke languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (40,'wel','Bashkir');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (41,'wel','Baluchi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (42,'wel','Bambara');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (43,'wel','Balinese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (44,'wel','Basque');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (45,'wel','Basa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (46,'wel','Baltic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (47,'wel','Beja');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (48,'wel','Belarusian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (49,'wel','Bemba');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (50,'wel','Bengali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (51,'wel','Berber (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (52,'wel','Bhojpuri');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (53,'wel','Bihari');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (54,'wel','Bikol');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (55,'wel','Bini; Edo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (56,'wel','Bislama');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (57,'wel','Siksika');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (58,'wel','Bantu (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (59,'wel','Bosnian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (60,'wel','Braj');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (61,'wel','Breton');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (62,'wel','Batak languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (63,'wel','Buriat');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (64,'wel','Buginese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (65,'wel','Bulgarian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (66,'wel','Burmese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (67,'wel','Blin; Bilin');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (68,'wel','Caddo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (69,'wel','Central American Indian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (70,'wel','Galibi Carib');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (71,'wel','Catalan; Valencian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (72,'wel','Caucasian (Other)on liturgique; welux bulgare');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (73,'wel','Cebuano');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (74,'wel','Celtic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (75,'wel','Chamorro');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (76,'wel','Chibcha');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (77,'wel','Chechen');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (78,'wel','Chagataier)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (79,'wel','Chinese(Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (80,'wel','Chuukese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (81,'wel','Mari');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (82,'wel','Chinook jargon');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (83,'wel','Choctaw');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (84,'wel','Chipewyan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (85,'wel','Cherokee');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (86,'wel','Church Slavic; Old Slavonic; Church Sl');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (87,'wel','Chuvash');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (88,'wel','Cheyenne');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (89,'wel','Chamic languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (90,'wel','Coptic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (91,'wel','Cornish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (92,'wel','Corsican');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (93,'wel','Creoles and pidgins, English based (Ot');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (94,'wel','Creoles and pidgins, French-based (Oth');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (95,'wel','Creoles and pidgins, Portuguese-based ');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (96,'wel','Cree');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (97,'wel','Crimean Tatar; Crimean Turkish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (98,'wel','Creoles and pidgins (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (99,'wel','Kashubian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (100,'wel','Cushitic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (101,'wel','Czech');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (102,'wel','Dakota');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (103,'wel','Danish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (104,'wel','Dargwa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (105,'wel','Land Dayak languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (106,'wel','Delaware');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (107,'wel','Slave (Athapascan)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (108,'wel','Dogrib');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (109,'wel','Dinka');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (110,'wel','Divehi; Dhivehi; Maldivian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (111,'wel','Dogri');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (112,'wel','Dravidian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (113,'wel','Lower Sorbian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (114,'wel','Duala');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (115,'wel','Dutch, Middle (ca.1050-1350)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (116,'wel','Dutch; Flemish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (117,'wel','Dyula');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (118,'wel','Dzongkha');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (119,'wel','Efik');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (120,'wel','Egyptian (Ancient)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (121,'wel','Ekajuk');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (122,'wel','Elamite');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (123,'wel','English');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (124,'wel','English, Middle (1100-1500)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (125,'wel','Esperanto');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (126,'wel','Estonian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (127,'wel','Ewe');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (128,'wel','Ewondo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (129,'wel','Fang');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (130,'wel','Faroese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (131,'wel','Fanti');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (132,'wel','Fijian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (133,'wel','Filipino; Pilipino');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (134,'wel','Finnish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (135,'wel','Finno-Ugrian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (136,'wel','Fon');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (137,'wel','French');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (138,'wel','French, Middle (ca.1400-1600)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (139,'wel','French, Old (842-ca.1400)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (140,'wel','Northern Frisian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (141,'wel','Eastern Frisian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (142,'wel','Western Frisian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (143,'wel','Fulah');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (144,'wel','Friulian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (145,'wel','Ga');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (146,'wel','Gayo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (147,'wel','Gbaya');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (148,'wel','Germanic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (149,'wel','Georgian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (150,'wel','German');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (151,'wel','Geez');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (152,'wel','Gilbertese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (153,'wel','Gaelic; Scottish Gaelic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (154,'wel','Irish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (155,'wel','Galician');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (156,'wel','Manx');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (157,'wel','German, Middle High (ca.1050-1500)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (158,'wel','German, Old High (ca.750-1050)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (159,'wel','Gondi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (160,'wel','Gorontalo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (161,'wel','Gothicanguage Association)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (162,'wel','Grebo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (163,'wel','Greek, Ancient (to 1453)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (164,'wel','Greek, Modern (1453-)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (165,'wel','Guarani');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (166,'wel','Swiss German; Alemannic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (167,'wel','Gujarati');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (168,'wel','Gwich''in');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (169,'wel','Haida');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (170,'wel','Haitian; Haitian Creole');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (171,'wel','Hausa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (172,'wel','Hawaiian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (173,'wel','Hebrew');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (174,'wel','Herero');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (175,'wel','Hiligaynon');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (176,'wel','Himachali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (177,'wel','Hindi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (178,'wel','Hittite');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (179,'wel','Hmong');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (180,'wel','Hiri Motu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (181,'wel','Upper Sorbian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (182,'wel','Hungarian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (183,'wel','Hupa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (184,'wel','Iban');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (185,'wel','Igbo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (186,'wel','Icelandic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (187,'wel','Ido');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (188,'wel','Sichuan Yi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (189,'wel','Ijo languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (190,'wel','Inuktitut');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (191,'wel','Interlingue');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (192,'wel','Iloko');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (193,'wel','Interlingua (International Auxiliary L');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (194,'wel','Indic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (195,'wel','Indonesian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (196,'wel','Indo-European (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (197,'wel','Ingush');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (198,'wel','Inupiaq');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (199,'wel','Iranian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (200,'wel','Iroquoian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (201,'wel','Italian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (202,'wel','Javanese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (203,'wel','Lojban');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (204,'wel','Japanese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (205,'wel','Judeo-Persian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (206,'wel','Judeo-Arabic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (207,'wel','Kara-Kalpak');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (208,'wel','Kabyle');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (209,'wel','Kachin; Jingpho');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (210,'wel','Kalaallisut; Greenlandic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (211,'wel','Kamba');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (212,'wel','Kannada');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (213,'wel','Karen languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (214,'wel','Kashmiri');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (215,'wel','Kanuri');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (216,'wel','Kawi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (217,'wel','Kazakh');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (218,'wel','Kabardian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (219,'wel','Khasi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (220,'wel','Khoisan (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (221,'wel','Central Khmer');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (222,'wel','Khotanese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (223,'wel','Kikuyu; Gikuyu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (224,'wel','Kinyarwanda');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (225,'wel','Kirghiz; Kyrgyz');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (226,'wel','Kimbundu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (227,'wel','Konkani');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (228,'wel','Komi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (229,'wel','Kongo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (230,'wel','Korean');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (231,'wel','Kosraean');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (232,'wel','Kpelle');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (233,'wel','Karachay-Balkar');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (234,'wel','Karelian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (235,'wel','Kru languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (236,'wel','Kurukh');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (237,'wel','Kuanyama; Kwanyama');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (238,'wel','Kumyk');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (239,'wel','Kurdish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (240,'wel','Kutenai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (241,'wel','Ladino');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (242,'wel','Lahnda');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (243,'wel','Lamba');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (244,'wel','Lao');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (245,'wel','Latin');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (246,'wel','Latvian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (247,'wel','Lezghian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (248,'wel','Limburgan; Limburger; Limburgish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (249,'wel','Lingala');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (250,'wel','Lithuanian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (251,'wel','Mongo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (252,'wel','Lozi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (253,'wel','Luxembourgish; Letzeburgesch');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (254,'wel','Luba-Lulua');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (255,'wel','Luba-Katangaxon, Low');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (256,'wel','Ganda');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (257,'wel','Luiseno');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (258,'wel','Lunda');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (259,'wel','Luo (Kenya and Tanzania)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (260,'wel','Lushai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (261,'wel','Macedonian00E5l');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (262,'wel','Madurese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (263,'wel','Magahi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (264,'wel','Marshallese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (265,'wel','Maithili');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (266,'wel','Makasarl Nepal Bhasa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (267,'wel','Malayalam');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (268,'wel','Mandingo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (269,'wel','Maori');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (270,'wel','Austronesian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (271,'wel','Marathi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (272,'wel','Masai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (273,'wel','Malay');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (274,'wel','Moksha');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (275,'wel','Mandar');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (276,'wel','Mende');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (277,'wel','Irish, Middle (900-1200)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (278,'wel','Mi''kmaq; Micmac');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (279,'wel','Minangkabau');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (280,'wel','Miscellaneous languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (281,'wel','Mon-Khmer (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (282,'wel','Malagasy');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (283,'wel','Maltese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (284,'wel','Manchu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (285,'wel','Manipuri');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (286,'wel','Manobo languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (287,'wel','Mohawk');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (288,'wel','Moldavian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (289,'wel','Mongolian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (290,'wel','Mossi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (291,'wel','Multiple languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (292,'wel','Munda languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (293,'wel','Creek');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (294,'wel','Mirandese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (295,'wel','Marwari');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (296,'wel','Mayan languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (297,'wel','Erzya');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (298,'wel','Nahuatl languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (299,'wel','North American Indian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (300,'wel','Neapolitan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (301,'wel','Nauru');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (302,'wel','Navajo; Navaho');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (303,'wel','Ndebele, South; South Ndebele');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (304,'wel','Ndebele, North; North Ndebele');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (305,'wel','Ndonga');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (306,'wel','Low German; Low Saxon; German, Low; Sa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (307,'wel','Nepali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (308,'wel','Nepal Bhasa; Newari');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (309,'wel','Nias');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (310,'wel','Niger-Kordofanian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (311,'wel','Niuean');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (312,'wel','Norwegian Nynorsk; Nynorsk, Norwegian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (313,'wel','Bokmål, Norwegian; Norwegian Bokmål');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (314,'wel','Nogai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (315,'wel','Norse, Old');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (316,'wel','Norwegian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (317,'wel','Pedi; Sepedi; Northern Sotho');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (318,'wel','Nubian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (319,'wel','Classical Newari; Old Newari; Classica');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (320,'wel','Chichewa; Chewa; Nyanja');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (321,'wel','Nyamwezi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (322,'wel','Nyankole');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (323,'wel','Nyoro');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (324,'wel','Nzima');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (325,'wel','Occitan (post 1500); Provençal');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (326,'wel','Ojibwa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (327,'wel','Oriya');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (328,'wel','Oromo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (329,'wel','Osage');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (330,'wel','Ossetian; Ossetic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (331,'wel','Turkish, Ottoman (1500-1928)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (332,'wel','Otomian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (333,'wel','Papuan (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (334,'wel','Pangasinan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (335,'wel','Pahlavi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (336,'wel','Pampanga');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (337,'wel','Panjabi; Punjabi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (338,'wel','Papiamento');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (339,'wel','Palauan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (340,'wel','Persian, Old (ca.600-400 B.C.)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (341,'wel','Persian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (342,'wel','Philippine (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (343,'wel','Phoenician');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (344,'wel','Pali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (345,'wel','Polish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (346,'wel','Pohnpeian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (347,'wel','Portuguese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (348,'wel','Prakrit languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (349,'wel','Provençal, Old (to 1500)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (350,'wel','Pushto');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (351,'wel','Reserved for local use');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (352,'wel','Quechua');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (353,'wel','Rajasthani');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (354,'wel','Rapanui');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (355,'wel','Rarotongan; Cook Islands Maori');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (356,'wel','Romance (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (357,'wel','Romansh');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (358,'wel','Romany');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (359,'wel','Romanian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (360,'wel','Rundi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (361,'wel','Aromanian; Arumanian; Macedo-Romanian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (362,'wel','Russian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (363,'wel','Sandawe');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (364,'wel','Sango');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (365,'wel','Yakut');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (366,'wel','South American Indian (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (367,'wel','Salishan languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (368,'wel','Samaritan Aramaic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (369,'wel','Sanskrit');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (370,'wel','Sasak');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (371,'wel','Santali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (372,'wel','Serbian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (373,'wel','Sicilian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (374,'wel','Scots');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (375,'wel','Croatian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (376,'wel','Selkup');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (377,'wel','Semitic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (378,'wel','Irish, Old (to 900)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (379,'wel','Sign Languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (380,'wel','Shan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (381,'wel','Sidamo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (382,'wel','Sinhala; Sinhalese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (383,'wel','Siouan languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (384,'wel','Sino-Tibetan (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (385,'wel','Slavic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (386,'wel','Slovak');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (387,'wel','Slovenian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (388,'wel','Southern Sami');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (389,'wel','Northern Sami');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (390,'wel','Sami languages (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (391,'wel','Lule Sami');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (392,'wel','Inari Sami');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (393,'wel','Samoan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (394,'wel','Skolt Sami');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (395,'wel','Shona');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (396,'wel','Sindhi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (397,'wel','Soninke');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (398,'wel','Sogdian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (399,'wel','Somali');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (400,'wel','Songhai languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (401,'wel','Sotho, Southern');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (402,'wel','Spanish; Castilian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (403,'wel','Sardinian; Zazaki');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (404,'wel','Sranan Tongo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (405,'wel','Serer');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (406,'wel','Nilo-Saharan (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (407,'wel','Swati');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (408,'wel','Sukuma');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (409,'wel','Sundanese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (410,'wel','Susu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (411,'wel','Sumerian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (412,'wel','Swahili');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (413,'wel','Swedish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (414,'wel','Syriac');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (415,'wel','Tahitian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (416,'wel','Tai (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (417,'wel','Tamil');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (418,'wel','Tatar');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (419,'wel','Telugu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (420,'wel','Timnendere)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (421,'wel','Tereno');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (422,'wel','Tetum');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (423,'wel','Tajik');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (424,'wel','Tagalog');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (425,'wel','Thai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (426,'wel','Tibetan');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (427,'wel','Tigre');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (428,'wel','Tigrinya');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (429,'wel','Tiv');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (430,'wel','Tokelau');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (431,'wel','Klingon; tlhIngan-Hol');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (432,'wel','Tlingit');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (433,'wel','Tamashek');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (434,'wel','Tonga (Nyasa)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (435,'wel','Tonga (Tonga Islands)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (436,'wel','Tok Pisin');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (437,'wel','Tsimshian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (438,'wel','Tswana');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (439,'wel','Tsonga');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (440,'wel','Turkmen');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (441,'wel','Tumbuka');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (442,'wel','Tupi languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (443,'wel','Turkish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (444,'wel','Altaic (Other)');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (445,'wel','Tuvalu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (446,'wel','Twi');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (447,'wel','Tuvinian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (448,'wel','Udmurt');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (449,'wel','Ugaritic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (450,'wel','Uighur; Uyghur');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (451,'wel','Ukrainian');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (452,'wel','Umbundu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (453,'wel','Undetermined');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (454,'wel','Urdu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (455,'wel','Uzbek');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (456,'wel','Vai');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (457,'wel','Venda');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (458,'wel','weltnamese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (459,'wel','Volapük');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (460,'wel','Votic');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (461,'wel','Wakashan languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (462,'wel','Walamo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (463,'wel','Waray');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (464,'wel','Washo');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (465,'wel','Cymraeg');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (466,'wel','Sorbian languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (467,'wel','Walloon');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (468,'wel','Wolof');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (469,'wel','Kalmyk; Oirat');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (470,'wel','Xhosa');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (471,'wel','Yao');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (472,'wel','Yapese');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (473,'wel','Yiddish');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (474,'wel','Yoruba');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (475,'wel','Yupik languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (476,'wel','Zapotec');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (477,'wel','Zenaga');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (478,'wel','Zhuang; Chuang');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (479,'wel','Zande languages');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (480,'wel','Zulu');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (481,'wel','Zuni');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (482,'wel','No linguistic content');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (483,'wel','N''Ko');
+INSERT INTO IsoLanguagesDes (iddes, langid, label) VALUES (484,'wel','Zaza; Dimili; Dimli; Kirdki; Kirmanjki');
+
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (0,'wel','Cyhoeddi');
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (1,'wel','Lawrlwytho');
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (2,'wel','Golygu');
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (3,'wel','Hysbysu');
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (5,'wel','Map Rhyngweithiol');
+INSERT INTO OperationsDes (iddes, langid, label) VALUES (6,'wel','Yn cael sylw');
+
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (0,'wel','Anhysbys');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (1,'wel','Drafft');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (2,'wel','Cymeradwywyd');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (3,'wel','Wedi ymddeol');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (4,'wel','Cyflwynwyd');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (5,'wel','Gwrthodwyd');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (50,'wel','Cofnod wedi''i greu.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (51,'wel','Cofnod wedi''i ddiweddaru.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (52,'wel','Atodiad {{h.item1}} wedi''i ychwanegu.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (53,'wel','Ymlyniad {{h.item1}} wedi''i ddileu');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (54,'wel','Perchennog wedi newid o {{h.item1}} i {{h.item2}}.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (55,'wel','Newidiodd perchennog y grŵp o {{h.item1}} i {{h.item2}}');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (56,'wel','Breintiau wedi''u diweddaru.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (57,'wel','Categori wedi''i newid. Nawr mae''r categorïau yn {{h.item1}}.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (58,'wel','Dilysu wedi''i sbarduno. Y statws ymadael nawr yw {{h.item1}}.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (59,'wel','Statws wedi''i newid o {{h.item1}} i {{h.item2}}.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (60,'wel','Diweddarwyd y cofnod trwy broses {{h.item1}}.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (61,'wel','Cofnod wedi''i ddileu.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (62,'wel','Cofnod wedi''i fewnforio.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (63,'wel','Cofnod wedi''i adfer.');
+INSERT INTO StatusValuesDes (iddes, langid, label) VALUES (100,'wel','Gofynnwyd am greu DOI.');
+
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'wel','Cofnodion a ffefrir');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'wel','Rhestr wylio');
+
+
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (-1,'wel', 'Cyfartaledd');
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (0,'wel', 'Cyflawnrwydd# A yw''r wybodaeth ar y dudalen hon yn ddigon cyflawn i wybod beth y gallwch ei ddisgwyl o''r set ddata hon?');
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (1,'wel', 'Discoverability#A oedd hi''n hawdd dod o hyd i''r dudalen wybodaeth hon?');
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (2,'wel', 'Darllenadwyedd#A oedd hi''n hawdd darllen a deall cynnwys y dudalen hon?');
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (3,'wel', 'Ansawdd data# A yw''r set ddata yn cynnwys y wybodaeth yr oeddech yn ei disgwyl, a oes gan y set ddata ddigon o gywirdeb, a yw''r data yn ddilys/yn gyfoes?');
+INSERT INTO GUF_RatingCriteriaDes (iddes, langid, label) VALUES (4,'wel', 'Ansawdd gwasanaeth# Darperir y set ddata fel gwasanaeth neu deip cyfryngol sy''n hawdd gweithio ag ef?');
diff --git a/web/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v444/migrate-default.sql b/web/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v444/migrate-default.sql
new file mode 100644
index 00000000000..8a49001716c
--- /dev/null
+++ b/web/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v444/migrate-default.sql
@@ -0,0 +1,2 @@
+UPDATE Settings SET value='4.4.4' WHERE name='system/platform/version';
+UPDATE Settings SET value='SNAPSHOT' WHERE name='system/platform/subVersion';
diff --git a/workers/camelPeriodicProducer/pom.xml b/workers/camelPeriodicProducer/pom.xml
index e07a3144e12..350861205e5 100644
--- a/workers/camelPeriodicProducer/pom.xml
+++ b/workers/camelPeriodicProducer/pom.xml
@@ -5,7 +5,7 @@
gn-workers
org.geonetwork-opensource
- 4.4.3-SNAPSHOT
+ 4.4.4-SNAPSHOT
4.0.0
diff --git a/workers/pom.xml b/workers/pom.xml
index 63202f133cc..32bdaa6f7dc 100644
--- a/workers/pom.xml
+++ b/workers/pom.xml
@@ -28,7 +28,7 @@
geonetwork
org.geonetwork-opensource
- 4.4.3-SNAPSHOT
+ 4.4.4-SNAPSHOT
4.0.0
diff --git a/workers/wfsfeature-harvester/pom.xml b/workers/wfsfeature-harvester/pom.xml
index 9ee202702ef..820cb0a83fe 100644
--- a/workers/wfsfeature-harvester/pom.xml
+++ b/workers/wfsfeature-harvester/pom.xml
@@ -28,7 +28,7 @@
gn-workers
org.geonetwork-opensource
- 4.4.3-SNAPSHOT
+ 4.4.4-SNAPSHOT
4.0.0
diff --git a/wro4j/pom.xml b/wro4j/pom.xml
index 9213bf55bff..e4d029fa68d 100644
--- a/wro4j/pom.xml
+++ b/wro4j/pom.xml
@@ -7,7 +7,7 @@
org.geonetwork-opensource
geonetwork
- 4.4.3-SNAPSHOT
+ 4.4.4-SNAPSHOT