diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..8b91d79 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +# .dockerignore +dev-database +node_modules +LICENCE +README.md +.git diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0e08982 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM node:alpine + +WORKDIR /app +COPY package*.json ./ +RUN npm install --force +RUN npm install next --force +COPY . . +RUN npx prisma generate +CMD npm run dev diff --git a/dev-database/Dockerfile b/dev-database/Dockerfile new file mode 100644 index 0000000..fdcd897 --- /dev/null +++ b/dev-database/Dockerfile @@ -0,0 +1,13 @@ +# Stage 1: Data Generation +FROM python:3.9 AS data-generation +WORKDIR /app +COPY ./data-generation/ /app/ +RUN pip install --no-cache-dir -r requirements.txt +RUN mkdir -p csv-out +RUN python script.py csv-in/users.csv > csv-out/users.csv + +# Stage 2: MySQL +FROM mysql:8.0 +WORKDIR /docker-entrypoint-initdb.d +COPY --from=data-generation /app/csv-out/users.csv /var/lib/mysql-files/users.csv +COPY ./mysql-init/ /docker-entrypoint-initdb.d/ diff --git a/dev-database/README.md b/dev-database/README.md new file mode 100644 index 0000000..211b1c4 --- /dev/null +++ b/dev-database/README.md @@ -0,0 +1,28 @@ +# Development database + +## Usage + +Either do `docker-compose up` in the project root directory (recommended). No other steps required. + +Or build a separate image based on the `Dockerfile` in this directory (see the `docker-compose.yml` at root to get an idea on how to run it). You will then need to update your `.env` file to point to this container. For example: + +``` +... +DATABASE_URL = "mysql://root:rootpassword@localhost:3306/mydb" +... +``` + +## Requirements + +You need to install `docker-compose`. Otherwise, other requirements should be handled inside the Docker containers. Unless you want to fiddle with the data generation code, which is in Python. Then I would recommend making a virtual environment within the `data-generation/` directory. + +## How it works + +There are some templates in `data-generation/csv-in`. The script that actually generates the new data is `data-generation/script.py`. + +The `Dockerfile` runs `python script.py csv-in/users.csv`. This should download some SSB name data, and create some random names. This new data is loaded into the MySQL container, and it initializes the tables and parses the new CSV file (see the `mysql-init/` directory). + +## To do + +- [x] Support the `User` table +- [ ] Support other tables. Right now, the website crashes if you try to fetch data from other tables than `User`. diff --git a/dev-database/data-generation/csv-in/users.csv b/dev-database/data-generation/csv-in/users.csv new file mode 100644 index 0000000..124b6a2 --- /dev/null +++ b/dev-database/data-generation/csv-in/users.csv @@ -0,0 +1,126 @@ +id,email,emailVerified,active,createdAt,updatedAt,firstName,lastName,recruitedById +008139f5-f362-49f8-80bb-35c90b8955bb,NULL,"2024-09-06 10:54:20.239",1,"2024-08-16 14:00:00.000","2024-09-06 10:54:20.240",NULL,NULL,NULL +12ba92f5-81a6-4f65-8914-e1311a18f02e,NULL,"2024-09-02 11:08:17.840",1,"2024-08-16 14:00:00.000","2024-09-02 11:08:17.841",NULL,NULL,NULL +1675916f-dc08-4c99-becb-b7e2b2f94b4b,NULL,"2024-09-09 09:27:14.280",1,"2024-08-16 14:00:00.000","2024-09-09 09:27:14.281",NULL,NULL,NULL +1d109fbb-52c1-4819-aa81-c3e7e1eba781,NULL,"2024-08-19 13:09:35.776",1,"2024-08-16 14:00:00.000","2024-08-19 13:09:35.777",NULL,NULL,NULL +21ee6880-49c3-4445-9e09-0310b9b021a7,NULL,"2024-09-02 11:05:22.526",1,"2024-08-16 14:00:00.000","2024-09-02 11:05:22.529",NULL,NULL,NULL +2f57e103-c981-47a6-97f8-7fb3ceafcd13,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +3367c6f4-25d2-46ab-8a02-dbd4d6b2891b,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +3512e4be-2ef2-4be3-bdc0-25ef3d2ec1f6,NULL,"2024-08-19 13:27:00.654",1,"2024-08-16 14:00:00.000","2024-08-19 13:27:00.655",NULL,NULL,NULL +351afbaa-49cf-4af5-9400-4a995d2ff4d5,NULL,"2024-09-11 11:11:58.138",1,"2024-08-16 14:00:00.000","2024-09-11 11:11:58.139",NULL,NULL,NULL +4327ffab-064e-4aed-88bd-72d86796d4a5,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +45b8418a-1b14-44d9-811f-9167fbbe7e6c,NULL,"2024-08-19 15:07:40.012",1,"2024-08-16 14:00:00.000","2024-08-19 15:07:40.013",NULL,NULL,NULL +4c3e3aed-58c4-4939-b463-11c1c5cf0a15,NULL,"2024-08-19 14:38:27.906",1,"2024-08-16 14:00:00.000","2024-08-19 14:38:27.907",NULL,NULL,NULL +4c99d3cd-60f0-4ca5-b4d7-25299a19302c,NULL,"2024-09-10 23:17:54.359",1,"2024-08-16 14:00:00.000","2024-09-10 23:17:54.360",NULL,NULL,NULL +52d2f946-e7cf-411b-913a-ac762640444c,NULL,"2024-08-23 17:10:15.973",1,"2024-08-16 14:00:00.000","2024-08-23 17:10:15.974",NULL,NULL,NULL +540e842e-0cae-48cc-8a21-eb4c658f661e,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +59c14d92-fd65-4455-88b9-dc29d2231da7,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +5b788025-c19e-4261-b061-51d3f4a22e67,NULL,"2024-09-05 17:24:55.821",1,"2024-08-16 14:00:00.000","2024-09-05 17:24:55.821",NULL,NULL,NULL +5d2495da-a3ad-4f50-8b01-7be2f138222a,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +6004d685-6833-4587-bf2a-1bd68cd10edb,NULL,"2024-08-26 10:08:03.670",1,"2024-08-16 14:00:00.000","2024-08-26 10:08:03.670",NULL,NULL,NULL +629a57f2-a2fd-48f5-b2f1-f447e30cf963,NULL,"2024-08-21 08:48:54.758",1,"2024-08-16 14:00:00.000","2024-08-21 08:48:54.759",NULL,NULL,NULL +6cd771d9-523c-4517-aa25-c7580c0b25b3,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +797549b7-1ce4-4d7b-8cc2-dfc7e582d8f3,NULL,"2024-08-20 17:20:44.567",1,"2024-08-16 14:00:00.000","2024-08-20 17:20:44.568",NULL,NULL,NULL +8114b669-5a01-40a3-b137-0f1d92c0ec68,NULL,"2024-08-16 12:49:28.997",1,"2024-08-16 14:00:00.000","2024-08-16 12:49:28.998",NULL,NULL,NULL +89297051-f45d-405f-9598-78a350c15013,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +8a7369be-6349-4a06-b342-4989e2d6dd27,NULL,"2024-08-19 13:54:12.144",1,"2024-08-16 14:00:00.000","2024-08-19 13:54:12.145",NULL,NULL,NULL +8b33e4ff-66de-49c7-9682-5d31a415452a,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +9274c373-6ae1-468d-aa10-23104537347a,NULL,"2024-08-26 09:00:07.780",1,"2024-08-16 14:00:00.000","2024-08-26 09:00:07.780",NULL,NULL,NULL +95af3fba-0bd1-46b7-86e2-a33c04192319,NULL,"2024-08-30 15:32:56.900",1,"2024-08-16 14:00:00.000","2024-08-30 15:32:56.901",NULL,NULL,NULL +9699efd6-14ee-4061-bc8f-d1536ad6aff9,NULL,"2024-08-16 13:52:40.598",1,"2024-08-16 14:00:00.000","2024-08-16 13:52:40.599",NULL,NULL,NULL +98238866-c528-44b7-a157-d220023a393b,NULL,"2024-09-06 17:43:36.311",1,"2024-08-16 14:00:00.000","2024-09-06 17:45:33.472",NULL,NULL,NULL +99a9a329-2f0c-41e1-9c31-7406b1d7645f,NULL,"2024-08-19 17:12:14.292",1,"2024-08-16 14:00:00.000","2024-09-06 17:55:48.497",NULL,NULL,NULL +9c0103a6-73ea-43bc-80c5-0a8a0cb4298f,NULL,"2024-08-26 16:37:09.523",1,"2024-08-16 14:00:00.000","2024-08-26 16:37:09.524",NULL,NULL,NULL +a0e8a125-0c25-48c9-b2a2-2e55d525f0e3,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +abc,NULL,NULL,1,"2024-09-10 21:00:00.000","2024-09-10 19:08:03.119",NULL,NULL,NULL +ad347419-41a4-4156-9675-a48736571a33,NULL,"2024-08-31 19:53:32.150",1,"2024-08-16 14:00:00.000","2024-08-31 19:53:32.151",NULL,NULL,NULL +bfd2c5aa-7879-4a5c-b433-f1c8b74a8c78,NULL,"2024-08-19 17:27:31.061",1,"2024-08-16 14:00:00.000","2024-08-19 17:27:31.062",NULL,NULL,NULL +c1f2fb2b-3063-40eb-bcb1-438f9a68c375,NULL,"2024-08-19 17:24:49.622",1,"2024-08-16 14:00:00.000","2024-08-19 17:24:49.623",NULL,NULL,NULL +c213d781-cb25-441a-8951-602f8892d376,NULL,"2024-08-19 13:12:41.775",1,"2024-08-16 14:00:00.000","2024-08-19 13:12:41.776",NULL,NULL,NULL +c8f8d6c3-6bc8-4c95-988c-96ad90ee742e,NULL,"2024-08-19 13:44:05.910",1,"2024-08-16 16:00:00.000","2024-08-19 13:44:05.911",NULL,NULL,NULL +clyndn63000008sccphzbj80x,NULL,"2024-07-15 21:22:18.513",1,"2024-07-15 19:28:03.469","2024-07-15 21:49:25.541",NULL,NULL,NULL +clza6aqbk00019hm3j4sjldcl,NULL,"2024-08-29 19:52:15.675",1,"2024-07-31 18:21:07.903","2024-08-29 19:52:15.675",NULL,NULL,NULL +clzaee81w00079hm366zt6rrf,NULL,"2024-08-11 17:13:41.270",1,"2024-07-31 22:07:47.779","2024-08-11 17:13:41.271",NULL,NULL,NULL +clzb6sh8r00033aefrxrbeirm,NULL,"2024-08-30 09:09:38.468",1,"2024-08-01 11:22:42.122","2024-08-30 09:09:38.469",NULL,NULL,NULL +clzbc29gt000h3aefzgffmwrk,NULL,"2024-09-08 17:35:42.854",1,"2024-08-01 13:50:16.685","2024-09-12 20:08:17.789",NULL,NULL,NULL +clzmpbryl000t3aefk318nx2u,NULL,"2024-08-28 08:44:03.267",1,"2024-08-09 12:47:03.500","2024-08-28 08:44:03.267",NULL,NULL,NULL +clzndljqx00012leikf2tsfq4,NULL,"2024-08-10 00:14:41.923",1,"2024-08-10 00:06:30.200","2024-08-10 00:14:41.924",NULL,NULL,NULL +clznxfxd1000b2leiedc89qb3,NULL,"2024-08-22 13:27:30.554",1,"2024-08-10 09:22:00.228","2024-08-22 13:27:30.555",NULL,NULL,NULL +clzr0z6rd0005n2de3szrvbw0,NULL,"2024-08-12 13:26:05.522",1,"2024-08-12 13:24:16.248","2024-08-12 13:26:05.523",NULL,NULL,NULL +clzsdvqd7000bn2de72c5xgqx,NULL,NULL,1,"2024-08-13 12:13:16.219","2024-08-13 12:13:38.320",NULL,NULL,NULL +clzsoec9f000fn2dee50ntnxt,NULL,"2024-08-18 13:59:45.602",1,"2024-08-13 17:07:40.563","2024-08-18 13:59:45.602",NULL,NULL,NULL +clzwnxqov001dn2de7i3lxp6t,NULL,"2024-08-16 12:06:45.852",0,"2024-08-16 12:05:50.814","2024-08-16 12:06:45.853",NULL,NULL,NULL +clzwshs4h004zn2degrffnf54,NULL,"2024-08-23 14:03:27.414",1,"2024-08-16 14:13:24.256","2024-08-23 14:03:27.415",NULL,NULL,NULL +clzx6nujp005bn2deywwoe4ep,NULL,"2024-08-16 20:51:22.304",1,"2024-08-16 20:50:01.956","2024-08-16 20:51:22.305",NULL,NULL,NULL +clzx719gt005jn2delbevvy0j,NULL,"2024-08-16 21:01:07.150",1,"2024-08-16 21:00:27.820","2024-08-16 21:01:07.151",NULL,NULL,NULL +clzye3h8v006bn2de44efi8rt,NULL,"2024-08-17 17:06:36.539",1,"2024-08-17 17:05:54.703","2024-08-17 17:06:36.540",NULL,NULL,NULL +clzzuh43r006jn2dergzzfuiz,NULL,"2024-08-18 17:33:21.760",1,"2024-08-18 17:32:10.886","2024-08-18 17:33:21.760",NULL,NULL,NULL +cm012fta30077n2de7hphv0ln,NULL,NULL,0,"2024-08-19 14:02:53.307","2024-08-19 14:02:53.307",NULL,NULL,NULL +cm01a6bwc007zn2deegb4pqo7,NULL,"2024-08-19 17:39:57.506",1,"2024-08-19 17:39:27.803","2024-08-20 09:47:00.424",NULL,NULL,NULL +cm028rao3000h59st6fi3z2ze,NULL,"2024-08-20 09:48:33.001",1,"2024-08-20 09:47:32.930","2024-08-20 09:48:33.005",NULL,NULL,NULL +cm02djj29000x59st0bobbaac,NULL,"2024-08-20 12:03:03.491",1,"2024-08-20 12:01:28.640","2024-08-20 12:03:03.491",NULL,NULL,NULL +cm03mpwnb002359stnbe6nx10,NULL,"2024-08-21 09:06:49.232",1,"2024-08-21 09:06:08.902","2024-08-21 09:06:49.233",NULL,NULL,NULL +cm03sm0wq002d59st1kmxd0yn,NULL,"2024-08-23 13:26:53.843",1,"2024-08-21 11:51:05.497","2024-09-11 22:07:26.891",NULL,NULL,NULL +cm03tehq2002l59stf859tdix,NULL,"2024-08-21 12:18:26.305",1,"2024-08-21 12:13:13.658","2024-08-21 12:18:26.306",NULL,NULL,NULL +cm058om0q003359sthhjoxsmf,NULL,"2024-08-29 14:56:50.722",1,"2024-08-22 12:08:46.200","2024-08-29 14:56:50.723",NULL,NULL,NULL +cm058txyc003959st3y3ip9ld,NULL,"2024-08-22 12:17:11.783",1,"2024-08-22 12:12:54.947","2024-08-22 12:17:11.783",NULL,NULL,NULL +cm059tn0g003l59st3xzz6726,NULL,"2024-09-11 10:05:13.680",1,"2024-08-22 12:40:40.384","2024-09-11 10:05:13.681",NULL,NULL,NULL +cm059u0u7003p59staujco8m1,NULL,"2024-08-22 12:41:55.429",1,"2024-08-22 12:40:58.303","2024-08-22 12:41:55.430",NULL,NULL,NULL +cm05cdvqy004559st5tixesi0,NULL,"2024-08-22 13:53:40.104",1,"2024-08-22 13:52:24.058","2024-08-22 13:53:40.104",NULL,NULL,NULL +cm05hyvgp004n59stcbu9xnwa,NULL,"2024-08-24 00:02:08.597",1,"2024-08-22 16:28:41.545","2024-08-24 00:02:08.598",NULL,NULL,NULL +cm05khkp9004v59stiajuvu4s,NULL,"2024-08-22 17:40:14.243",1,"2024-08-22 17:39:13.293","2024-08-22 17:40:14.244",NULL,NULL,NULL +cm05qnpdr005959stje8r7aw9,NULL,"2024-09-13 14:02:50.104",1,"2024-08-22 20:31:56.991","2024-09-13 14:02:50.105",NULL,NULL,NULL +cm06ln6zp005t59stachgzrrw,NULL,"2024-08-23 10:59:49.956",1,"2024-08-23 10:59:21.253","2024-08-23 10:59:49.957",NULL,NULL,NULL +cm06pv8z0006b59st5rc13d46,NULL,"2024-08-23 13:06:46.953",1,"2024-08-23 12:57:35.530","2024-09-13 13:20:34.999",NULL,NULL,NULL +cm078p0ff006t59st561x5bz6,NULL,NULL,0,"2024-08-23 21:44:37.225","2024-08-23 21:44:37.225",NULL,NULL,NULL +cm07a6mqq006x59stykewl3qh,NULL,"2024-08-23 22:28:46.537",1,"2024-08-23 22:26:18.914","2024-08-23 22:28:46.538",NULL,NULL,NULL +cm0axvlwq0007bz9ai4a7s8s0,NULL,"2024-08-26 11:53:43.398",1,"2024-08-26 11:52:53.929","2024-08-26 11:53:43.399",NULL,NULL,NULL +cm0ayg7le000lbz9ar2i6p0q3,NULL,"2024-08-26 12:11:32.403",1,"2024-08-26 12:08:55.153","2024-08-26 12:11:32.403",NULL,NULL,NULL +cm0az5aze000tbz9axt7ui7og,NULL,"2024-08-26 12:29:09.597",1,"2024-08-26 12:28:25.945","2024-08-26 12:29:09.598",NULL,NULL,NULL +cm0b1omrk001fbz9an1x43wzl,NULL,"2024-08-29 12:21:39.145",1,"2024-08-26 13:39:26.912","2024-08-29 12:21:39.145",NULL,NULL,NULL +cm0b23qn6001pbz9agutat60j,NULL,"2024-08-26 13:51:43.830",1,"2024-08-26 13:51:11.778","2024-08-26 13:51:43.831",NULL,NULL,NULL +cm0b2a57s0021bz9a9i27yosl,NULL,"2024-08-28 11:18:45.321",1,"2024-08-26 13:56:10.600","2024-08-28 11:18:45.322",NULL,NULL,NULL +cm0b2iw0o0027bz9aoeahlyy9,NULL,"2024-08-26 14:04:11.435",1,"2024-08-26 14:02:58.584","2024-08-26 14:04:11.436",NULL,NULL,NULL +cm0cap0y3002pbz9afiok95hi,NULL,"2024-09-03 09:18:20.003",1,"2024-08-27 10:39:28.011","2024-09-03 09:18:20.004",NULL,NULL,NULL +cm0cdt2kh0035bz9a2btttyil,NULL,"2024-09-09 14:25:53.007",1,"2024-08-27 12:06:35.585","2024-09-09 14:25:53.007",NULL,NULL,NULL +cm0ceqr4m003hbz9ak6ieag1i,NULL,"2024-09-13 18:51:28.471",1,"2024-08-27 12:32:47.062","2024-09-13 18:51:28.472",NULL,NULL,NULL +cm0cjen71003rbz9a2hmoxry6,NULL,"2024-08-27 14:44:08.199",1,"2024-08-27 14:43:20.173","2024-08-27 14:44:08.200",NULL,NULL,NULL +cm0cl1e1o0045bz9aflbxpazb,NULL,"2024-08-27 15:29:33.299",1,"2024-08-27 15:29:01.020","2024-08-27 15:29:33.300",NULL,NULL,NULL +cm0cllkoc004dbz9a28h91p79,NULL,"2024-08-27 15:49:31.577",1,"2024-08-27 15:44:42.732","2024-08-27 15:49:31.578",NULL,NULL,NULL +cm0clloo6004hbz9apdy296j7,NULL,"2024-09-09 10:10:01.425",1,"2024-08-27 15:44:47.910","2024-09-09 10:10:01.426",NULL,NULL,NULL +cm0cllp2k004lbz9a3g22by6m,NULL,"2024-09-05 17:25:00.765",1,"2024-08-27 15:44:48.428","2024-09-05 17:25:00.766",NULL,NULL,NULL +cm0dqvnmm005pbz9apjwvi31c,NULL,NULL,0,"2024-08-28 11:00:17.371","2024-08-28 11:00:17.371",NULL,NULL,NULL +cm0dyeecz005vbz9a4l1o7g45,NULL,"2024-09-01 15:41:42.739",1,"2024-08-28 14:30:49.138","2024-09-01 15:41:42.740",NULL,NULL,NULL +cm0f2lzjh005zbz9a6ex2hfms,NULL,"2024-08-29 09:17:10.434",1,"2024-08-29 09:16:27.821","2024-08-29 09:17:18.171",NULL,NULL,NULL +cm0fe5rf8006lbz9a3bfhbzo6,NULL,"2024-08-29 14:50:11.198",1,"2024-08-29 14:39:46.195","2024-08-29 14:50:11.199",NULL,NULL,NULL +cm0gl2irn000bsacjkscoevdg,NULL,"2024-09-13 15:04:16.666",1,"2024-08-30 10:40:58.498","2024-09-13 15:04:16.667",NULL,NULL,NULL +cm0guoul1000vsacjghptpk4q,NULL,"2024-08-30 15:12:45.427",1,"2024-08-30 15:10:16.788","2024-09-10 12:16:23.260",NULL,NULL,NULL +cm0l10iat000nsjsmbmh12lae,NULL,NULL,1,"2024-09-02 13:18:23.140","2024-09-02 13:19:06.213",NULL,NULL,NULL +cm0mqxsme001psjsmq0f2p6ln,NULL,"2024-09-05 13:06:26.015",1,"2024-09-03 18:11:52.740","2024-09-05 13:06:26.016",NULL,NULL,NULL +cm0piw0uv002psjsms0jelvbw,NULL,"2024-09-05 17:10:44.193",1,"2024-09-05 16:49:51.703","2024-09-05 17:10:44.194",NULL,NULL,NULL +cm0pm0nfq003dsjsmif8h8hft,NULL,NULL,0,"2024-09-05 18:17:26.438","2024-09-05 18:17:26.438",NULL,NULL,NULL +cm0pm0vlv003hsjsm271tk5ln,NULL,"2024-09-05 18:18:30.609",1,"2024-09-05 18:17:37.027","2024-09-05 18:18:30.610",NULL,NULL,NULL +cm0qiueru0043sjsmwq6raffq,NULL,"2024-09-06 09:36:54.986",1,"2024-09-06 09:36:22.601","2024-09-06 09:36:54.987",NULL,NULL,NULL +cm0qiukir0047sjsmlyr53bu9,NULL,"2024-09-06 09:37:59.257",1,"2024-09-06 09:36:30.051","2024-09-06 09:37:59.257",NULL,NULL,NULL +cm0qsk3920057sjsmzn1rlqun,NULL,"2024-09-06 14:09:34.753",1,"2024-09-06 14:08:17.270","2024-09-06 14:09:34.754",NULL,NULL,NULL +cm0qskisw005bsjsmb7t4ug0o,NULL,"2024-09-06 14:12:01.497",1,"2024-09-06 14:08:37.424","2024-09-06 14:12:01.498",NULL,NULL,NULL +cm0r3wguh006jsjsmxathjkbh,NULL,"2024-09-08 18:18:01.392",1,"2024-09-06 19:25:50.537","2024-09-09 09:05:56.591",NULL,NULL,NULL +cm0xqmfh20001eadx8g5hfy63,NULL,"2024-09-12 19:05:20.328",1,"2024-09-11 10:48:30.411","2024-09-12 19:05:20.330",NULL,NULL,NULL +cm119p5yh000v5deb5tic5tel,NULL,NULL,0,"2024-09-13 22:05:49.287","2024-09-13 22:05:49.287",NULL,NULL,NULL +cm17qxy6i00013e9956148nlr,NULL,NULL,0,"2024-09-18 10:55:09.635","2024-09-18 10:55:09.635",NULL,NULL,NULL +cm17qzevu00053e99v172aj06,NULL,"2024-09-18 10:57:49.397",1,"2024-09-18 10:56:17.935","2024-09-18 10:57:49.401",NULL,NULL,NULL +cm17svqai0001qwss8otgaegj,NULL,"2024-09-18 11:53:19.881",1,"2024-09-18 11:49:25.331","2024-09-24 11:20:21.379",NULL,NULL,NULL +cm1aqp8i60001ygfob5yzy2m7,NULL,NULL,1,"2024-09-20 13:11:41.639","2024-09-20 13:12:11.256",NULL,NULL,NULL +cm1eukmdi00017mvkro5w50ou,NULL,"2024-09-23 10:11:50.818",1,"2024-09-23 10:11:09.506","2024-09-23 10:11:50.819",NULL,NULL,NULL +d039d6e2-dcdf-44a9-84ab-5df40b66f76f,NULL,"2024-08-19 19:12:00.966",1,"2024-08-16 14:00:00.000","2024-09-04 10:17:57.654",NULL,NULL,NULL +d03f1437-8b3f-40bc-bc0b-4d11b4592eef,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +d0d58516-c765-44dd-8cba-c5ab1ec8cea5,NULL,"2024-09-06 17:16:26.560",1,"2024-08-16 14:00:00.000","2024-09-06 17:16:26.561",NULL,NULL,NULL +d1281435-648e-42e1-a0eb-f8900dc1e4d5,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +db24d3e9-76e2-47a5-9415-9e8331cb1f4a,NULL,"2024-09-13 15:03:57.676",1,"2024-08-16 14:00:00.000","2024-09-13 15:04:42.254",NULL,NULL,NULL +dd188201-5e06-4680-b0de-f162f64696ef,NULL,"2024-09-06 11:01:58.841",1,"2024-08-16 14:00:00.000","2024-09-06 11:01:58.842",NULL,NULL,NULL +e26330b2-7a8c-494e-af40-c6eb544e9337,NULL,"2024-09-09 09:09:56.775",1,"2024-08-16 14:00:00.000","2024-09-09 09:09:56.776",NULL,NULL,NULL +e8d6b9c2-450e-44f2-a8e0-e567d1723c76,NULL,NULL,1,"2024-08-16 15:00:00.000","2024-08-16 15:00:00.000",NULL,NULL,NULL +ef90a3e4-d1b2-4136-b278-f6e26c351680,NULL,"2024-08-26 13:22:55.486",1,"2024-08-16 14:00:00.000","2024-08-26 13:22:55.487",NULL,NULL,NULL +f29b7def-a0b6-415d-88f7-cad44486da98,NULL,NULL,1,"2024-08-16 16:00:00.000","2024-08-16 16:00:00.000",NULL,NULL,NULL +f875391c-cef3-406f-8343-1fbff04008a7,NULL,NULL,1,"2024-08-16 14:00:00.000","2024-08-16 14:00:00.000",NULL,NULL,NULL +fb936bd4-aa93-4c30-96c9-0f6927f3eb0b,NULL,"2024-08-29 10:39:48.054",1,"2024-08-16 14:00:00.000","2024-08-29 10:39:48.055",NULL,NULL,NULL diff --git a/dev-database/data-generation/namegen/__init__.py b/dev-database/data-generation/namegen/__init__.py new file mode 100644 index 0000000..b59d056 --- /dev/null +++ b/dev-database/data-generation/namegen/__init__.py @@ -0,0 +1 @@ +from .namegen import * diff --git a/dev-database/data-generation/namegen/etternavn.json b/dev-database/data-generation/namegen/etternavn.json new file mode 100644 index 0000000..e8f4aaf --- /dev/null +++ b/dev-database/data-generation/namegen/etternavn.json @@ -0,0 +1,3667 @@ +{ + "query": [ + { + "code": "Etternavn", + "selection": { + "filter": "vs:Etternavn01", + "values": [ + "AA", + "AABEL", + "AABERG", + "AABY", + "AABZ2", + "AADLAND", + "AAE", + "AAEN", + "AAGAARD", + "AAGESEN", + "AAKERVIK", + "AAKRE", + "AAKVIK", + "AALAND", + "AALBERG", + "AALVIK", + "AAM", + "AAMODT", + "AAMOT", + "AANDAHL", + "AANDAL", + "AANENSEN", + "AANERUD", + "AANES", + "AANESTAD", + "AANONSEN", + "AANSTAD", + "AARDAL", + "AARFLOT", + "AARHUS", + "AARLAND", + "AARNES", + "AARRESTAD", + "AARSAND", + "AARSETH", + "AARSKOG", + "AARSLAND", + "AARSTAD", + "AARUM", + "AARVIK", + "AARZ2", + "AAS", + "AASBERG", + "AASBZ2", + "AASE", + "AASEBZ2", + "AASEN", + "AASERUD", + "AASETH", + "AASGAARD", + "AASHEIM", + "AASLAND", + "AASLUND", + "AASS", + "ABBAS", + "ABDALLA", + "ABDALLAH", + "ABDI", + "ABDIRAHMAN", + "ABDO", + "ABDULLA", + "ABDULLAH", + "ABDULLAHI", + "ABDULLE", + "ABELSEN", + "ABRAHA", + "ABRAHAM", + "ABRAHAMSEN", + "ABUKAR", + "ADAM", + "ADAN", + "ADEN", + "ADOLFSEN", + "AFZAL", + "AGA", + "AGLEN", + "AHMAD", + "AHMADI", + "AHMADZAI", + "AHMED", + "AKBARI", + "AKER", + "AKHTAR", + "AKRAM", + "AKSDAL", + "AKSELSEN", + "AKSNES", + "ALAHMAD", + "ALALI", + "ALBERTSEN", + "ALBRIGTSEN", + "ALEKSANDERSEN", + "ALEXANDERSEN", + "ALFHEIM", + "ALFREDSEN", + "ALFSEN", + "ALGRZ2Y", + "ALHASAN", + "ALHUSSEIN", + "ALI", + "ALIBRAHIM", + "ALLUM", + "ALM", + "ALMAAS", + "ALME", + "ALMLI", + "ALMZ3S", + "ALNES", + "ALNZ1S", + "ALSAKER", + "ALSOS", + "ALSTAD", + "ALSVIK", + "ALVER", + "ALVESTAD", + "ALVHEIM", + "ALVZ1R", + "AMBLE", + "AMDAHL", + "AMDAL", + "AMDAM", + "AMIN", + "AMINI", + "AMIRI", + "AMLIE", + "AMUNDSEN", + "ANDA", + "ANDERSEN", + "ANDERSON", + "ANDERSSEN", + "ANDERSSON", + "ANDORSEN", + "ANDREASSEN", + "ANDRESEN", + "ANDVIK", + "ANFINSEN", + "ANGELL", + "ANGELSEN", + "ANGELTVEIT", + "ANGVIK", + "ANKER", + "ANTHONSEN", + "ANTI", + "ANTONSEN", + "ANWAR", + "APELAND", + "ARAYA", + "ARCTANDER", + "ARIF", + "ARNEBERG", + "ARNESEN", + "ARNESTAD", + "ARNEVIK", + "ARNTSEN", + "ARNTZEN", + "ARNZ2Y", + "ARONSEN", + "ARSHAD", + "ARSLAN", + "ARVESEN", + "ASBJZ2RNSEN", + "ASGHAR", + "ASHEIM", + "ASHRAF", + "ASK", + "ASKE", + "ASKELAND", + "ASKEVOLD", + "ASKILDSEN", + "ASKIM", + "ASKVIK", + "ASLAKSEN", + "ASLAM", + "ASP", + "ASPAAS", + "ASPELUND", + "ASPEN", + "ASPENES", + "ASPHAUG", + "ASTRUP", + "AUESTAD", + "AUGESTAD", + "AUKLAND", + "AULIE", + "AUNAN", + "AUNE", + "AURDAL", + "AURE", + "AURSTAD", + "AUSLAND", + "AUSTAD", + "AUSTBZ2", + "AUSTNES", + "AUSTRHEIM", + "AWAD", + "AXELSEN", + "AZIZ", + "AZIZI", + "BAARDSEN", + "BACH", + "BACKE", + "BAKK", + "BAKKA", + "BAKKAN", + "BAKKE", + "BAKKEHAUG", + "BAKKEJORD", + "BAKKELI", + "BAKKELUND", + "BAKKEN", + "BAKKER", + "BAKKERUD", + "BAKKETUN", + "BAKSTAD", + "BALLESTAD", + "BALSTAD", + "BALTZERSEN", + "BANG", + "BARAN", + "BARKA", + "BARMEN", + "BARSTAD", + "BARTH", + "BARTNES", + "BASHIR", + "BASTIANSEN", + "BAUER", + "BAUGE", + "BAUMANN", + "BAUSTAD", + "BAY", + "BECH", + "BECK", + "BECKER", + "BEGUM", + "BEKKELUND", + "BEKKEN", + "BEKKEVOLD", + "BELL", + "BELSVIK", + "BENDIKSEN", + "BENDIXEN", + "BENGTSSON", + "BENJAMINSEN", + "BENONISEN", + "BENTSEN", + "BENTZEN", + "BERDAL", + "BERENTSEN", + "BERG", + "BERGAN", + "BERGE", + "BERGEM", + "BERGENE", + "BERGER", + "BERGERSEN", + "BERGERUD", + "BERGESEN", + "BERGET", + "BERGGREN", + "BERGH", + "BERGHANSEN", + "BERGHEIM", + "BERGLAND", + "BERGLI", + "BERGLUND", + "BERGMAN", + "BERGMANN", + "BERGO", + "BERGQUIST", + "BERGSENG", + "BERGSET", + "BERGSETH", + "BERGSTRZ2M", + "BERGSVIK", + "BERGTUN", + "BERGUM", + "BERHANE", + "BERHE", + "BERISHA", + "BERLAND", + "BERNHARDSEN", + "BERNTSEN", + "BERNTZEN", + "BERRE", + "BERSTAD", + "BERTELSEN", + "BERTHELSEN", + "BERTHEUSSEN", + "BETTEN", + "BEYENE", + "BEYER", + "BHATTI", + "BIBI", + "BILSTAD", + "BIRKEDAL", + "BIRKELAND", + "BIRKELI", + "BIRKELUND", + "BIRKENES", + "BJELLAND", + "BJERGA", + "BJERK", + "BJERKAN", + "BJERKE", + "BJERKELI", + "BJERKELUND", + "BJERKESTRAND", + "BJERKLI", + "BJERKNES", + "BJERKVIK", + "BJERKZ3S", + "BJORDAL", + "BJORLAND", + "BJORZ2Y", + "BJUNE", + "BJZ2NNES", + "BJZ2NNESS", + "BJZ2RDAL", + "BJZ2RGAN", + "BJZ2RGE", + "BJZ2RGEN", + "BJZ2RGO", + "BJZ2RGUM", + "BJZ2RHEIM", + "BJZ2RK", + "BJZ2RKE", + "BJZ2RKEDAL", + "BJZ2RKHAUG", + "BJZ2RKHEIM", + "BJZ2RKLI", + "BJZ2RKLUND", + "BJZ2RKMO", + "BJZ2RKNES", + "BJZ2RKUM", + "BJZ2RKZ3S", + "BJZ2RLO", + "BJZ2RN", + "BJZ2RNDAL", + "BJZ2RNDALEN", + "BJZ2RNERUD", + "BJZ2RNES", + "BJZ2RNESTAD", + "BJZ2RNEVIK", + "BJZ2RNSEN", + "BJZ2RNSTAD", + "BJZ2RNZ2", + "BJZ2RNZ2Y", + "BJZ2RNZ3", + "BJZ2RSETH", + "BJZ2RSVIK", + "BJZ2RVIK", + "BLAKSTAD", + "BLINDHEIM", + "BLIX", + "BLOM", + "BLOMBERG", + "BLOMQUIST", + "BLOMVIK", + "BLYSTAD", + "BODIN", + "BOGE", + "BOGEN", + "BOGSTRAND", + "BOLME", + "BOLSTAD", + "BONDEVIK", + "BONES", + "BONSAKSEN", + "BORCH", + "BORCHGREVINK", + "BORE", + "BORG", + "BORGAN", + "BORGE", + "BORGEN", + "BORGERSEN", + "BORGUND", + "BORLAUG", + "BORSHEIM", + "BOSTAD", + "BOTNEN", + "BOTTEN", + "BOYE", + "BRAASTAD", + "BRAATEN", + "BRAATHEN", + "BRAGSTAD", + "BRAKSTAD", + "BRANDAL", + "BRANDT", + "BRANDTZZ1G", + "BRANDVIK", + "BRASETH", + "BRASTAD", + "BRATAAS", + "BRATBERG", + "BRATLAND", + "BRATLI", + "BRATLIE", + "BRATSBERG", + "BRATTENG", + "BRATTLI", + "BRATTZ3S", + "BRATVOLD", + "BRAUT", + "BREDAL", + "BREDESEN", + "BREEN", + "BREILAND", + "BREISTEIN", + "BREIVIK", + "BREKKA", + "BREKKE", + "BREKKEN", + "BREMNES", + "BREMSETH", + "BRENDEN", + "BRENNA", + "BRENNE", + "BREVIG", + "BREVIK", + "BRINGEDAL", + "BROBAKKEN", + "BROCH", + "BRODAHL", + "BRODERSEN", + "BROEN", + "BROVOLD", + "BROWN", + "BROX", + "BRU", + "BRUASET", + "BRUBAKKEN", + "BRUDEVOLL", + "BRUDVIK", + "BRUHEIM", + "BRULAND", + "BRUN", + "BRUNBORG", + "BRUNES", + "BRUNSTAD", + "BRUNVOLL", + "BRUSTAD", + "BRUUN", + "BRUVIK", + "BRUVOLL", + "BRYHN", + "BRYN", + "BRYNE", + "BRYNILDSEN", + "BRYNJULFSEN", + "BRZ1KKE", + "BRZ1KKEN", + "BRZ1ND", + "BRZ1NDEN", + "BRZ2NDBO", + "BRZ2NSTAD", + "BRZ3TEN", + "BRZ3THEN", + "BU", + "BUAN", + "BUE", + "BUENE", + "BUER", + "BUGGE", + "BUGTEN", + "BUI", + "BULJO", + "BULL", + "BUNES", + "BURAAS", + "BURUD", + "BUSCH", + "BUSK", + "BUTT", + "BUVARP", + "BUVIK", + "BY", + "BYBERG", + "BYE", + "BYRKJELAND", + "BYSTRZ2M", + "BZ1KKEN", + "BZ1RHEIM", + "BZ1VRE", + "BZ2", + "BZ2DTKER", + "BZ2E", + "BZ2EN", + "BZ2HLER", + "BZ2HMER", + "BZ2HN", + "BZ2RNES", + "BZ2RRESEN", + "BZ2RSETH", + "BZ2RSHEIM", + "BZ2RSTAD", + "BZ2RVE", + "BZ2THUN", + "BZ2YUM", + "BZ3RDSEN", + "BZ3TNES", + "CAO", + "CAPPELEN", + "CARLSEN", + "CARLSON", + "CARLSSON", + "CASPERSEN", + "CELIK", + "CELIUS", + "CHAN", + "CHAUDHRY", + "CHEN", + "CHRISTENSEN", + "CHRISTIANSEN", + "CHRISTOFFERSEN", + "CHRISTOPHERSEN", + "CLAUSEN", + "CLAUSSEN", + "CORNELIUSSEN", + "DAAE", + "DAGESTAD", + "DAGSLAND", + "DAHIR", + "DAHL", + "DAHLBERG", + "DAHLE", + "DAHLEN", + "DAHLGREN", + "DAHLSTRZ2M", + "DALAKER", + "DALBY", + "DALE", + "DALEN", + "DALENE", + "DALENG", + "DALHAUG", + "DALHEIM", + "DALLAND", + "DALSBZ2", + "DALSETH", + "DAMMEN", + "DANG", + "DANIEL", + "DANIELSEN", + "DAR", + "DASILVA", + "DAVID", + "DAVIDSEN", + "DEHLI", + "DEMIR", + "DERZ3S", + "DEVIK", + "DEVOLD", + "DIDRIKSEN", + "DIESEN", + "DIGERNES", + "DIGRE", + "DIMMEN", + "DINH", + "DIRDAL", + "DITLEFSEN", + "DJUPVIK", + "DJUVE", + "DJZ2NNE", + "DO", + "DOAN", + "DOKKEN", + "DRABLZ2S", + "DRAGE", + "DRAGESET", + "DRAGLAND", + "DRAMSTAD", + "DRANGE", + "DREVLAND", + "DREYER", + "DRIVENES", + "DRZ2NEN", + "DUE", + "DUONG", + "DVERGSDAL", + "DYB", + "DYBDAHL", + "DYBDAL", + "DYBVIK", + "DYBWAD", + "DYNGELAND", + "DYRDAL", + "DYRHAUG", + "DYRKORN", + "DYRNES", + "DYRSETH", + "DYRSTAD", + "DYRZ2Y", + "DZ2RUM", + "EBBESEN", + "ECKHOFF", + "EDLAND", + "EDVARDSEN", + "EDVARTSEN", + "EEG", + "EEK", + "EGE", + "EGEBERG", + "EGELAND", + "EGELI", + "EGENES", + "EGGAN", + "EGGE", + "EGGEN", + "EGGUM", + "EID", + "EIDE", + "EIDEM", + "EIDET", + "EIDISSEN", + "EIDSHEIM", + "EIDSVIK", + "EIDSVZ3G", + "EIE", + "EIK", + "EIKAAS", + "EIKE", + "EIKELAND", + "EIKEMO", + "EIKEN", + "EIKENES", + "EIKREM", + "EIKZ3S", + "EILERTSEN", + "EINAN", + "EINARSEN", + "EINVIK", + "EIRA", + "EK", + "EKEBERG", + "EKELAND", + "EKELI", + "EKELUND", + "EKERHOVD", + "EKKER", + "EKLUND", + "EKNES", + "EKRE", + "EKREM", + "EKREN", + "EKROLL", + "EKSTRZ2M", + "ELDE", + "ELDEN", + "ELDEVIK", + "ELIASSEN", + "ELLEFSEN", + "ELLINGSEN", + "ELMI", + "ELNES", + "ELSTAD", + "ELTON", + "ELTVIK", + "ELVEBAKK", + "ELVENES", + "ELVERUM", + "ELVESTAD", + "ELVIK", + "EMANUELSEN", + "EMBERLAND", + "EMBLEM", + "EMILSEN", + "ENDAL", + "ENDRESEN", + "ENERSEN", + "ENES", + "ENG", + "ENGAN", + "ENGDAL", + "ENGE", + "ENGEBAKKEN", + "ENGEBRETSEN", + "ENGEDAL", + "ENGELAND", + "ENGELSEN", + "ENGELSTAD", + "ENGEN", + "ENGENES", + "ENGER", + "ENGESET", + "ENGESETH", + "ENGEVIK", + "ENGH", + "ENGLUND", + "ENGSETH", + "ENGSTAD", + "ENGSTRZ2M", + "ENGUM", + "ENGVIK", + "ENOKSEN", + "ENSRUD", + "ERDAL", + "ERGA", + "ERICHSEN", + "ERIKSEN", + "ERIKSRUD", + "ERIKSSON", + "ERIKSTAD", + "ERLAND", + "ERLANDSEN", + "ERNSTSEN", + "ERSLAND", + "ERSTAD", + "ERTSZ3S", + "ERVIK", + "ESKEDAL", + "ESKELAND", + "ESPE", + "ESPEDAL", + "ESPELAND", + "ESPELID", + "ESPENES", + "ESPESETH", + "ESTENSEN", + "EVANGER", + "EVENRUD", + "EVENSEN", + "EVENSTAD", + "EVERTSEN", + "EVJE", + "EVJEN", + "EVJU", + "FADNES", + "FAGERBAKKE", + "FAGERENG", + "FAGERHAUG", + "FAGERHEIM", + "FAGERLAND", + "FAGERLI", + "FAGERMO", + "FAGERNES", + "FAGERTUN", + "FAGERVIK", + "FAGERVOLD", + "FAGERZ3S", + "FALCH", + "FALCK", + "FALK", + "FALKENBERG", + "FALLET", + "FANEBUST", + "FARAH", + "FARDAL", + "FARESTVEIT", + "FAROOQ", + "FARSTAD", + "FAUSKANGER", + "FAUSKE", + "FEDJE", + "FENNE", + "FERAGEN", + "FERKINGSTAD", + "FERNANDEZ", + "FERSTAD", + "FEVANG", + "FIDJE", + "FIDJELAND", + "FIGENSCHAU", + "FIGENSCHOU", + "FIKSDAL", + "FIMLAND", + "FIMREITE", + "FINNE", + "FINNERUD", + "FINNESAND", + "FINNZ2Y", + "FINSETH", + "FINSRUD", + "FINSTAD", + "FISCHER", + "FISKE", + "FISKERSTRAND", + "FISKUM", + "FISKVIK", + "FISKZ3", + "FJELD", + "FJELDBERG", + "FJELDE", + "FJELDHEIM", + "FJELDSTAD", + "FJELL", + "FJELLANGER", + "FJELLDAL", + "FJELLESTAD", + "FJELLHEIM", + "FJELLSTAD", + "FJELLVANG", + "FJERMESTAD", + "FJZ1R", + "FJZ1REIDE", + "FJZ1RLI", + "FJZ2RTOFT", + "FLAA", + "FLAATEN", + "FLAGE", + "FLATAKER", + "FLATEBZ2", + "FLATEN", + "FLATLAND", + "FLATMO", + "FLATZ2Y", + "FLATZ3S", + "FLEISCHER", + "FLEM", + "FLESLAND", + "FLO", + "FLZ2", + "FLZ2NES", + "FLZ2TRE", + "FLZ2YSVIK", + "FLZ3TEN", + "FOLDNES", + "FOLGERZ2", + "FOLKEDAL", + "FOLKESTAD", + "FOLKVORD", + "FOLLAND", + "FOLLESTAD", + "FONN", + "FONNES", + "FORBERG", + "FORBORD", + "FORLAND", + "FORMO", + "FORNES", + "FORSBERG", + "FORSETH", + "FORSMO", + "FOSEN", + "FOSS", + "FOSSAN", + "FOSSDAL", + "FOSSE", + "FOSSEN", + "FOSSER", + "FOSSHAUG", + "FOSSHEIM", + "FOSSLAND", + "FOSSLI", + "FOSSMARK", + "FOSSMO", + "FOSSNES", + "FOSSUM", + "FOTLAND", + "FRAFJORD", + "FRAMNES", + "FRANK", + "FRANTZEN", + "FREDHEIM", + "FREDRIKSEN", + "FREMSTAD", + "FRETHEIM", + "FRIBERG", + "FRIESTAD", + "FRIGSTAD", + "FRIIS", + "FRIVOLD", + "FROGNER", + "FROST", + "FROSTAD", + "FRYDENBERG", + "FRYDENLUND", + "FRZ2ILAND", + "FRZ2LAND", + "FRZ2SETH", + "FRZ2SHAUG", + "FRZ2YEN", + "FRZ2YLAND", + "FRZ2YSA", + "FRZ2YSTAD", + "FUGLERUD", + "FUGLESTAD", + "FURE", + "FURNES", + "FURRE", + "FURSET", + "FURSETH", + "FURU", + "FURUHAUG", + "FURUHEIM", + "FURULUND", + "FURUNES", + "FURUSETH", + "FYHN", + "FYKSE", + "FYLKESNES", + "FYLLING", + "FYLLINGEN", + "FZ2LSTAD", + "FZ2RDE", + "FZ2RELAND", + "FZ2RLAND", + "FZ2RRE", + "FZ2RSUND", + "GAARD", + "GAARDER", + "GABRIELSEN", + "GAMST", + "GANGSTAD", + "GARBERG", + "GARCIA", + "GARNES", + "GARSHOL", + "GARVIK", + "GASHI", + "GAUP", + "GAUSDAL", + "GAUSTAD", + "GEBREMARIAM", + "GEBREMEDHIN", + "GEBREMICHAEL", + "GEORGSEN", + "GERHARDSEN", + "GILBERG", + "GILDE", + "GILJE", + "GILL", + "GILLEBO", + "GIMRE", + "GIMSE", + "GISKE", + "GIZ1VER", + "GJEDREM", + "GJELSTAD", + "GJELSTEN", + "GJELSVIK", + "GJENDEM", + "GJENGEDAL", + "GJENGSTZ2", + "GJERDE", + "GJERDINGEN", + "GJERDRUM", + "GJERLZ2W", + "GJERMUNDSEN", + "GJERNES", + "GJERSTAD", + "GJERSVIK", + "GJERSZ2E", + "GJERTSEN", + "GJERULDSEN", + "GJERVIK", + "GJESDAL", + "GJESSING", + "GJESTAD", + "GJESTVANG", + "GJZ2EN", + "GJZ2NNES", + "GJZ2SUND", + "GLAD", + "GLEDITSCH", + "GLESNES", + "GLOPPEN", + "GOA", + "GODZ2", + "GOKSZ2YR", + "GONZALEZ", + "GRAFF", + "GRAM", + "GRAMSTAD", + "GRAN", + "GRANBERG", + "GRANDE", + "GRANERUD", + "GRANHEIM", + "GRANLI", + "GRANLUND", + "GRANLY", + "GRANMO", + "GRANNES", + "GRANUM", + "GRANZ3S", + "GRAV", + "GRAVDAHL", + "GRAVDAL", + "GRAVEM", + "GREBSTAD", + "GREEN", + "GREGERSEN", + "GREVE", + "GRIMNES", + "GRIMSMO", + "GRIMSRUD", + "GRIMSTAD", + "GRINDE", + "GRINDEN", + "GRINDHAUG", + "GRINDHEIM", + "GRINI", + "GRONGSTAD", + "GROTH", + "GROTLE", + "GROV", + "GROVEN", + "GRUDE", + "GRUE", + "GRYTTEN", + "GRZ2DEM", + "GRZ2NBECH", + "GRZ2NBERG", + "GRZ2NDAHL", + "GRZ2NDAL", + "GRZ2NDALEN", + "GRZ2NENG", + "GRZ2NHAUG", + "GRZ2NLI", + "GRZ2NLIE", + "GRZ2NLIEN", + "GRZ2NLUND", + "GRZ2NN", + "GRZ2NNESTAD", + "GRZ2NNEVIK", + "GRZ2NNING", + "GRZ2NNINGSZ1TER", + "GRZ2NSBERG", + "GRZ2NSETH", + "GRZ2NSTAD", + "GRZ2NVIK", + "GRZ2NVOLD", + "GRZ2NZ3S", + "GRZ2STAD", + "GRZ2TAN", + "GRZ2TERUD", + "GRZ2TTE", + "GRZ2TTING", + "GUDBRANDSEN", + "GUDDAL", + "GUDMESTAD", + "GUDMUNDSEN", + "GULBRANDSEN", + "GULDAHL", + "GULDBERG", + "GULLAKSEN", + "GULLI", + "GULLIKSEN", + "GUNDERSEN", + "GUNNARSEN", + "GUNNARSSON", + "GUNNERUD", + "GUNNERZ2D", + "GUNNES", + "GUNNESTAD", + "GUPTA", + "GUSSIZ3S", + "GUSTAD", + "GUSTAFSSON", + "GUSTAVSEN", + "GUSTAVSON", + "GUTTORM", + "GUTTORMSEN", + "GYLLAND", + "GZ3RDEN", + "GZ3SLAND", + "HA", + "HAAGENSEN", + "HAAKONSEN", + "HAALAND", + "HAARBERG", + "HAARR", + "HAARSTAD", + "HAAVE", + "HAAVIK", + "HABBERSTAD", + "HABBESTAD", + "HABTE", + "HADDAL", + "HADDELAND", + "HADLAND", + "HAFSTAD", + "HAGA", + "HAGBERG", + "HAGE", + "HAGELAND", + "HAGELUND", + "HAGEN", + "HAGENES", + "HAGERUP", + "HAGLAND", + "HAGLUND", + "HAGOS", + "HAIDARI", + "HAIDER", + "HAILE", + "HAJI", + "HALDEN", + "HALDORSEN", + "HALL", + "HALLAN", + "HALLAND", + "HALLBERG", + "HALLE", + "HALLELAND", + "HALLEM", + "HALLERAKER", + "HALLINGSTAD", + "HALS", + "HALSE", + "HALSEN", + "HALSETH", + "HALSTENSEN", + "HALVORSEN", + "HALVORSRUD", + "HAMBORG", + "HAMID", + "HAMMER", + "HAMMEREN", + "HAMMERSLAND", + "HAMMERSTAD", + "HAMMERVOLD", + "HAMMERZ2", + "HAMNES", + "HAMRE", + "HANA", + "HANDELAND", + "HANNESTAD", + "HANNISDAL", + "HANSEN", + "HANSSEN", + "HANSSON", + "HANSTAD", + "HARALDSEID", + "HARALDSEN", + "HARALDSTAD", + "HARAM", + "HARBO", + "HAREIDE", + "HARESTAD", + "HARILA", + "HARKESTAD", + "HARLEM", + "HARNES", + "HARSTAD", + "HARSVIK", + "HARTMANN", + "HARTVEIT", + "HARTVIGSEN", + "HARTVIKSEN", + "HASAN", + "HASANI", + "HASHEMI", + "HASHI", + "HASLE", + "HASSAN", + "HASSANI", + "HASSEL", + "HASSELBERG", + "HASUND", + "HATLAND", + "HATLEM", + "HATLEN", + "HATLESTAD", + "HATLEVIK", + "HATLZ2Y", + "HATTELAND", + "HAUAN", + "HAUG", + "HAUGAN", + "HAUGE", + "HAUGEN", + "HAUGER", + "HAUGERUD", + "HAUGLAND", + "HAUGLI", + "HAUGLID", + "HAUGNES", + "HAUGO", + "HAUGOM", + "HAUGSDAL", + "HAUGSETH", + "HAUGSTAD", + "HAUGSVZ1R", + "HAUGUM", + "HAUGVALDSTAD", + "HAUKAAS", + "HAUKEDAL", + "HAUKELAND", + "HAUKENES", + "HAUKLAND", + "HAUKZ3S", + "HAUSKEN", + "HAUSO", + "HAVELAND", + "HAVER", + "HAVIK", + "HAVN", + "HAVNEN", + "HAY", + "HEBNES", + "HEEN", + "HEGDAL", + "HEGG", + "HEGGDAL", + "HEGGE", + "HEGGEDAL", + "HEGGELUND", + "HEGGEM", + "HEGGEN", + "HEGGERNES", + "HEGGESTAD", + "HEGGHEIM", + "HEGGLAND", + "HEGGLUND", + "HEGGSET", + "HEGGZ2Y", + "HEGLAND", + "HEGNA", + "HEGRE", + "HEGSTAD", + "HEIA", + "HEIBERG", + "HEIDARI", + "HEIDE", + "HEIEN", + "HEIER", + "HEIM", + "HEIMARK", + "HEIMDAL", + "HEIMSTAD", + "HEISTAD", + "HEITMANN", + "HELBERG", + "HELDAL", + "HELGELAND", + "HELGERUD", + "HELGESEN", + "HELGESTAD", + "HELGHEIM", + "HELGZ2Y", + "HELLA", + "HELLAN", + "HELLAND", + "HELLE", + "HELLEBUST", + "HELLEBZ2", + "HELLELAND", + "HELLEM", + "HELLENES", + "HELLEREN", + "HELLERUD", + "HELLESZ2", + "HELLESZ2Y", + "HELLEVIK", + "HELLIESEN", + "HELLSTRZ2M", + "HELLUM", + "HELMERSEN", + "HELSET", + "HELSETH", + "HELSTAD", + "HELTNE", + "HELVIK", + "HEM", + "HEMMINGSEN", + "HEMNES", + "HENDEN", + "HENNINGSEN", + "HENNUM", + "HENRIKSEN", + "HEPSZ2", + "HERDLEVZ1R", + "HERFINDAL", + "HERHEIM", + "HERIGSTAD", + "HERLAND", + "HERMANN", + "HERMANSEN", + "HERNANDEZ", + "HERNES", + "HERNZ1S", + "HERSTAD", + "HERVIK", + "HESJEDAL", + "HESKESTAD", + "HESSELBERG", + "HESSEN", + "HESTAD", + "HESTENES", + "HESTETUN", + "HESTNES", + "HESTVIK", + "HETLAND", + "HEUM", + "HEVRZ2Y", + "HEXEBERG", + "HEYERDAHL", + "HIDLE", + "HILDE", + "HILDRE", + "HILDRUM", + "HILLE", + "HILLEREN", + "HILLESTAD", + "HILMARSEN", + "HILSTAD", + "HINDENES", + "HINNA", + "HIRSI", + "HJELDE", + "HJELLE", + "HJELM", + "HJELMELAND", + "HJELSETH", + "HJELVIK", + "HJORT", + "HJORTH", + "HJORTLAND", + "HJULSTAD", + "HJZ2NNEVZ3G", + "HJZ2RNEVIK", + "HO", + "HOANG", + "HOBBERSTAD", + "HODDEVIK", + "HODNE", + "HODNELAND", + "HODZIC", + "HOEL", + "HOEM", + "HOFF", + "HOFFMANN", + "HOFSETH", + "HOFSTAD", + "HOFTUN", + "HOGNESTAD", + "HOGSTAD", + "HOJEM", + "HOKSTAD", + "HOL", + "HOLAND", + "HOLBERG", + "HOLDEN", + "HOLE", + "HOLEN", + "HOLGERSEN", + "HOLLUND", + "HOLM", + "HOLMBERG", + "HOLME", + "HOLMEDAL", + "HOLMEFJORD", + "HOLMEN", + "HOLMGREN", + "HOLMSEN", + "HOLMSTRZ2M", + "HOLMVIK", + "HOLMZ2Y", + "HOLSEN", + "HOLST", + "HOLSTAD", + "HOLT", + "HOLTA", + "HOLTAN", + "HOLTE", + "HOLTEN", + "HOLTER", + "HOLTET", + "HOLTH", + "HOLTHE", + "HOLUM", + "HOLVIK", + "HOMME", + "HONNINGSVZ3G", + "HOP", + "HOPE", + "HOPEN", + "HOPLAND", + "HOPSDAL", + "HORDNES", + "HORDVIK", + "HORGEN", + "HORN", + "HORNE", + "HORNNES", + "HORNTVEDT", + "HORPESTAD", + "HORTEN", + "HORVEI", + "HOSET", + "HOSETH", + "HOSSEINI", + "HOTVEDT", + "HOV", + "HOVD", + "HOVDA", + "HOVDAL", + "HOVDE", + "HOVDEN", + "HOVE", + "HOVEN", + "HOVIN", + "HOVIND", + "HOVLAND", + "HUANG", + "HULT", + "HUNNES", + "HUNSTAD", + "HURLEN", + "HUSA", + "HUSABZ2", + "HUSBY", + "HUSE", + "HUSEBY", + "HUSEBZ2", + "HUSEVZ3G", + "HUSSAIN", + "HUSSAINI", + "HUSSEIN", + "HUSTAD", + "HUSTOFT", + "HUSTVEIT", + "HUSUM", + "HUSZ2Y", + "HUUS", + "HUYNH", + "HVAL", + "HVATTUM", + "HVEDING", + "HVEEM", + "HVIDSTEN", + "HYLLAND", + "HYNNE", + "HYSTAD", + "HZ1GELAND", + "HZ1TTA", + "HZ2GBERG", + "HZ2GLI", + "HZ2GLUND", + "HZ2GSET", + "HZ2GSETH", + "HZ2GZ3S", + "HZ2IBERG", + "HZ2IBY", + "HZ2IE", + "HZ2ILAND", + "HZ2INES", + "HZ2ISETH", + "HZ2ISTAD", + "HZ2IVIK", + "HZ2LLAND", + "HZ2VIK", + "HZ2YDAHL", + "HZ2YDAL", + "HZ2YE", + "HZ2YEM", + "HZ2YER", + "HZ2YLAND", + "HZ2YVIK", + "HZ3GENSEN", + "HZ3HEIM", + "HZ3KONSEN", + "HZ3LAND", + "HZ3NES", + "HZ3PNES", + "HZ3RSTAD", + "HZ3VIK", + "IBRAHIM", + "IDEN", + "IDLAND", + "IDRIS", + "IDSZ2", + "IDSZ2E", + "IGLAND", + "IHLE", + "IHLEN", + "ILYAS", + "IMRAN", + "IMS", + "INDAHL", + "INDERGZ3RD", + "INDREBZ2", + "INGEBRETSEN", + "INGEBRIGTSEN", + "INGVALDSEN", + "INNVZ1R", + "IQBAL", + "IRGENS", + "ISACHSEN", + "ISAKSEN", + "ISDAHL", + "ISDAL", + "ISENE", + "ISLAM", + "ISMAIL", + "ISSA", + "ISTAD", + "IVANOV", + "IVANOVA", + "IVERSEN", + "JACOBSEN", + "JAFARI", + "JAHNSEN", + "JAHR", + "JAHREN", + "JAKOBSEN", + "JAMA", + "JANSEN", + "JANSSON", + "JAVED", + "JENSEN", + "JENSRUD", + "JENSSEN", + "JENTOFT", + "JEPPESEN", + "JERSTAD", + "JESPERSEN", + "JESSEN", + "JEVNAKER", + "JEVNE", + "JOA", + "JOAKIMSEN", + "JOHANNESEN", + "JOHANNESSEN", + "JOHANSEN", + "JOHANSON", + "JOHANSSON", + "JOHNSEN", + "JOHNSON", + "JOHNSRUD", + "JOHNSTAD", + "JONASSEN", + "JONES", + "JONSSON", + "JORDAL", + "JORDALEN", + "JORDAN", + "JORDET", + "JORDHEIM", + "JOSDAL", + "JOSEFSEN", + "JOVANOVIC", + "JUELL", + "JULIUSSEN", + "JUSTAD", + "JUUL", + "JUVIK", + "JZ1GER", + "JZ2NSSON", + "JZ2RGENSEN", + "JZ2RSTAD", + "JZ2SSANG", + "JZ3SUND", + "KAASA", + "KAHRS", + "KAHSAY", + "KALAND", + "KALDESTAD", + "KALDHEIM", + "KALLAND", + "KALLEBERG", + "KALLESTAD", + "KALLEVIK", + "KALSTAD", + "KALVIK", + "KANESTRZ2M", + "KAPSTAD", + "KARA", + "KARIM", + "KARIMI", + "KARLSEN", + "KARLSON", + "KARLSRUD", + "KARLSSON", + "KARLSTAD", + "KARLSTRZ2M", + "KAROLIUSSEN", + "KARSTENSEN", + "KASIN", + "KASPERSEN", + "KAUPANG", + "KAUR", + "KAUSAR", + "KAVLI", + "KAYA", + "KHALAF", + "KHALID", + "KHALIL", + "KHAN", + "KIBSGAARD", + "KIDANE", + "KIELLAND", + "KIHLE", + "KIIL", + "KILDAHL", + "KILDAL", + "KILE", + "KILEN", + "KILLI", + "KIM", + "KIND", + "KING", + "KINN", + "KIRKEBY", + "KIRKERUD", + "KIRKEVOLD", + "KIRKHUS", + "KIRKNES", + "KITTELSEN", + "KITTILSEN", + "KJEILEN", + "KJELDSBERG", + "KJELDSEN", + "KJELLEVOLD", + "KJELSBERG", + "KJELSRUD", + "KJELSTAD", + "KJERSTAD", + "KJESBU", + "KJOS", + "KJZ1R", + "KJZ1RLAND", + "KJZ1RNES", + "KJZ1RSTAD", + "KJZ1RVIK", + "KJZ2DE", + "KJZ2LBERG", + "KJZ2LSTAD", + "KJZ2RSTAD", + "KJZ2RSVIK", + "KJZ2SNES", + "KLAKEGG", + "KLAUSEN", + "KLAUSSEN", + "KLAVENES", + "KLEIN", + "KLEIV", + "KLEIVELAND", + "KLEIVEN", + "KLEMETSEN", + "KLEPP", + "KLEPPA", + "KLEPPE", + "KLETTE", + "KLEV", + "KLEVELAND", + "KLEVEN", + "KLINGENBERG", + "KLOKK", + "KLOSTER", + "KLUNGLAND", + "KLUNGTVEIT", + "KLYVE", + "KLZ1BOE", + "KLZ2VSTAD", + "KNAPSTAD", + "KNARVIK", + "KNOPH", + "KNOTTEN", + "KNUDSEN", + "KNUTSEN", + "KOCH", + "KOFOED", + "KOLBERG", + "KOLBJZ2RNSEN", + "KOLLE", + "KOLLTVEIT", + "KOLNES", + "KOLSETH", + "KOLSRUD", + "KOLSTAD", + "KOLSTZ2", + "KOLZ3S", + "KOMMEDAL", + "KONGSHAUG", + "KONGSRUD", + "KONGSVIK", + "KONRADSEN", + "KOPPANG", + "KOPPERUD", + "KOREN", + "KORNELIUSSEN", + "KORSLUND", + "KORSMO", + "KORSNES", + "KORSVIK", + "KORSVOLD", + "KOVALENKO", + "KOWALCZYK", + "KOWALSKI", + "KRAFT", + "KRANE", + "KRASNIQI", + "KRINGSTAD", + "KRISTENSEN", + "KRISTIANSEN", + "KRISTOFFERSEN", + "KROG", + "KROGH", + "KROGSRUD", + "KROGSTAD", + "KROGSZ1TER", + "KROHN", + "KROKEN", + "KROKSTAD", + "KRONSTAD", + "KROSBY", + "KRUSE", + "KRYGER", + "KRZ3KENES", + "KULSETH", + "KUMAR", + "KVAAL", + "KVAALE", + "KVALE", + "KVALHEIM", + "KVALNES", + "KVALSUND", + "KVALSVIK", + "KVALVIK", + "KVALVZ3G", + "KVALZ2", + "KVALZ2Y", + "KVAM", + "KVAME", + "KVAMME", + "KVAMMEN", + "KVAMSDAL", + "KVANDAL", + "KVANDE", + "KVARME", + "KVARSNES", + "KVELLO", + "KVERNBERG", + "KVERNELAND", + "KVERNMO", + "KVIA", + "KVIEN", + "KVILHAUG", + "KVINGE", + "KVINLAUG", + "KVINNESLAND", + "KVISTAD", + "KVZ1RNER", + "KVZ3LE", + "KYDLAND", + "KYLLINGSTAD", + "KYVIK", + "KZ3RSTAD", + "KZ3SA", + "LAASTAD", + "LADE", + "LAGESEN", + "LALAND", + "LAM", + "LAMO", + "LAMPE", + "LANDA", + "LANDE", + "LANDMARK", + "LANDRO", + "LANDRZ2", + "LANDSEM", + "LANDSVERK", + "LANGAAS", + "LANGBRZ3TEN", + "LANGE", + "LANGEDAL", + "LANGELAND", + "LANGEN", + "LANGERUD", + "LANGFELDT", + "LANGHELLE", + "LANGHOLM", + "LANGLI", + "LANGLO", + "LANGMO", + "LANGNES", + "LANGSET", + "LANGSETH", + "LANGVIK", + "LANGZ2", + "LANGZ2RGEN", + "LANGZ2Y", + "LANGZ3KER", + "LANGZ3S", + "LARSEN", + "LARSSEN", + "LARSSON", + "LASSEN", + "LAUGEN", + "LAURITSEN", + "LAURITZEN", + "LAURSEN", + "LAUSUND", + "LAUTEN", + "LAUVRAK", + "LAUVZ3S", + "LAVIK", + "LE", + "LEA", + "LEE", + "LEHMANN", + "LEHN", + "LEHNE", + "LEIDLAND", + "LEIKANGER", + "LEIKNES", + "LEIKVOLL", + "LEIN", + "LEINE", + "LEIRA", + "LEIRDAL", + "LEIRVIK", + "LEIRVZ3G", + "LEISTAD", + "LEITE", + "LEITHE", + "LEIVESTAD", + "LEKNES", + "LEKVEN", + "LENDE", + "LENES", + "LEONHARDSEN", + "LEREN", + "LERSTAD", + "LERVIK", + "LERVZ3G", + "LERZ2Y", + "LETNES", + "LEVANG", + "LI", + "LIA", + "LIABZ2", + "LIAN", + "LIBERG", + "LID", + "LIDAL", + "LIE", + "LIED", + "LIEN", + "LIENG", + "LIER", + "LIKNES", + "LILAND", + "LILLEBERG", + "LILLEBY", + "LILLEBZ2", + "LILLEENG", + "LILLEENGEN", + "LILLEGZ3RD", + "LILLEHAGEN", + "LILLEJORD", + "LILLELAND", + "LILLEMO", + "LILLENG", + "LILLESTZ2L", + "LILLETVEDT", + "LILLEVIK", + "LILLEZ3S", + "LIMA", + "LIND", + "LINDAHL", + "LINDAL", + "LINDANGER", + "LINDBERG", + "LINDE", + "LINDGAARD", + "LINDGREN", + "LINDHJEM", + "LINDHOLM", + "LINDLAND", + "LINDQUIST", + "LINDQVIST", + "LINDSETH", + "LINDSTAD", + "LINDSTRZ2M", + "LINDVIK", + "LINDZ3S", + "LINGE", + "LINNERUD", + "LISETH", + "LIU", + "LIUM", + "LIVERZ2D", + "LJONES", + "LJOSLAND", + "LOCKERT", + "LODE", + "LOE", + "LOEN", + "LOFTHUS", + "LOG", + "LOHNE", + "LOKZ2Y", + "LOMELAND", + "LONA", + "LONE", + "LONGVA", + "LOPEZ", + "LORENTSEN", + "LORENTZEN", + "LOSSIUS", + "LOTHE", + "LU", + "LUDVIGSEN", + "LUDVIKSEN", + "LUND", + "LUNDAL", + "LUNDBERG", + "LUNDBY", + "LUNDE", + "LUNDEBY", + "LUNDEKVAM", + "LUNDEMO", + "LUNDEN", + "LUNDER", + "LUNDESTAD", + "LUNDGREN", + "LUNDGZ3RD", + "LUNDH", + "LUNDQUIST", + "LURA", + "LYCHE", + "LYDERSEN", + "LYGRE", + "LYNG", + "LYNGMO", + "LYNGSTAD", + "LYNGVZ1R", + "LYNUM", + "LYSAKER", + "LYSE", + "LYSEN", + "LYSGZ3RD", + "LYSHAUG", + "LYSNE", + "LYSSAND", + "LYSTAD", + "LYSZ2", + "LZ1GREID", + "LZ1RUM", + "LZ2BERG", + "LZ2CHEN", + "LZ2DEMEL", + "LZ2GE", + "LZ2KEN", + "LZ2KKE", + "LZ2KKEBERG", + "LZ2KKEN", + "LZ2KZ3S", + "LZ2LAND", + "LZ2NNING", + "LZ2SET", + "LZ2SETH", + "LZ2TVEIT", + "LZ2VAAS", + "LZ2VBERG", + "LZ2VDAL", + "LZ2VER", + "LZ2VIK", + "LZ2VLAND", + "LZ2VLI", + "LZ2VLIE", + "LZ2VLIEN", + "LZ2VOLD", + "LZ2VOLL", + "LZ2VSETH", + "LZ2VSTAD", + "LZ2VZ3S", + "LZ2YNING", + "LZ3STAD", + "MADLAND", + "MADSEN", + "MAGERZ2Y", + "MAGNUS", + "MAGNUSSEN", + "MAGNUSSON", + "MAHAMED", + "MAHAMMED", + "MAHAMUD", + "MAHMOOD", + "MAHMOUD", + "MAHMUD", + "MAJID", + "MALDE", + "MALIK", + "MALIN", + "MALM", + "MALME", + "MALMEDAL", + "MALMIN", + "MALMO", + "MALVIK", + "MANDAL", + "MANDELID", + "MANNES", + "MARCUSSEN", + "MARDAL", + "MARKEN", + "MARKHUS", + "MARKUSSEN", + "MARSTEIN", + "MARTENS", + "MARTHINSEN", + "MARTHINUSSEN", + "MARTIN", + "MARTINEZ", + "MARTINSEN", + "MARTINUSSEN", + "MARVIK", + "MARZ2Y", + "MATHIASSEN", + "MATHIESEN", + "MATHISEN", + "MATRE", + "MAUDAL", + "MAURSTAD", + "MAUSETH", + "MAZUR", + "MEDHUS", + "MEEK", + "MEHARI", + "MEHL", + "MEHLUM", + "MEHMOOD", + "MEHUS", + "MEIDELL", + "MEIER", + "MEISINGSET", + "MELAND", + "MELBERG", + "MELBY", + "MELBYE", + "MELBZ2", + "MELGZ3RD", + "MELHEIM", + "MELHUS", + "MELING", + "MELLEM", + "MELLEMSTRAND", + "MELLINGEN", + "MELLUM", + "MELSOM", + "MELUM", + "MELVOLD", + "MENTZONI", + "MERKESDAL", + "MEYER", + "MICHAEL", + "MICHAELSEN", + "MICHALSEN", + "MICHELSEN", + "MIDTBZ2", + "MIDTGZ3RD", + "MIDTHUN", + "MIDTSKOGEN", + "MIDTTUN", + "MIDTTVEIT", + "MIDTUN", + "MIKAELSEN", + "MIKALSEN", + "MIKKELBORG", + "MIKKELSEN", + "MILDE", + "MILJETEIG", + "MILLER", + "MINDE", + "MINGE", + "MIR", + "MIRZA", + "MISJE", + "MISUND", + "MITTET", + "MJELDE", + "MJZ2EN", + "MJZ2LHUS", + "MJZ2NES", + "MJZ2S", + "MJZ3LAND", + "MJZ3NES", + "MO", + "MOA", + "MOAN", + "MOBERG", + "MOE", + "MOEN", + "MOGEN", + "MOGSTAD", + "MOHAMAD", + "MOHAMED", + "MOHAMMAD", + "MOHAMMADI", + "MOHAMMED", + "MOHAMOUD", + "MOHAMUD", + "MOHN", + "MOHOLT", + "MOI", + "MOKSNES", + "MOLAND", + "MOLDE", + "MOLDEN", + "MOLDESTAD", + "MOLDSKRED", + "MOLLAN", + "MOLLAND", + "MOLLESTAD", + "MOLNES", + "MOLSTAD", + "MOLTEBERG", + "MOLTU", + "MOLUND", + "MOLVIK", + "MOLVZ1R", + "MONG", + "MONGE", + "MONGSTAD", + "MONSEN", + "MONSTAD", + "MORADI", + "MORK", + "MORKEN", + "MORLAND", + "MORTENSEN", + "MOSENG", + "MOSS", + "MOSSIGE", + "MOSTAD", + "MOSTUE", + "MOUM", + "MOUSA", + "MUGGERUD", + "MUHAMMAD", + "MUNDAL", + "MUNIR", + "MUNKVOLD", + "MUNTHE", + "MUNTHEKAAS", + "MUREN", + "MURI", + "MUSE", + "MUSTAFA", + "MYDLAND", + "MYHR", + "MYHRA", + "MYHRE", + "MYHREN", + "MYHRER", + "MYHRVOLD", + "MYKING", + "MYKLAND", + "MYKLEBOST", + "MYKLEBUST", + "MYLLER", + "MYRAN", + "MYRDAL", + "MYRE", + "MYREN", + "MYRENE", + "MYRENG", + "MYRHAUG", + "MYRLAND", + "MYRMEL", + "MYRSETH", + "MYRSTAD", + "MYRVANG", + "MYRVOLD", + "MYRVOLL", + "MZ1HLE", + "MZ1HLUM", + "MZ1HRE", + "MZ1LAND", + "MZ1LE", + "MZ1LEN", + "MZ2GSTER", + "MZ2LLER", + "MZ2RCH", + "MZ2RCK", + "MZ2RK", + "MZ2RKVED", + "MZ2RLAND", + "MZ3KESTAD", + "NAALSUND", + "NAAS", + "NAGY", + "NAKKEN", + "NARUM", + "NARVESTAD", + "NASIR", + "NATLAND", + "NATVIG", + "NATVIK", + "NATZ3S", + "NAUSTDAL", + "NAWAZ", + "NAZARI", + "NEDREBZ2", + "NEDREGZ3RD", + "NEDRELID", + "NEGZ3RD", + "NEKSTAD", + "NELSON", + "NEPSTAD", + "NERDAL", + "NERENG", + "NERGAARD", + "NERGZ3RD", + "NERHEIM", + "NERHUS", + "NERLAND", + "NERLI", + "NERVIK", + "NES", + "NESBZ2", + "NESE", + "NESET", + "NESHEIM", + "NESJE", + "NESLAND", + "NESS", + "NESSA", + "NESSE", + "NESSET", + "NESVIK", + "NETELAND", + "NETLAND", + "NEUMANN", + "NEVERDAL", + "NEVLAND", + "NGO", + "NGUYEN", + "NICOLAISEN", + "NICOLAYSEN", + "NIELSEN", + "NIKOLAISEN", + "NILSEN", + "NILSSEN", + "NILSSON", + "NISSEN", + "NISTAD", + "NJZ1RHEIM", + "NODELAND", + "NODLAND", + "NOME", + "NOOR", + "NOORI", + "NORBERG", + "NORD", + "NORDAHL", + "NORDAL", + "NORDANG", + "NORDANGER", + "NORDBERG", + "NORDBOTTEN", + "NORDBY", + "NORDBZ2", + "NORDEIDE", + "NORDENG", + "NORDENGEN", + "NORDERHAUG", + "NORDGAARD", + "NORDGZ3RD", + "NORDHAGEN", + "NORDHAUG", + "NORDHEIM", + "NORDHUS", + "NORDLAND", + "NORDLI", + "NORDLIE", + "NORDLIEN", + "NORDLUND", + "NORDMARK", + "NORDMO", + "NORDNES", + "NORDRUM", + "NORDSETH", + "NORDSKAG", + "NORDSKOG", + "NORDSTRAND", + "NORDSTRZ2M", + "NORDSVEEN", + "NORDTVEIT", + "NORDTZ2MME", + "NORDVIK", + "NORDZ3S", + "NORE", + "NORENG", + "NORHEIM", + "NORLAND", + "NORLI", + "NORMAN", + "NORMANN", + "NORNES", + "NORUM", + "NORVIK", + "NOWAK", + "NUR", + "NUUR", + "NYBAKK", + "NYBAKKEN", + "NYBERG", + "NYBORG", + "NYBRZ3TEN", + "NYBZ2", + "NYDAL", + "NYGAARD", + "NYGARD", + "NYGREN", + "NYGZ3RD", + "NYHAGEN", + "NYHEIM", + "NYHUS", + "NYHUUS", + "NYLAND", + "NYLUND", + "NYMARK", + "NYMO", + "NYMOEN", + "NYQUIST", + "NYRUD", + "NYSETH", + "NYSTAD", + "NYSTED", + "NYSTRAND", + "NYSTRZ2M", + "NYSTUEN", + "NYSVEEN", + "NYSZ1TER", + "NYSZ1THER", + "NYVOLD", + "NYVOLL", + "NZ1RLAND", + "NZ1RZ2", + "NZ1S", + "NZ1SS", + "NZ1VDAL", + "NZ2DLAND", + "NZ2KLAND", + "NZ2KLEBY", + "NZ2RSTEBZ2", + "NZ2TTVEIT", + "OBRESTAD", + "ODDEN", + "ODLAND", + "OEN", + "OFSTAD", + "OFTEDAL", + "OHNSTAD", + "OKKENHAUG", + "OKSNES", + "OKSTAD", + "OLAFSEN", + "OLAISEN", + "OLAND", + "OLAUSSEN", + "OLAVESEN", + "OLDEN", + "OLDERVIK", + "OLESEN", + "OLIVERSEN", + "OLSEN", + "OLSNES", + "OLSRUD", + "OLSSON", + "OLSTAD", + "OLSVIK", + "OLUFSEN", + "OMA", + "OMAR", + "OMDAHL", + "OMDAL", + "OMER", + "OMHOLT", + "OMLAND", + "OMMEDAL", + "OMMUNDSEN", + "ONARHEIM", + "ONSTAD", + "OPDAHL", + "OPDAL", + "OPEDAL", + "OPGZ3RD", + "OPHAUG", + "OPHEIM", + "OPHUS", + "OPLAND", + "OPPEDAL", + "OPPEGAARD", + "OPPEGZ3RD", + "OPSAHL", + "OPSAL", + "OPSETH", + "OPSTAD", + "ORRE", + "ORVIK", + "OS", + "OSA", + "OSE", + "OSEN", + "OSHAUG", + "OSKARSEN", + "OSLAND", + "OSMAN", + "OSMANI", + "OSMUNDSEN", + "OSNES", + "OTERHALS", + "OTHMAN", + "OTNES", + "OTTEM", + "OTTERLEI", + "OTTERSEN", + "OTTERSTAD", + "OTTESEN", + "OTTESTAD", + "OTTOSEN", + "OVERVIK", + "OVERZ3", + "OVESEN", + "OWREN", + "PAASCHE", + "PALM", + "PARVEEN", + "PAULSEN", + "PAULSRUD", + "PAUS", + "PEDERSEN", + "PEREZ", + "PERSEN", + "PERSSON", + "PETERSEN", + "PETROVIC", + "PETTERSEN", + "PETTERSON", + "PETTERSSON", + "PHAM", + "PHAN", + "PIHL", + "PILSKOG", + "PLADSEN", + "PLASSEN", + "PLEYM", + "POLDEN", + "POLLESTAD", + "POULSEN", + "PRESTEGZ3RD", + "PRESTHUS", + "PRYTZ", + "QURESHI", + "QVALE", + "RAA", + "RAAEN", + "RAASTAD", + "RABBEN", + "RAFOSS", + "RAGE", + "RAHIMI", + "RAHMAN", + "RAHMANI", + "RAJA", + "RAKNES", + "RAKVZ3G", + "RAMADANI", + "RAMBERG", + "RAMFJORD", + "RAMSDAL", + "RAMSLAND", + "RAMSTAD", + "RAMSVIK", + "RAMSZ2Y", + "RANA", + "RANDEN", + "RANHEIM", + "RANUM", + "RASCH", + "RASHID", + "RASMUSSEN", + "RAVN", + "RAVNDAL", + "RAVNZ3S", + "RAZA", + "REE", + "REED", + "REFSDAL", + "REFSETH", + "REFSLAND", + "REFSNES", + "REFVIK", + "REGE", + "REHMAN", + "REIERSEN", + "REIGSTAD", + "REIME", + "REIN", + "REINERTSEN", + "REINHOLDTSEN", + "REISTAD", + "REITAN", + "REITE", + "REITEN", + "REKDAL", + "REKKEDAL", + "REKSTAD", + "REKSTEN", + "REMEN", + "REMME", + "REMMEN", + "REMZ2Y", + "REPPE", + "REPPEN", + "REPSTAD", + "RESELL", + "RESSEM", + "REVHEIM", + "REYES", + "REZAI", + "RIAN", + "RIAZ", + "RIBE", + "RICHARDSEN", + "RICHTER", + "RIIS", + "RIISE", + "RIISER", + "RIKARDSEN", + "RIKSTAD", + "RIMSTAD", + "RINDAL", + "RINDE", + "RINDEN", + "RING", + "RINGDAL", + "RINGEN", + "RINGHEIM", + "RINGNES", + "RINGSTAD", + "RINGVOLD", + "RISA", + "RISAN", + "RISBERG", + "RISDAL", + "RISE", + "RISETH", + "RISHAUG", + "RISNES", + "RIST", + "RISVIK", + "RISZ2Y", + "ROALD", + "ROBBERSTAD", + "ROBERG", + "ROBERTS", + "ROBERTSEN", + "ROBINSON", + "ROBSTAD", + "RODAL", + "RODE", + "RODRIGUEZ", + "ROEN", + "ROGNAN", + "ROGNE", + "ROGNERUD", + "ROGNES", + "ROGNLI", + "ROGNLIEN", + "ROGNMO", + "ROGNSTAD", + "ROGSTAD", + "ROHDE", + "ROKNE", + "ROKSTAD", + "ROKSVZ3G", + "ROLAND", + "ROLFSEN", + "ROLFSNES", + "ROLLAND", + "ROLSTAD", + "ROM", + "ROMSDAL", + "RONG", + "RONGVED", + "ROOS", + "ROSENBERG", + "ROSENLUND", + "ROSENVINGE", + "ROSLAND", + "ROSNES", + "ROSS", + "ROSSEBZ2", + "ROSSELAND", + "ROSSLAND", + "ROSTAD", + "ROSVOLD", + "ROSVOLL", + "ROTEVATN", + "ROTH", + "ROVIK", + "RUD", + "RUDI", + "RUDOLFSEN", + "RUE", + "RUGLAND", + "RUI", + "RUNDE", + "RUSTAD", + "RUSTAND", + "RUSTEN", + "RUUD", + "RYAN", + "RYDLAND", + "RYDNINGEN", + "RYE", + "RYEN", + "RYENG", + "RYGG", + "RYGH", + "RYKKJE", + "RYLAND", + "RYNNING", + "RYSTAD", + "RZ1STAD", + "RZ2BERG", + "RZ2D", + "RZ2DAL", + "RZ2DLAND", + "RZ2DSAND", + "RZ2DSETH", + "RZ2DSJZ2", + "RZ2E", + "RZ2ED", + "RZ2EN", + "RZ2GEBERG", + "RZ2HNE", + "RZ2INE", + "RZ2ISE", + "RZ2ISLAND", + "RZ2KENES", + "RZ2KKE", + "RZ2MO", + "RZ2NEID", + "RZ2NHOVDE", + "RZ2NNE", + "RZ2NNEBERG", + "RZ2NNESTAD", + "RZ2NNING", + "RZ2NNINGEN", + "RZ2REN", + "RZ2RSTAD", + "RZ2RTVEIT", + "RZ2RVIK", + "RZ2SAND", + "RZ2SSLAND", + "RZ2ST", + "RZ2STAD", + "RZ2STE", + "RZ2STEN", + "RZ2SVIK", + "RZ2V", + "RZ2VIK", + "RZ2YLAND", + "RZ2YRVIK", + "RZ2YSET", + "RZ2YSLAND", + "RZ3NES", + "SAASTAD", + "SAEED", + "SAFI", + "SAGA", + "SAGBAKKEN", + "SAGEN", + "SAGMO", + "SAGSTAD", + "SAGSTUEN", + "SAID", + "SAKARIASSEN", + "SAKSHAUG", + "SALAMONSEN", + "SALBERG", + "SALBU", + "SALEEM", + "SALEH", + "SALIH", + "SALIM", + "SALOMONSEN", + "SALTE", + "SALTNES", + "SALVESEN", + "SAMDAL", + "SAMNZ2Y", + "SAMUELSEN", + "SAND", + "SANDAKER", + "SANDAL", + "SANDANGER", + "SANDBAKK", + "SANDBAKKEN", + "SANDBERG", + "SANDBZ1K", + "SANDE", + "SANDEN", + "SANDER", + "SANDERSEN", + "SANDHZ3LAND", + "SANDLAND", + "SANDLI", + "SANDMO", + "SANDNES", + "SANDSMARK", + "SANDSTAD", + "SANDTORV", + "SANDUM", + "SANDVE", + "SANDVEN", + "SANDVIK", + "SANDVOLD", + "SANDVOLL", + "SANDVZ1R", + "SANDZ2", + "SANDZ2Y", + "SANGOLT", + "SANNE", + "SANNERUD", + "SANNES", + "SANTOS", + "SARA", + "SARWAR", + "SAUE", + "SAUR", + "SCHANCHE", + "SCHANKE", + "SCHAU", + "SCHEI", + "SCHEIE", + "SCHIE", + "SCHJELDERUP", + "SCHJERVEN", + "SCHJETNE", + "SCHJZ2LBERG", + "SCHMIDT", + "SCHNEIDER", + "SCHOU", + "SCHRZ2DER", + "SCHULTZ", + "SCHZ2YEN", + "SCOTT", + "SEEBERG", + "SEGLEM", + "SEIERSTAD", + "SEIM", + "SEKKINGSTAD", + "SEKSE", + "SELAND", + "SELDAL", + "SELE", + "SELJESETH", + "SELLE", + "SELLEVOLD", + "SELLZ1G", + "SELMER", + "SELNES", + "SELSTAD", + "SELVIK", + "SELVZ3G", + "SEM", + "SEMB", + "SEPPOLA", + "SERIGSTAD", + "SEVALDSEN", + "SEVERINSEN", + "SHAH", + "SHAHZAD", + "SHALA", + "SHARIF", + "SHARIFI", + "SHARMA", + "SHEIKH", + "SHEVCHENKO", + "SHRESTHA", + "SIGURDSEN", + "SIGVARTSEN", + "SIKVELAND", + "SILDEN", + "SILSETH", + "SILVA", + "SIMENSEN", + "SIMON", + "SIMONSEN", + "SINGH", + "SINGSTAD", + "SINNES", + "SIREVZ3G", + "SIRNES", + "SIVERTSEN", + "SJAASTAD", + "SJO", + "SJURSEN", + "SJZ2BERG", + "SJZ2BLOM", + "SJZ2EN", + "SJZ2GREN", + "SJZ2LI", + "SJZ2LIE", + "SJZ2STRZ2M", + "SJZ2THUN", + "SJZ2VOLD", + "SJZ2VOLL", + "SJZ3STAD", + "SJZ3VIK", + "SKAAR", + "SKAARE", + "SKADBERG", + "SKAGE", + "SKAGEN", + "SKAGESTAD", + "SKAILAND", + "SKANSEN", + "SKAR", + "SKARBZ2", + "SKARE", + "SKARET", + "SKARSHAUG", + "SKARSTAD", + "SKARSTEIN", + "SKARSVZ3G", + "SKAU", + "SKAUEN", + "SKAUG", + "SKAUGE", + "SKAUGEN", + "SKAVHAUG", + "SKEI", + "SKEIDE", + "SKEIE", + "SKEVIK", + "SKIAKER", + "SKILLE", + "SKINNES", + "SKINSTAD", + "SKISTAD", + "SKJEGGESTAD", + "SKJELBRED", + "SKJELSTAD", + "SKJELVIK", + "SKJERDAL", + "SKJERPING", + "SKJERVE", + "SKJERVEN", + "SKJERVHEIM", + "SKJERVOLD", + "SKJETNE", + "SKJEVIK", + "SKJOLD", + "SKJOLDEN", + "SKJONG", + "SKJZ1RET", + "SKJZ1RSTAD", + "SKJZ1RVIK", + "SKJZ1VELAND", + "SKJZ2LBERG", + "SKJZ2NBERG", + "SKJZ2NHAUG", + "SKJZ2RESTAD", + "SKOG", + "SKOGE", + "SKOGEN", + "SKOGHEIM", + "SKOGLAND", + "SKOGLI", + "SKOGLUND", + "SKOGLY", + "SKOGMO", + "SKOGSETH", + "SKOGSRUD", + "SKOGSTAD", + "SKOGVOLD", + "SKOGVOLL", + "SKOMEDAL", + "SKORPEN", + "SKORSTAD", + "SKOTNES", + "SKOTTE", + "SKOVLY", + "SKRAM", + "SKRAMSTAD", + "SKREDE", + "SKRETTEBERG", + "SKRETTING", + "SKRETTINGLAND", + "SKRZ3MESTZ2", + "SKULAND", + "SKULLERUD", + "SKULSTAD", + "SKURDAL", + "SKUTLE", + "SKZ2IEN", + "SKZ3LEVIK", + "SKZ3R", + "SKZ3RDAL", + "SKZ3RE", + "SKZ3RLAND", + "SLEIRE", + "SLETNER", + "SLETTA", + "SLETTE", + "SLETTEBZ2", + "SLETTEDAL", + "SLETTEMARK", + "SLETTEN", + "SLETTUM", + "SLETVOLD", + "SLEVELAND", + "SLINNING", + "SLYNGSTAD", + "SLZ3EN", + "SLZ3TTEN", + "SMEBY", + "SMEDSRUD", + "SMEDSTAD", + "SMELAND", + "SMESTAD", + "SMISTAD", + "SMITH", + "SMZ2RDAL", + "SNEVE", + "SOGN", + "SOLA", + "SOLBAKK", + "SOLBAKKEN", + "SOLBERG", + "SOLBU", + "SOLDAL", + "SOLEM", + "SOLENG", + "SOLEVZ3G", + "SOLGZ3RD", + "SOLHAUG", + "SOLHEIM", + "SOLLI", + "SOLLID", + "SOLLIE", + "SOLLIEN", + "SOLOMON", + "SOLSTAD", + "SOLSTRAND", + "SOLSVIK", + "SOLTVEDT", + "SOLTVEIT", + "SOLUM", + "SOLVANG", + "SOLVIK", + "SOLVOLL", + "SOLZ3S", + "SOMA", + "SOMBY", + "SOMMER", + "SOMMERSETH", + "SOMMERSTAD", + "SOMMERVOLD", + "SORTLAND", + "SPARBY", + "SPERRE", + "SPILDE", + "SPORSHEIM", + "STABELL", + "STADHEIM", + "STAFF", + "STALSBERG", + "STAMNES", + "STANDAL", + "STANG", + "STANGE", + "STANGELAND", + "STARHEIM", + "STAV", + "STAVA", + "STAVE", + "STAVEM", + "STAVEN", + "STAVENES", + "STAVIK", + "STAVLAND", + "STAVNES", + "STAVRUM", + "STEEN", + "STEFFENSEN", + "STEIN", + "STEINDAL", + "STEINE", + "STEINNES", + "STEINSLAND", + "STEINSVIK", + "STEIRO", + "STENBERG", + "STENDAL", + "STENE", + "STENERSEN", + "STENERUD", + "STENHAUG", + "STENSBY", + "STENSEN", + "STENSETH", + "STENSLAND", + "STENSRUD", + "STENSTAD", + "STENSVOLD", + "STENVIK", + "STEPHANSEN", + "STIANSEN", + "STIEN", + "STIGEN", + "STJERN", + "STOKKA", + "STOKKAN", + "STOKKE", + "STOKKELAND", + "STOKKEN", + "STOKKENES", + "STOKLAND", + "STOKSTAD", + "STORAKER", + "STORDAHL", + "STORDAL", + "STOREBZ2", + "STOREIDE", + "STORESUND", + "STORHAUG", + "STORHEIM", + "STORLI", + "STORM", + "STORMARK", + "STORMO", + "STORMOEN", + "STORNES", + "STORSVE", + "STORSVEEN", + "STORVIK", + "STORZ2Y", + "STORZ3S", + "STRAND", + "STRANDBERG", + "STRANDE", + "STRANDEN", + "STRANDHEIM", + "STRAUME", + "STRAY", + "STRZ2M", + "STRZ2MBERG", + "STRZ2MLAND", + "STRZ2MME", + "STRZ2MMEN", + "STRZ2MNES", + "STRZ2MSNES", + "STRZ2MSTAD", + "STRZ2MSVZ3G", + "STUBBERUD", + "STUEN", + "STURE", + "STYVE", + "STZ2A", + "STZ2EN", + "STZ2LAN", + "STZ2LE", + "STZ2LEN", + "STZ2RDAL", + "STZ2RKERSEN", + "STZ2RKSEN", + "STZ2RSETH", + "STZ2YLEN", + "STZ3LESEN", + "SUHR", + "SULAIMAN", + "SULEIMAN", + "SULEN", + "SUMSTAD", + "SUND", + "SUNDAL", + "SUNDBERG", + "SUNDBY", + "SUNDE", + "SUNDET", + "SUNDFZ1R", + "SUNDGOT", + "SUNDLAND", + "SUNDLI", + "SUNDNES", + "SUNDSETH", + "SUNDSTRZ2M", + "SUNDT", + "SURDAL", + "SVANBERG", + "SVANES", + "SVANEVIK", + "SVARDAL", + "SVARSTAD", + "SVEBERG", + "SVEE", + "SVEEN", + "SVELA", + "SVELLINGEN", + "SVENDSEN", + "SVENDSRUD", + "SVENKERUD", + "SVENNING", + "SVENNINGSEN", + "SVENSEN", + "SVENSLI", + "SVENSSON", + "SVERDRUP", + "SVEUM", + "SVIGGUM", + "SVIHUS", + "SVILAND", + "SVINDLAND", + "SVINGEN", + "SVZ1REN", + "SYED", + "SYLTA", + "SYLTE", + "SYNNES", + "SYNNEVZ3G", + "SYRSTAD", + "SYSTAD", + "SYVERSEN", + "SYVERTSEN", + "SZ1BZ2", + "SZ1LAND", + "SZ1LE", + "SZ1LEN", + "SZ1TER", + "SZ1TERBZ2", + "SZ1TERDAL", + "SZ1TERMO", + "SZ1TERNES", + "SZ1THER", + "SZ1THRE", + "SZ1TRA", + "SZ1TRAN", + "SZ1TRE", + "SZ1TREN", + "SZ1VAREID", + "SZ1VERUD", + "SZ1VIK", + "SZ2BERG", + "SZ2BSTAD", + "SZ2DAL", + "SZ2DERHOLM", + "SZ2FTELAND", + "SZ2GAARD", + "SZ2GZ3RD", + "SZ2ILAND", + "SZ2LVBERG", + "SZ2MME", + "SZ2NDERLAND", + "SZ2NSTEBY", + "SZ2NSTEBZ2", + "SZ2NSTERUD", + "SZ2RBY", + "SZ2RBZ2", + "SZ2RDAL", + "SZ2REIDE", + "SZ2RENG", + "SZ2RENSEN", + "SZ2RGZ3RD", + "SZ2RHAUG", + "SZ2RHEIM", + "SZ2RHUS", + "SZ2RLAND", + "SZ2RLI", + "SZ2RLIE", + "SZ2RMO", + "SZ2RNES", + "SZ2RUM", + "SZ2RVIK", + "SZ2VIK", + "SZ2YLAND", + "TAFJORD", + "TAHIR", + "TAKLE", + "TAKSDAL", + "TAKVAM", + "TALBERG", + "TALLAKSEN", + "TANDBERG", + "TANDE", + "TANDSTAD", + "TANG", + "TANGEN", + "TANGSTAD", + "TARALDSEN", + "TARANGER", + "TARIQ", + "TAULE", + "TAYLOR", + "TEIEN", + "TEIG", + "TEIGE", + "TEIGEN", + "TEIGLAND", + "TEKLE", + "TELLE", + "TELLEFSEN", + "TENGESDAL", + "TENNFJORD", + "TENOLD", + "TERJESEN", + "TESDAL", + "TESFAMARIAM", + "TESFAMICHAEL", + "TESFAY", + "TESSEM", + "TETLIE", + "TEWELDE", + "THARALDSEN", + "THEODORSEN", + "THINGSTAD", + "THOEN", + "THOMAS", + "THOMASSEN", + "THOMMESEN", + "THOMPSON", + "THOMSEN", + "THON", + "THORBJZ2RNSEN", + "THORESEN", + "THORGERSEN", + "THORKILDSEN", + "THORSEN", + "THORSHAUG", + "THORSRUD", + "THORSTENSEN", + "THORSZ2", + "THORUD", + "THORVALDSEN", + "THRANE", + "THRONDSEN", + "THU", + "THUE", + "THUEN", + "THUNE", + "THUNES", + "THYGESEN", + "THZ2GERSEN", + "TIDEMANN", + "TILLER", + "TITLESTAD", + "TJELLE", + "TJELTA", + "TJEMSLAND", + "TJESSEM", + "TJORE", + "TJZ2RHOM", + "TJZ2STHEIM", + "TJZ2SVOLL", + "TJZ2TTA", + "TOBIASSEN", + "TODAL", + "TODNEM", + "TOFT", + "TOFTE", + "TOKERUD", + "TOKLE", + "TOLLEFSEN", + "TOLO", + "TOMREN", + "TOMTER", + "TONHEIM", + "TONNING", + "TONSTAD", + "TORBERGSEN", + "TORBJZ2RNSEN", + "TORESEN", + "TORGERSEN", + "TORHEIM", + "TORJUSSEN", + "TORKELSEN", + "TORKILDSEN", + "TORLAND", + "TORNES", + "TORP", + "TORSET", + "TORSTEINSEN", + "TORSTENSEN", + "TORSVIK", + "TORVIK", + "TORVUND", + "TOTLAND", + "TOVERUD", + "TRAN", + "TRANA", + "TRENGEREID", + "TRINH", + "TRONDSEN", + "TRONES", + "TRONRUD", + "TRONSTAD", + "TRULSEN", + "TRUONG", + "TRYDAL", + "TRYGGESTAD", + "TRZ1ET", + "TRZ2AN", + "TRZ2EN", + "TRZ2NNES", + "TSEGAY", + "TUFT", + "TUFTE", + "TUFTELAND", + "TUNGLAND", + "TUNHEIM", + "TURZ2Y", + "TVEDT", + "TVEDTEN", + "TVEIT", + "TVEITA", + "TVEITAN", + "TVEITE", + "TVEITEN", + "TVEITO", + "TVENGE", + "TVERBERG", + "TVERZ3", + "TVETE", + "TVETEN", + "TVETER", + "TYLDUM", + "TYSNES", + "TYSSE", + "TZ2LLEFSEN", + "TZ2MMERVIK", + "TZ2MMERZ3S", + "TZ2MTE", + "TZ2NDEL", + "TZ2NDER", + "TZ2NNESEN", + "TZ2NNESSEN", + "TZ2NSBERG", + "TZ2SSE", + "UELAND", + "UGELSTAD", + "UGLAND", + "ULLAND", + "ULLEBERG", + "ULLESTAD", + "ULRIKSEN", + "ULSET", + "ULSETH", + "ULSTEIN", + "ULVEN", + "ULVESTAD", + "ULVIK", + "ULVIN", + "ULVUND", + "UNDERHAUG", + "UNDHEIM", + "UNDRUM", + "UNHJEM", + "UNNELAND", + "URDAL", + "URKE", + "URSIN", + "URSTAD", + "USMAN", + "USTAD", + "UTGZ3RD", + "UTHAUG", + "UTHEIM", + "UTHUS", + "UTNE", + "UTNES", + "UTSI", + "UTVIK", + "VAA", + "VAAGE", + "VABZ2", + "VADSETH", + "VAGLE", + "VAKSDAL", + "VALBERG", + "VALDE", + "VALDERHAUG", + "VALEN", + "VALLA", + "VALLAND", + "VALLE", + "VALLESTAD", + "VALSETH", + "VALSTAD", + "VALVIK", + "VALZ2", + "VANG", + "VANGEN", + "VANGSNES", + "VANVIK", + "VARHAUG", + "VARTDAL", + "VASSBOTN", + "VASSDAL", + "VATLAND", + "VATLE", + "VATN", + "VATNE", + "VEA", + "VEDAL", + "VEDVIK", + "VEDZ2Y", + "VEDZ3", + "VEGSUND", + "VEIBY", + "VEIVZ3G", + "VELAND", + "VELDE", + "VELLE", + "VENZ3S", + "VERVIK", + "VESTAD", + "VESTBY", + "VESTBZ2", + "VESTLI", + "VESTLY", + "VESTNES", + "VESTRE", + "VESTRHEIM", + "VESTVIK", + "VESTZ2L", + "VETRHUS", + "VEUM", + "VEVANG", + "VEVLE", + "VIDDAL", + "VIE", + "VIGDAL", + "VIGRE", + "VIGRESTAD", + "VIK", + "VIKA", + "VIKAN", + "VIKANE", + "VIKANES", + "VIKE", + "VIKEN", + "VIKENE", + "VIKSE", + "VIKZ2REN", + "VILHELMSEN", + "VILLANGER", + "VINDENES", + "VINJE", + "VISNES", + "VIST", + "VISTE", + "VISTNES", + "VO", + "VOGT", + "VOLD", + "VOLDEN", + "VOLDSUND", + "VOLL", + "VOLLAN", + "VOLLE", + "VOLLEN", + "VONHEIM", + "VORLAND", + "VU", + "VZ1RNES", + "VZ3GA", + "VZ3GE", + "VZ3GEN", + "VZ3GENES", + "VZ3RDAL", + "WAAGE", + "WAALER", + "WAGNER", + "WAHL", + "WAHLBERG", + "WAHLSTRZ2M", + "WALBERG", + "WALDE", + "WALDERHAUG", + "WALLE", + "WALLIN", + "WALSETH", + "WALSTAD", + "WANG", + "WANGBERG", + "WANGEN", + "WANVIK", + "WARHOLM", + "WARSAME", + "WATHNE", + "WEBER", + "WEBERG", + "WEISETH", + "WELDE", + "WELLE", + "WENNBERG", + "WERGELAND", + "WERNER", + "WESSEL", + "WESTAD", + "WESTBERG", + "WESTBY", + "WESTBYE", + "WESTERHEIM", + "WESTERLUND", + "WESTGAARD", + "WESTGZ3RD", + "WESTLIE", + "WESTRUM", + "WETTELAND", + "WEUM", + "WIBE", + "WIBORG", + "WICKSTRZ2M", + "WIDDING", + "WIE", + "WIEN", + "WIGGEN", + "WIIG", + "WIIK", + "WIK", + "WIKEN", + "WIKER", + "WIKLUND", + "WIKSTRZ2M", + "WILBERG", + "WILHELMSEN", + "WILLASSEN", + "WILLE", + "WILLIAMS", + "WILLUMSEN", + "WILSON", + "WINGE", + "WINGER", + "WINJE", + "WINSNES", + "WINTHER", + "WISLZ2FF", + "WISNIEWSKI", + "WIST", + "WISTH", + "WITH", + "WOJCIK", + "WOLD", + "WOLDEN", + "WOLDSETH", + "WOLFF", + "WOLL", + "WOLLAN", + "WONG", + "WORREN", + "WOZNIAK", + "WRIGHT", + "WROLDSEN", + "WU", + "WULFF", + "WZ1RNES", + "WZ2IEN", + "XU", + "YANG", + "YASIN", + "YEMANE", + "YILDIRIM", + "YILDIZ", + "YILMAZ", + "YNDESTAD", + "YOHANNES", + "YOUNG", + "YOUSEF", + "YRI", + "YTRELAND", + "YTTERSTAD", + "YTTERVIK", + "YU", + "YUSUF", + "ZACHARIASSEN", + "ZAHL", + "ZAKARIASSEN", + "ZHANG", + "ZIELINSKI", + "ZIMMERMANN", + "Z2DEGAARD", + "Z2DEGZ3RD", + "Z2DEGZ3RDEN", + "Z2EN", + "Z2GLZ1ND", + "Z2IE", + "Z2IEN", + "Z2IESTAD", + "Z2ISETH", + "Z2KLAND", + "Z2KSENDAL", + "Z2KSNES", + "Z2LBERG", + "Z2LMHEIM", + "Z2RBECK", + "Z2REN", + "Z2RMEN", + "Z2STBERG", + "Z2STBY", + "Z2STBYE", + "Z2STBZ2", + "Z2STEBZ2", + "Z2STENSEN", + "Z2STENSTAD", + "Z2STERBZ2", + "Z2STERHUS", + "Z2STERUD", + "Z2STERVOLD", + "Z2STERZ3S", + "Z2STGAARD", + "Z2STGZ3RD", + "Z2STHUS", + "Z2STLI", + "Z2STLIE", + "Z2STLUND", + "Z2STMO", + "Z2STREM", + "Z2STRENG", + "Z2STVIK", + "Z2STVOLD", + "Z2VERBY", + "Z2VERBZ2", + "Z2VERENG", + "Z2VERGAARD", + "Z2VERGZ3RD", + "Z2VERLAND", + "Z2VERLI", + "Z2VERZ3S", + "Z2VLAND", + "Z2VREBZ2", + "Z2VRELID", + "Z2VRETVEIT", + "Z2VREVIK", + "Z2VSTEBZ2", + "Z2VSTEDAL", + "Z2VSTHUS", + "Z2WRE", + "Z2YAN", + "Z2YE", + "Z2YEN", + "Z2YGARD", + "Z2YGARDEN", + "Z2YNES", + "Z3DLAND", + "Z3KRE", + "Z3MODT", + "Z3NENSEN", + "Z3NESTAD", + "Z3RDAL", + "Z3RNES", + "Z3RSETH", + "Z3RVIK", + "Z3S", + "Z3SEBZ2", + "Z3SEN", + "Z3SHEIM", + "Z3SLAND" + ] + } + } + ], + "response": { + "format": "json-stat2" + } +} diff --git a/dev-database/data-generation/namegen/guttenavn.json b/dev-database/data-generation/namegen/guttenavn.json new file mode 100644 index 0000000..17f406f --- /dev/null +++ b/dev-database/data-generation/namegen/guttenavn.json @@ -0,0 +1,935 @@ +{ + "query": [ + { + "code": "Fornavn", + "selection": { + "filter": "vs:NavnGutter02", + "values": [ + "2AAGE", + "2AARON", + "2AASMUND", + "2ABBAS", + "2ABDALLAH", + "2ABDI", + "2ABDIRAHMAN", + "2ABDUL", + "2ABDULKADIR", + "2ABDULLAH", + "2ABDULLAHI", + "2ABDULRAHMAN", + "2ABEL", + "2ABRAHAM", + "2ADAM", + "2ADEL", + "2ADEM", + "2ADIL", + "2ADNAN", + "2ADRIAN", + "2AGNAR", + "2AHMAD", + "2AHMED", + "2AHMET", + "2AIDEN", + "2AILO", + "2AKSEL", + "2ALAN", + "2ALBERT", + "2ALEJANDRO", + "2ALEKSANDAR", + "2ALEKSANDER", + "2ALEKSANDR", + "2ALEKSANDRS", + "2ALEX", + "2ALEXANDER", + "2ALEXANDRU", + "2ALF", + "2ALFRED", + "2ALI", + "2ALLAN", + "2ALV", + "2ALVIN", + "2AMANUEL", + "2AMAR", + "2AMER", + "2AMIN", + "2AMIR", + "2AMMAR", + "2AMUND", + "2ANAS", + "2ANDERS", + "2ANDRE", + "2ANDREAS", + "2ANDREI", + "2ANDREJ", + "2ANDRES", + "2ANDREW", + "2ANDRIS", + "2ANDRIUS", + "2ANDRZEJ", + "2ANNAR", + "2ANSGAR", + "2ANTHONY", + "2ANTON", + "2ANTONI", + "2ANTONIO", + "2ANWAR", + "2ARAM", + "2ARE", + "2ARI", + "2ARIAN", + "2ARILD", + "2ARKADIUSZ", + "2ARMAN", + "2ARMIN", + "2ARN", + "2ARNE", + "2ARNFINN", + "2ARNOLD", + "2ARNSTEIN", + "2ARNT", + "2ARNULF", + "2ARON", + "2ARTEM", + "2ARTHUR", + "2ARTUR", + "2ARTURAS", + "2ARUNAS", + "2ARVE", + "2ARVID", + "2ARVIN", + "2ARVYDAS", + "2ARYAN", + "2ASBJZ2RN", + "2ASGEIR", + "2ASK", + "2ASLAK", + "2ASLE", + "2ASMUND", + "2ATLE", + "2AUDRIUS", + "2AUDUN", + "2AUGUST", + "2AURIMAS", + "2AXEL", + "2AYMAN", + "2AYUB", + "2BAARD", + "2BALDER", + "2BARTLOMIEJ", + "2BARTOSZ", + "2BASTIAN", + "2BEN", + "2BENDIK", + "2BENGT", + "2BENJAMIN", + "2BENNY", + "2BENT", + "2BERNARD", + "2BERNHARD", + "2BERNT", + "2BERTIL", + "2BILAL", + "2BIRGER", + "2BIRK", + "2BJARNE", + "2BJARTE", + "2BJZ2RGE", + "2BJZ2RN", + "2BJZ2RN_ERIK", + "2BJZ2RNAR", + "2BO", + "2BOGDAN", + "2BOGUSLAW", + "2BORGAR", + "2BORIS", + "2BRAGE", + "2BREDE", + "2BRIAN", + "2BROR", + "2BRUNO", + "2BRYNJAR", + "2BRYNJULF", + "2BZ2RGE", + "2BZ2RRE", + "2BZ3RD", + "2CARL", + "2CARLOS", + "2CARSTEN", + "2CASPER", + "2CASPIAN", + "2CATO", + "2CHARLES", + "2CHARLIE", + "2CHRIS", + "2CHRISTEN", + "2CHRISTER", + "2CHRISTIAN", + "2CHRISTOFFER", + "2CHRISTOPHER", + "2CLAES", + "2CLAUS", + "2COLIN", + "2CONRAD", + "2CONSTANTIN", + "2CORNELIUS", + "2CRISTIAN", + "2DAG", + "2DAGFINN", + "2DAINIUS", + "2DAMIAN", + "2DAN", + "2DANI", + "2DANIEL", + "2DANNY", + "2DARIUS", + "2DARIUSZ", + "2DAVID", + "2DAWID", + "2DAWIT", + "2DEIVIDAS", + "2DEJAN", + "2DENIS", + "2DENNIS", + "2DIDRIK", + "2DIEGO", + "2DOMINIC", + "2DOMINIK", + "2DONATAS", + "2DRAGAN", + "2EBBE", + "2EDDIE", + "2EDGAR", + "2EDIN", + "2EDMUND", + "2EDVARD", + "2EDVIN", + "2EDWARD", + "2EDWIN", + "2EGIDIJUS", + "2EGIL", + "2EIGIL", + "2EILERT", + "2EILEV", + "2EILIF", + "2EINAR", + "2EIRIK", + "2EIVIND", + "2ELDAR", + "2ELIAH", + "2ELIAS", + "2ELLING", + "2ELLIOT", + "2EMANUEL", + "2EMIL", + "2EMILIAN", + "2EMILIO", + "2EMIR", + "2EMMANUEL", + "2EMRE", + "2EMRIK", + "2ENDRE", + "2ERIC", + "2ERIK", + "2ERLAND", + "2ERLEND", + "2ERLING", + "2ERNST", + "2ESBEN", + "2ESKIL", + "2ESKILD", + "2ESPEN", + "2ESTEN", + "2EVALD", + "2EVALDAS", + "2EVAN", + "2EVEN", + "2EYSTEIN", + "2EYVIND", + "2FABIAN", + "2FAISAL", + "2FALK", + "2FARHAD", + "2FELIX", + "2FERDINAND", + "2FERNANDO", + "2FILIP", + "2FILLIP", + "2FINN", + "2FLEMMING", + "2FLORIAN", + "2FRANCIS", + "2FRANCISCO", + "2FRANCISZEK", + "2FRANK", + "2FRANS", + "2FRED", + "2FREDDY", + "2FREDERIK", + "2FREDRICK", + "2FREDRIK", + "2FRIDTJOF", + "2FRIKK", + "2FRITHJOF", + "2FRITS", + "2FRITZ", + "2FRODE", + "2GABRIEL", + "2GARD", + "2GAUTE", + "2GEDIMINAS", + "2GEIR", + "2GEORG", + "2GEORGE", + "2GEORGIOS", + "2GERHARD", + "2GERT", + "2GIEDRIUS", + "2GINTARAS", + "2GISLE", + "2GJERMUND", + "2GJERT", + "2GLEN", + "2GLENN", + "2GORAN", + "2GORM", + "2GRZEGORZ", + "2GUDBRAND", + "2GUDMUND", + "2GUNNAR", + "2GUNVALD", + "2GUSTAV", + "2GUTTORM", + "2GZ2RAN", + "2HAAKON", + "2HAAVARD", + "2HADI", + "2HALDOR", + "2HALFDAN", + "2HALLGEIR", + "2HALLSTEIN", + "2HALLVARD", + "2HALVARD", + "2HALVOR", + "2HAMID", + "2HAMZA", + "2HANS", + "2HANS_PETTER", + "2HARALD", + "2HARIS", + "2HARRY", + "2HASAN", + "2HASSAN", + "2HAUK", + "2HEINE", + "2HELGE", + "2HELMER", + "2HENNING", + "2HENRIK", + "2HENRY", + "2HENRYK", + "2HERMAN", + "2HERMANN", + "2HERMOD", + "2HILMAR", + "2HJALMAR", + "2HOGNE", + "2HOLGER", + "2HUBERT", + "2HUGO", + "2HUSSAIN", + "2HUSSEIN", + "2HZ3KON", + "2HZ3VAR", + "2HZ3VARD", + "2IAN", + "2IBRAHIM", + "2IDAR", + "2IDRIS", + "2IGOR", + "2ILYAS", + "2IMRAN", + "2IMRE", + "2INGAR", + "2INGE", + "2INGEBRIGT", + "2INGMAR", + "2INGOLF", + "2INGVALD", + "2INGVAR", + "2INGVE", + "2IRENEUSZ", + "2ISA", + "2ISAAC", + "2ISAC", + "2ISAK", + "2ISMAIL", + "2IVAN", + "2IVAR", + "2IVER", + "2IVO", + "2JACEK", + "2JACK", + "2JACOB", + "2JAHN", + "2JAKOB", + "2JAKUB", + "2JAMAL", + "2JAMES", + "2JAMIE", + "2JAN", + "2JAN_ERIK", + "2JANIS", + "2JANN", + "2JANUSZ", + "2JARAN", + "2JARAND", + "2JARDAR", + "2JARL", + "2JARLE", + "2JAROSLAW", + "2JASON", + "2JEAN", + "2JENS", + "2JEPPE", + "2JERZY", + "2JESPER", + "2JIM", + "2JIMMY", + "2JO", + "2JOACHIM", + "2JOACIM", + "2JOAKIM", + "2JOAO", + "2JOAR", + "2JOEL", + "2JOHAN", + "2JOHANN", + "2JOHANNES", + "2JOHN", + "2JOHNNY", + "2JOMAR", + "2JON", + "2JONAH", + "2JONAS", + "2JONATAN", + "2JONATHAN", + "2JONE", + "2JONN", + "2JONNY", + "2JORGE", + "2JOSE", + "2JOSEF", + "2JOSEPH", + "2JOSHUA", + "2JOSTEIN", + "2JOZEF", + "2JUAN", + "2JULIAN", + "2JULIUS", + "2JUSTIN", + "2JZ2RAN", + "2JZ2RG", + "2JZ2RGEN", + "2JZ2RN", + "2JZ2RUND", + "2KAARE", + "2KACPER", + "2KAI", + "2KAJ", + "2KAMAL", + "2KAMIL", + "2KARIM", + "2KARL", + "2KAROL", + "2KAROLIS", + "2KARSTEIN", + "2KARSTEN", + "2KASPER", + "2KATO", + "2KAY", + "2KAZIMIERZ", + "2KEN", + "2KENAN", + "2KENNET", + "2KENNETH", + "2KENNY", + "2KENT", + "2KESTUTIS", + "2KETIL", + "2KEVIN", + "2KHALED", + "2KHALID", + "2KHALIL", + "2KIAN", + "2KIM", + "2KIM_ANDRE", + "2KJARTAN", + "2KJELL", + "2KJETIL", + "2KLAUS", + "2KNUT", + "2KOLBJZ2RN", + "2KONRAD", + "2KONSTANTIN", + "2KORNELIUS", + "2KRISTEN", + "2KRISTER", + "2KRISTIAN", + "2KRISTOFFER", + "2KRYSTIAN", + "2KRZYSZTOF", + "2KURT", + "2KYRRE", + "2KZ3RE", + "2LARS", + "2LARS_ERIK", + "2LASSE", + "2LAURITS", + "2LAURITZ", + "2LAVRANS", + "2LEANDER", + "2LEIF", + "2LEIV", + "2LENNART", + "2LEO", + "2LEON", + "2LEONARD", + "2LEONARDO", + "2LESZEK", + "2LEVI", + "2LIAM", + "2LIBAN", + "2LINAS", + "2LINUS", + "2LIONEL", + "2LOKE", + "2LORENTZ", + "2LOUIE", + "2LOUIS", + "2LUCA", + "2LUCAS", + "2LUDVIG", + "2LUDVIK", + "2LUIS", + "2LUKA", + "2LUKAS", + "2LUKASZ", + "2LUKE", + "2LYDER", + "2MACIEJ", + "2MADS", + "2MAGNAR", + "2MAGNE", + "2MAGNUS", + "2MAHAD", + "2MAHAMED", + "2MAHDI", + "2MAHMOUD", + "2MAKSIM", + "2MAKSYMILIAN", + "2MALIK", + "2MALVIN", + "2MANTAS", + "2MANUEL", + "2MARC", + "2MARCEL", + "2MARCIN", + "2MARCO", + "2MARCUS", + "2MAREK", + "2MARIAN", + "2MARIO", + "2MARIUS", + "2MARIUSZ", + "2MARK", + "2MARKO", + "2MARKUS", + "2MARLON", + "2MARTIN", + "2MARTINIUS", + "2MARTINUS", + "2MARTYNAS", + "2MARVIN", + "2MATAS", + "2MATEO", + "2MATEUSZ", + "2MATHEO", + "2MATHEUS", + "2MATHIAS", + "2MATHIS", + "2MATIAS", + "2MATS", + "2MATTEO", + "2MATTEUS", + "2MATTHEW", + "2MATTHIAS", + "2MATTIAS", + "2MATTIS", + "2MAX", + "2MAXIM", + "2MAXIMILIAN", + "2MEHDI", + "2MEHMET", + "2MELVIN", + "2MICHAEL", + "2MICHAL", + "2MIGUEL", + "2MIKA", + "2MIKAEL", + "2MIKAIL", + "2MIKAL", + "2MIKE", + "2MIKKEL", + "2MIKOLAJ", + "2MILAN", + "2MILIAN", + "2MILOS", + "2MINDAUGAS", + "2MINH", + "2MIO", + "2MIROSLAV", + "2MIROSLAW", + "2MOHAMAD", + "2MOHAMED", + "2MOHAMMAD", + "2MOHAMMED", + "2MONS", + "2MORGAN", + "2MORTEN", + "2MOSTAFA", + "2MUHAMMAD", + "2MUHAMMED", + "2MUSTAFA", + "2NARVE", + "2NATAN", + "2NATANIEL", + "2NATHAN", + "2NATHANIEL", + "2NEO", + "2NERIJUS", + "2NICHOLAS", + "2NICKLAS", + "2NICLAS", + "2NICOLAI", + "2NICOLAS", + "2NICOLAY", + "2NIELS", + "2NIKITA", + "2NIKLAS", + "2NIKODEM", + "2NIKOLA", + "2NIKOLAI", + "2NIKOLAS", + "2NIKOLAY", + "2NILS", + "2NJZ3L", + "2NOA", + "2NOAH", + "2NOEL", + "2NORBERT", + "2NORMANN", + "2NORVALD", + "2ODD", + "2ODDBJZ2RN", + "2ODDGEIR", + "2ODDLEIF", + "2ODDMUND", + "2ODDVAR", + "2ODDVIN", + "2ODIN", + "2OLA", + "2OLAF", + "2OLAI", + "2OLAV", + "2OLE", + "2OLE_CHRISTIAN", + "2OLE_JZ2RGEN", + "2OLE_KRISTIAN", + "2OLE_MARTIN", + "2OLE_PETTER", + "2OLEKSANDR", + "2OLIVER", + "2OLIVIER", + "2OLVE", + "2OMAR", + "2OMER", + "2OMID", + "2OSCAR", + "2OSKAR", + "2OSMAN", + "2OSVALD", + "2OTTAR", + "2OTTO", + "2OVE", + "2PAAL", + "2PATRICK", + "2PATRIK", + "2PATRYK", + "2PAUL", + "2PAULIUS", + "2PAVEL", + "2PAWEL", + "2PEDER", + "2PEDRO", + "2PELLE", + "2PER", + "2PER_ARNE", + "2PER_ERIK", + "2PETER", + "2PETTER", + "2PHILIP", + "2PHILLIP", + "2PIOTR", + "2PREBEN", + "2PRZEMYSLAW", + "2PZ3L", + "2RADOSLAW", + "2RAFAEL", + "2RAFAL", + "2RAGNAR", + "2RAGNVALD", + "2RAINER", + "2RAMI", + "2RAMUNAS", + "2RASMUS", + "2RAVN", + "2RAYAN", + "2RAYMOND", + "2REIDAR", + "2REMI", + "2REMY", + "2RENE", + "2REZA", + "2RICARDO", + "2RICHARD", + "2RIKARD", + "2RINO", + "2ROALD", + "2ROAR", + "2ROBEL", + "2ROBERT", + "2ROBERTAS", + "2ROBERTO", + "2ROBIN", + "2ROGER", + "2ROLAND", + "2ROLANDAS", + "2ROLF", + "2ROLV", + "2ROMAN", + "2RONALD", + "2RONNIE", + "2RONNY", + "2ROY", + "2RUBEN", + "2RUDI", + "2RUDOLF", + "2RUNAR", + "2RUNE", + "2RYAN", + "2RYSZARD", + "2SAID", + "2SALAH", + "2SALEH", + "2SALMAN", + "2SAM", + "2SAMI", + "2SAMIR", + "2SAMSON", + "2SAMUEL", + "2SANDER", + "2SAULIUS", + "2SAYED", + "2SCOTT", + "2SEAN", + "2SEBASTIAN", + "2SELMER", + "2SEVERIN", + "2SEYED", + "2SIGBJZ2RN", + "2SIGFRED", + "2SIGMUND", + "2SIGURD", + "2SIGVALD", + "2SIGVART", + "2SIGVE", + "2SILAS", + "2SIMEN", + "2SIMON", + "2SINDRE", + "2SIVERT", + "2SJUR", + "2SKJALG", + "2SLAWOMIR", + "2SNORRE", + "2SOLOMON", + "2SONDRE", + "2STANISLAW", + "2STEFAN", + "2STEFFAN", + "2STEFFEN", + "2STEIN", + "2STEINAR", + "2STEN", + "2STEPHAN", + "2STEPHEN", + "2STEVE", + "2STEVEN", + "2STIAN", + "2STIG", + "2STORM", + "2STURE", + "2STURLA", + "2STZ3LE", + "2SVEIN", + "2SVEIN_ERIK", + "2SVEINUNG", + "2SVEN", + "2SVEND", + "2SVENN", + "2SVERRE", + "2SYED", + "2SYLWESTER", + "2SYVER", + "2SZ2LVE", + "2SZYMON", + "2SZ2REN", + "2TADAS", + "2TADEUSZ", + "2TAGE", + "2TALLAK", + "2TARALD", + "2TARJEI", + "2TED", + "2TELLEF", + "2TEO", + "2TEODOR", + "2TERJE", + "2THANH", + "2THEO", + "2THEODOR", + "2THOMAS", + "2THOR", + "2THORBJZ2RN", + "2THORE", + "2THORLEIF", + "2THORSTEIN", + "2THORVALD", + "2TIM", + "2TIMIAN", + "2TIMOTHY", + "2TOBIAS", + "2TOM", + "2TOM_ERIK", + "2TOMAS", + "2TOMASZ", + "2TOMMY", + "2TONI", + "2TONNY", + "2TONY", + "2TOR", + "2TOR_ARNE", + "2TOR_ERIK", + "2TORALF", + "2TORBEN", + "2TORBJZ2RN", + "2TORD", + "2TORE", + "2TORFINN", + "2TORGEIR", + "2TORGER", + "2TORGRIM", + "2TORJE", + "2TORJUS", + "2TORKEL", + "2TORKIL", + "2TORKILD", + "2TORLEIF", + "2TORLEIV", + "2TORMOD", + "2TORODD", + "2TORSTEIN", + "2TORVALD", + "2TRISTAN", + "2TRON", + "2TROND", + "2TROY", + "2TRULS", + "2TRYGVE", + "2TRYM", + "2TZ2NNES", + "2ULF", + "2ULRIK", + "2USMAN", + "2VAIDAS", + "2VALENTIN", + "2VAN", + "2VARG", + "2VEBJZ2RN", + "2VEGAR", + "2VEGARD", + "2VEMUND", + "2VETLE", + "2VICTOR", + "2VIDAR", + "2VIGGO", + "2VIKTOR", + "2VILHELM", + "2VILJAR", + "2VILLY", + "2VINCENT", + "2VLADIMIR", + "2VYTAUTAS", + "2WALDEMAR", + "2WALID", + "2WALTER", + "2WERNER", + "2WIDAR", + "2WIESLAW", + "2WIGGO", + "2WIKTOR", + "2WILHELM", + "2WILLIAM", + "2WILLY", + "2WILMER", + "2WOJCIECH", + "2YAHYA", + "2YASIN", + "2YASIR", + "2YNGVAR", + "2YNGVE", + "2YONAS", + "2YOSEF", + "2YOUNES", + "2YOUSEF", + "2YOUSSEF", + "2YUSUF", + "2ZAKARIA", + "2ZBIGNIEW", + "2ZORAN", + "2Z2ISTEIN", + "2Z2IVIND", + "2Z2RJAN", + "2Z2RNULF", + "2Z2YSTEIN", + "2Z2YVIND", + "2Z3DNE", + "2Z3GE", + "2Z3SMUND" + ] + } + }, + { + "code": "ContentsCode", + "selection": { + "filter": "item", + "values": [ + "Personer" + ] + } + } + ], + "response": { + "format": "json-stat2" + } +} diff --git a/dev-database/data-generation/namegen/jentenavn.json b/dev-database/data-generation/namegen/jentenavn.json new file mode 100644 index 0000000..62ddbac --- /dev/null +++ b/dev-database/data-generation/namegen/jentenavn.json @@ -0,0 +1,1041 @@ +{ + "query": [ + { + "code": "Fornavn", + "selection": { + "filter": "vs:NavnJenter02", + "values": [ + "1AAGOT", + "1AASE", + "1AASHILD", + "1AASTA", + "1ABIGAIL", + "1ADA", + "1ADELE", + "1ADELEN", + "1ADELINA", + "1ADRIANA", + "1AGATA", + "1AGATHE", + "1AGNE", + "1AGNES", + "1AGNETE", + "1AGNETHE", + "1AGNIESZKA", + "1AIDA", + "1AILEEN", + "1AILIN", + "1AINA", + "1AISHA", + "1ALBA", + "1ALEKSANDRA", + "1ALETTE", + "1ALEXANDRA", + "1ALFHILD", + "1ALICE", + "1ALICIA", + "1ALICJA", + "1ALIDA", + "1ALINA", + "1ALINE", + "1ALISA", + "1ALISE", + "1ALMA", + "1ALVA", + "1ALVHILD", + "1ALVILDE", + "1AMAL", + "1AMALIA", + "1AMALIE", + "1AMANDA", + "1AMELIA", + "1AMELIE", + "1AMINA", + "1AMIRA", + "1AMNA", + "1AMY", + "1ANA", + "1ANASTASIA", + "1ANBJZ2RG", + "1ANDREA", + "1ANDRINE", + "1ANE", + "1ANETA", + "1ANETT", + "1ANETTE", + "1ANGELA", + "1ANGELICA", + "1ANGELIKA", + "1ANGELINA", + "1ANINE", + "1ANISA", + "1ANITA", + "1ANJA", + "1ANLAUG", + "1ANN", + "1ANN_CHRISTIN", + "1ANN_HELEN", + "1ANN_KARIN", + "1ANN_KRISTIN", + "1ANN_MARI", + "1ANNA", + "1ANNABELLE", + "1ANNBJZ2RG", + "1ANNE", + "1ANNE_BERIT", + "1ANNE_BRITT", + "1ANNE_GRETE", + "1ANNE_GRETHE", + "1ANNE_KARI", + "1ANNE_KARIN", + "1ANNE_KRISTIN", + "1ANNE_LENE", + "1ANNE_LISE", + "1ANNE_MARI", + "1ANNE_MARIE", + "1ANNE_MARIT", + "1ANNE_METTE", + "1ANNE_SOFIE", + "1ANNELI", + "1ANNELISE", + "1ANNETTE", + "1ANNI", + "1ANNIE", + "1ANNIKA", + "1ANNIKEN", + "1ANNLAUG", + "1ANNY", + "1ANTONIA", + "1ANTONINA", + "1ARIA", + "1ARIANA", + "1ARIEL", + "1ARINA", + "1ARNA", + "1ARNHILD", + "1ARYA", + "1ASBJZ2RG", + "1ASHA", + "1ASLAUG", + "1ASMA", + "1ASTA", + "1ASTRI", + "1ASTRID", + "1AUD", + "1AUDHILD", + "1AUDNY", + "1AURORA", + "1AUSRA", + "1AVA", + "1AYA", + "1AYAN", + "1AYLA", + "1AYLIN", + "1AYSE", + "1AZRA", + "1BARBARA", + "1BARBRO", + "1BEATA", + "1BEATE", + "1BEATHE", + "1BEATRICE", + "1BELINDA", + "1BELLA", + "1BENEDICTE", + "1BENEDIKTE", + "1BENTE", + "1BENTHE", + "1BERGLJOT", + "1BERIT", + "1BERTHA", + "1BERTINE", + "1BETINA", + "1BETTINA", + "1BETTY", + "1BIANCA", + "1BIBI", + "1BIRGIT", + "1BIRGITTA", + "1BIRGITTE", + "1BIRTE", + "1BIRTHE", + "1BJZ2RG", + "1BODIL", + "1BORGHILD", + "1BORGNY", + "1BOZENA", + "1BRIT", + "1BRITA", + "1BRITH", + "1BRITT", + "1BRYNHILD", + "1BUSHRA", + "1CAMILLA", + "1CARINA", + "1CARINE", + "1CARLA", + "1CARMEN", + "1CAROLINA", + "1CAROLINE", + "1CASSANDRA", + "1CATHARINA", + "1CATHERINE", + "1CATHRIN", + "1CATHRINE", + "1CATRINE", + "1CECILIA", + "1CECILIE", + "1CELIA", + "1CELINA", + "1CELINE", + "1CESILIE", + "1CHARLOTTE", + "1CHRISTEL", + "1CHRISTIANE", + "1CHRISTIN", + "1CHRISTINA", + "1CHRISTINE", + "1CICILIE", + "1CINDY", + "1CLARA", + "1CLAUDIA", + "1CONNIE", + "1CORNELIA", + "1CRISTINA", + "1DAGMAR", + "1DAGNY", + "1DAGRUN", + "1DAIVA", + "1DALIA", + "1DANA", + "1DANIELA", + "1DANIELLA", + "1DANUTA", + "1DARIA", + "1DEBORAH", + "1DESIREE", + "1DIANA", + "1DINA", + "1DOMINIKA", + "1DORIS", + "1DOROTA", + "1DORTHE", + "1DORTHEA", + "1EA", + "1EBBA", + "1EDDA", + "1EDEL", + "1EDEN", + "1EDIT", + "1EDITA", + "1EDITH", + "1EDLE", + "1EDNA", + "1EDYTA", + "1EGLE", + "1EILEEN", + "1EILEN", + "1EILIN", + "1EIR", + "1EIRA", + "1EIRIL", + "1EIRILL", + "1EIRIN", + "1EIVOR", + "1EKATERINA", + "1ELBJZ2RG", + "1ELDBJZ2RG", + "1ELDRID", + "1ELEA", + "1ELEAH", + "1ELEN", + "1ELENA", + "1ELFRID", + "1ELI", + "1ELIANA", + "1ELIDA", + "1ELIF", + "1ELIN", + "1ELINA", + "1ELINE", + "1ELINOR", + "1ELISA", + "1ELISABET", + "1ELISABETH", + "1ELISE", + "1ELIZA", + "1ELIZABETH", + "1ELLA", + "1ELLE", + "1ELLEN", + "1ELLIE", + "1ELLINOR", + "1ELLY", + "1ELMA", + "1ELNA", + "1ELSA", + "1ELSE", + "1ELSE_MARIE", + "1ELSIE", + "1ELVIRA", + "1ELZBIETA", + "1EMA", + "1EMBLA", + "1EMELIE", + "1EMELY", + "1EMILIA", + "1EMILIE", + "1EMILIJA", + "1EMILY", + "1EMINA", + "1EMINE", + "1EMMA", + "1EMMELI", + "1EMMELINE", + "1EMMY", + "1ENYA", + "1ERICA", + "1ERIKA", + "1ERLE", + "1ERNA", + "1ESTER", + "1ESTHER", + "1EVA", + "1EVELINA", + "1EVELYN", + "1EVY", + "1EWA", + "1EWELINA", + "1FADUMO", + "1FANNY", + "1FARAH", + "1FATEMEH", + "1FATIMA", + "1FATMA", + "1FELICIA", + "1FILIPPA", + "1FIONA", + "1FREDRIKKE", + "1FREYA", + "1FRID", + "1FRIDA", + "1FRIDE", + "1FRZ2YA", + "1FRZ2YDIS", + "1GABRIELA", + "1GABRIELE", + "1GABRIELLA", + "1GABRIELLE", + "1GALINA", + "1GERD", + "1GERDA", + "1GINA", + "1GINE", + "1GINTARE", + "1GITTE", + "1GJERTRUD", + "1GLORIA", + "1GRACE", + "1GRAZYNA", + "1GRETA", + "1GRETE", + "1GRETHA", + "1GRETHE", + "1GRO", + "1GRY", + "1GUDNY", + "1GUDRUN", + "1GUDVEIG", + "1GUN", + "1GUNDA", + "1GUNHILD", + "1GUNN", + "1GUNNBJZ2RG", + "1GUNNHILD", + "1GUNNLAUG", + "1GUNNVOR", + "1GUNVOR", + "1GURI", + "1GURO", + "1GYDA", + "1GZ2RIL", + "1HAFSA", + "1HAILEY", + "1HALA", + "1HALDIS", + "1HALIMA", + "1HALLDIS", + "1HAMDI", + "1HANA", + "1HANAN", + "1HANNA", + "1HANNAH", + "1HANNE", + "1HARRIET", + "1HATICE", + "1HEDDA", + "1HEDVIG", + "1HEGE", + "1HEIDI", + "1HELEN", + "1HELENA", + "1HELENE", + "1HELGA", + "1HELIN", + "1HELLE", + "1HENNIE", + "1HENNY", + "1HENRIETTE", + "1HENRIKKE", + "1HERBORG", + "1HERDIS", + "1HERMINE", + "1HIBA", + "1HILD", + "1HILDA", + "1HILDE", + "1HILDEGUNN", + "1HILDUR", + "1HJZ2RDIS", + "1HODAN", + "1HONG", + "1HUDA", + "1HULDA", + "1IBEN", + "1IDA", + "1IDUN", + "1IDUNN", + "1IEVA", + "1ILONA", + "1IMAN", + "1INA", + "1INE", + "1INES", + "1INGA", + "1INGEBJZ2RG", + "1INGEBORG", + "1INGELIN", + "1INGER", + "1INGER_JOHANNE", + "1INGER_LISE", + "1INGER_MARIE", + "1INGERID", + "1INGFRID", + "1INGHILD", + "1INGJERD", + "1INGRI", + "1INGRID", + "1INGRIDA", + "1INGUN", + "1INGUNN", + "1INGVIL", + "1INGVILD", + "1INGVILL", + "1IQRA", + "1IREN", + "1IRENA", + "1IRENE", + "1IRINA", + "1IRIS", + "1IRMA", + "1IRMELIN", + "1IRYNA", + "1ISA", + "1ISABEL", + "1ISABELL", + "1ISABELLA", + "1ISABELLE", + "1ISELIN", + "1IVANA", + "1IWONA", + "1IZABELA", + "1JACQUELINE", + "1JAMILA", + "1JANA", + "1JANE", + "1JANET", + "1JANICKE", + "1JANITA", + "1JANNE", + "1JANNICHE", + "1JANNICKE", + "1JANNIKE", + "1JASMIN", + "1JASMINA", + "1JASMINE", + "1JEANETT", + "1JEANETTE", + "1JELENA", + "1JENNI", + "1JENNIE", + "1JENNIFER", + "1JENNY", + "1JESSICA", + "1JETTE", + "1JILL", + "1JOAN", + "1JOANNA", + "1JOFRID", + "1JOHANNA", + "1JOHANNE", + "1JOLANTA", + "1JORID", + "1JORUN", + "1JORUNN", + "1JOSEFINE", + "1JOSEPHINE", + "1JUDIT", + "1JUDITH", + "1JULIA", + "1JULIANA", + "1JULIANE", + "1JULIANNE", + "1JULIE", + "1JUNE", + "1JUNI", + "1JURGITA", + "1JUSTYNA", + "1KAIA", + "1KAISA", + "1KAJA", + "1KAJSA", + "1KAMILA", + "1KAMILLA", + "1KAREN", + "1KARI", + "1KARI_ANNE", + "1KARIANNE", + "1KARIN", + "1KARINA", + "1KARINE", + "1KARLA", + "1KAROLINA", + "1KAROLINE", + "1KATARINA", + "1KATARZYNA", + "1KATE", + "1KATHARINA", + "1KATHE", + "1KATHERINE", + "1KATHINKA", + "1KATHRIN", + "1KATHRINE", + "1KATINKA", + "1KATJA", + "1KATRIN", + "1KATRINA", + "1KATRINE", + "1KAYA", + "1KELLY", + "1KERSTIN", + "1KHADIJA", + "1KIM", + "1KINE", + "1KINGA", + "1KIRA", + "1KIRSTEN", + "1KIRSTI", + "1KITTY", + "1KJELLAUG", + "1KJELLFRID", + "1KJELLRUN", + "1KJERSTI", + "1KJERSTIN", + "1KLARA", + "1KLAUDIA", + "1KORNELIA", + "1KRISTEL", + "1KRISTI", + "1KRISTIANE", + "1KRISTIN", + "1KRISTINA", + "1KRISTINE", + "1KRYSTYNA", + "1LAILA", + "1LAJLA", + "1LANA", + "1LARA", + "1LARISA", + "1LAURA", + "1LEA", + "1LEAH", + "1LEIKNY", + "1LEILA", + "1LENA", + "1LENE", + "1LENI", + "1LEONA", + "1LEONORA", + "1LEYLA", + "1LIANA", + "1LIDIA", + "1LILIAN", + "1LILIANA", + "1LILJA", + "1LILL", + "1LILLI", + "1LILLIAN", + "1LILLY", + "1LILY", + "1LIN", + "1LINA", + "1LINDA", + "1LINDIS", + "1LINE", + "1LINEA", + "1LINN", + "1LINNEA", + "1LISA", + "1LISBET", + "1LISBETH", + "1LISE", + "1LISS", + "1LIV", + "1LIVA", + "1LIVE", + "1LIVIA", + "1LIZ", + "1LIZA", + "1LONE", + "1LOTTA", + "1LOTTE", + "1LOUISA", + "1LOUISE", + "1LOVISE", + "1LUCIA", + "1LUCY", + "1LUNA", + "1LYDIA", + "1LYKKE", + "1MA", + "1MADELEINE", + "1MADELEN", + "1MADELENE", + "1MAGDA", + "1MAGDALENA", + "1MAGNA", + "1MAGNHILD", + "1MAGNI", + "1MAGNY", + "1MAI", + "1MAI_BRITT", + "1MAIA", + "1MAIKEN", + "1MAJ", + "1MAJA", + "1MALAK", + "1MALENA", + "1MALENE", + "1MALGORZATA", + "1MALI", + "1MALIKA", + "1MALIN", + "1MAREN", + "1MARGARET", + "1MARGARETH", + "1MARGARITA", + "1MARGIT", + "1MARGOT", + "1MARGRETE", + "1MARGRETHE", + "1MARGUN", + "1MARGUNN", + "1MARI", + "1MARI_ANN", + "1MARIA", + "1MARIAM", + "1MARIAN", + "1MARIANA", + "1MARIANN", + "1MARIANNE", + "1MARIE", + "1MARIEL", + "1MARIELL", + "1MARIELLE", + "1MARIJA", + "1MARINA", + "1MARION", + "1MARIT", + "1MARITA", + "1MARLEN", + "1MARLENE", + "1MARRY", + "1MARTA", + "1MARTE", + "1MARTHA", + "1MARTHE", + "1MARTHINE", + "1MARTINA", + "1MARTINE", + "1MARTYNA", + "1MARWA", + "1MARY", + "1MARY_ANN", + "1MARYAM", + "1MARYAN", + "1MARZENA", + "1MATHEA", + "1MATHILDA", + "1MATHILDE", + "1MATILDA", + "1MATILDE", + "1MAUD", + "1MAY", + "1MAY_BRITT", + "1MAY_LISS", + "1MAYA", + "1MAYLEN", + "1MEDINA", + "1MELANIE", + "1MELINA", + "1MELINDA", + "1MELISA", + "1MELISSA", + "1MERETE", + "1MERETHE", + "1METTE", + "1MIA", + "1MICHAELA", + "1MICHELLE", + "1MIE", + "1MIKAELA", + "1MILA", + "1MILANA", + "1MILDRID", + "1MILENA", + "1MILLA", + "1MILLE", + "1MILLIE", + "1MINA", + "1MIRA", + "1MIRANDA", + "1MIRIAM", + "1MIRJAM", + "1MOLLY", + "1MONA", + "1MONICA", + "1MONIKA", + "1MUNA", + "1MY", + "1MZ2YFRID", + "1MZ3LFRID", + "1NADA", + "1NADIA", + "1NADINE", + "1NADJA", + "1NAIMA", + "1NAJMA", + "1NANCY", + "1NANNA", + "1NAOMI", + "1NATALIA", + "1NATALIE", + "1NATASHA", + "1NATHALIE", + "1NELIA", + "1NELLIE", + "1NELLY", + "1NGOC", + "1NICOLE", + "1NICOLINE", + "1NIKOLA", + "1NIKOLINE", + "1NINA", + "1NINNI", + "1NOELLE", + "1NOOR", + "1NORA", + "1NORAH", + "1NORMA", + "1NORUNN", + "1NOUR", + "1NOVA", + "1ODA", + "1ODDBJZ2RG", + "1ODDLAUG", + "1ODDNY", + "1ODDRUN", + "1ODDVEIG", + "1OKSANA", + "1OLAUG", + "1OLAVA", + "1OLEA", + "1OLENA", + "1OLGA", + "1OLINE", + "1OLIVIA", + "1OLIWIA", + "1OTHELIE", + "1OTHILIE", + "1OTILIE", + "1PATRICIA", + "1PATRYCJA", + "1PAULA", + "1PAULINA", + "1PAULINE", + "1PEGGY", + "1PERNILLE", + "1PETRA", + "1PHUONG", + "1PIA", + "1RABIA", + "1RACHEL", + "1RAGNA", + "1RAGNE", + "1RAGNHILD", + "1RAGNI", + "1RAHEL", + "1RAHMA", + "1RAKEL", + "1RAMONA", + "1RANA", + "1RANDI", + "1RANIA", + "1RANNVEIG", + "1RANVEIG", + "1RASA", + "1REBECCA", + "1REBECKA", + "1REBEKKA", + "1REGINA", + "1REGINE", + "1REIDUN", + "1REIDUNN", + "1RENATA", + "1RENATE", + "1RENATHE", + "1RENEE", + "1RIGMOR", + "1RIKKE", + "1RINA", + "1RITA", + "1RONJA", + "1ROSA", + "1ROSE", + "1RUBY", + "1RUNA", + "1RUT", + "1RUTA", + "1RUTH", + "1RZ2NNAUG", + "1SABA", + "1SABINA", + "1SABINE", + "1SABRINA", + "1SADIA", + "1SAFA", + "1SAFIA", + "1SAGA", + "1SAHAR", + "1SAHRA", + "1SAIMA", + "1SALLY", + "1SALMA", + "1SAMANTHA", + "1SAMIRA", + "1SANA", + "1SANDRA", + "1SANJA", + "1SANNA", + "1SANNE", + "1SARA", + "1SARAH", + "1SAVANNAH", + "1SELAM", + "1SELINA", + "1SELINE", + "1SELMA", + "1SENAIT", + "1SERINA", + "1SERINE", + "1SHARON", + "1SHEILA", + "1SHIRIN", + "1SIDRA", + "1SIDSEL", + "1SIENNA", + "1SIGFRID", + "1SIGNE", + "1SIGNY", + "1SIGRID", + "1SIGRUN", + "1SIGRUNN", + "1SIHAM", + "1SILJA", + "1SILJE", + "1SILVIA", + "1SIMONA", + "1SIMONE", + "1SINA", + "1SINE", + "1SIREN", + "1SIRI", + "1SIRIL", + "1SISSEL", + "1SIV", + "1SIW", + "1SNEFRID", + "1SOFIA", + "1SOFIE", + "1SOFIJA", + "1SOL", + "1SOLBJZ2RG", + "1SOLFRID", + "1SOLGUNN", + "1SOLRUN", + "1SOLVEIG", + "1SOLVOR", + "1SOLVZ3R", + "1SONIA", + "1SONJA", + "1SOPHIA", + "1SOPHIE", + "1STELLA", + "1STEPHANIE", + "1STINA", + "1STINE", + "1SUMAYA", + "1SUNNIVA", + "1SUSAN", + "1SUSANN", + "1SUSANNA", + "1SUSANNE", + "1SUZANNE", + "1SVANHILD", + "1SVETLANA", + "1SYEDA", + "1SYLVI", + "1SYLVIA", + "1SYLWIA", + "1SYNNE", + "1SYNNZ2VE", + "1SYNZ2VE", + "1SZ2LVI", + "1TALE", + "1TAMARA", + "1TANJA", + "1TANYA", + "1TARA", + "1TATIANA", + "1TATJANA", + "1TEA", + "1TERESA", + "1TERESE", + "1THALE", + "1THANH", + "1THEA", + "1THELMA", + "1THERESA", + "1THERESE", + "1THI", + "1THILDE", + "1THORA", + "1THU", + "1THUY", + "1TIA", + "1TILDE", + "1TILLA", + "1TINA", + "1TINE", + "1TIRIL", + "1TIRILL", + "1TOMINE", + "1TONE", + "1TONJE", + "1TORA", + "1TORBJZ2RG", + "1TORDIS", + "1TORGUNN", + "1TORHILD", + "1TORIL", + "1TORILD", + "1TORILL", + "1TORUN", + "1TORUNN", + "1TOVE", + "1TRINE", + "1TRINE_LISE", + "1TRUDE", + "1TURI", + "1TURID", + "1TUVA", + "1TYRA", + "1ULLA", + "1ULRIKKE", + "1UNA", + "1UNE", + "1UNN", + "1UNNI", + "1URSZULA", + "1VAIDA", + "1VALBORG", + "1VALENTINA", + "1VALERIA", + "1VANESSA", + "1VANJA", + "1VENCHE", + "1VENKE", + "1VERA", + "1VERONICA", + "1VERONIKA", + "1VESLEMZ2Y", + "1VIBECKE", + "1VIBEKE", + "1VICTORIA", + "1VIDA", + "1VIGDIS", + "1VIKTORIA", + "1VIKTORIJA", + "1VILDE", + "1VILJA", + "1VILJE", + "1VILMA", + "1VIOLA", + "1VIOLETA", + "1VIVI", + "1VIVIAN", + "1VZ3R", + "1VZ3RIN", + "1WANJA", + "1WENCHE", + "1WENDY", + "1WENKE", + "1WERONIKA", + "1WIGDIS", + "1WIKTORIA", + "1WILMA", + "1YASMIN", + "1YLVA", + "1YNGVILD", + "1YVONNE", + "1ZAHRA", + "1ZAINAB", + "1ZARA", + "1ZEINAB", + "1ZOE", + "1ZOFIA", + "1ZUZANNA", + "1Z3GOT", + "1Z3SA", + "1Z3SE", + "1Z3SHILD", + "1Z3SLAUG", + "1Z3SNE", + "1Z3STA" + ] + } + }, + { + "code": "ContentsCode", + "selection": { + "filter": "item", + "values": [ + "Personer" + ] + } + } + ], + "response": { + "format": "json-stat2" + } +} diff --git a/dev-database/data-generation/namegen/namegen.py b/dev-database/data-generation/namegen/namegen.py new file mode 100644 index 0000000..ea51c99 --- /dev/null +++ b/dev-database/data-generation/namegen/namegen.py @@ -0,0 +1,133 @@ +#!/usr/bin/env python +# coding: utf-8 + +from pyjstat import pyjstat +import pandas as pd +import requests +import json +import random +import importlib.resources + +POST_URL_FORNAVN = "https://data.ssb.no/api/v0/no/table/10467" +POST_URL_ETTERNAVN = "https://data.ssb.no/api/v0/no/table/12891/" + +cache = {} + + +def get_data_from_ssb(url, payload): + response = requests.post(url, json=payload) + if response.ok: + dataset = pyjstat.Dataset.read(response.text) + return dataset.write("dataframe") + return pd.DataFrame() + + +def get_fornavn(): + dfs = [] + for kjønn in ["jente", "gutte"]: + with importlib.resources.open_text('namegen', f"{kjønn}navn.json") as file: + payload = json.load(file) + df = get_data_from_ssb(POST_URL_FORNAVN, payload) + dfs.append(df) + df = pd.concat(dfs) + return df.pivot_table( + index="fornavn", columns="statistikkvariabel", values="value", aggfunc="sum" + ).reset_index() + + +def get_etternavn(): + with importlib.resources.open_text('namegen', f"etternavn.json") as file: + payload = json.load(file) + df = get_data_from_ssb(POST_URL_ETTERNAVN, payload) + return df.pivot_table( + index="etternavn", columns="statistikkvariabel", values="value", aggfunc="sum" + ).reset_index() + + +def ensure_initialized(func): + def wrapper(*args, **kwargs): + global cache + if "fornavn" not in cache or "etternavn" not in cache: + cache["fornavn_df"] = get_fornavn() + cache["fornavn"] = cache["fornavn_df"]["fornavn"].unique() + cache["etternavn_df"] = get_etternavn() + cache["etternavn"] = cache["etternavn_df"]["etternavn"].unique() + + # Call the original function with initialized data + return func(cache=cache, *args, **kwargs) + + return wrapper + + +def random_lastname(): + return random_name(cache_key="etternavn") + + +def random_firstname(): + return random_name(cache_key="fornavn") + + +def random_fullname(as_list=False, middlename_prob=0.5): + names = [random_firstname()] + while random.random() < middlename_prob: + names.append(random_firstname()) + middlename_prob /= 2 + names.append(random_lastname()) + return names if as_list else " ".join(names) + + +@ensure_initialized +def random_name(cache_key="fornavn", cache=cache): + return random.choice(cache[cache_key]) + + +# A username generator, that will store the previously used usernames +def username_generator(): + usernames = [] + + def generator(name): + new_username = generate_username(name, existing_usernames=usernames) + usernames.append(new_username) + return new_username + + return generator + + +def generate_username(name, existing_usernames=[], max_length=8): + full_name = ( + name.lower() + .replace("å", "aa") + .replace("ø", "oe") + .replace("æ", "ae") + .replace("-", "") + ) + names = full_name.split() + first_name = names[0] + middle_names = "".join(names[1:-1]) + last_name = names[-1] + username = first_name[:max_length] + + # Prefer username based on first name + for i in range(max_length): + username = f"{username[:(max_length-i)]}{last_name[:i]}" + if username not in existing_usernames: + return username + + # Second preference: randomly split username into three parts + for i in range(100): + lengths = sorted(random.sample(range(1, max_length), 2 if middle_names else 1)) + cuts = [lengths[0], lengths[-1] - lengths[0], max_length - lengths[-1]] + username = ( + first_name[: cuts[0]] + middle_names[: cuts[1]] + last_name[: cuts[2]] + ) + if username not in existing_usernames: + return username + + # Last resort loop + i = 2 + while username in existing_usernames: + digits = len(f"i") + username = f"{first_name[:max_length-digits]}{i}" + i += 1 + + return username diff --git a/dev-database/data-generation/requirements.txt b/dev-database/data-generation/requirements.txt new file mode 100644 index 0000000..0b6240a --- /dev/null +++ b/dev-database/data-generation/requirements.txt @@ -0,0 +1,2 @@ +pandas +pyjstat diff --git a/dev-database/data-generation/script.py b/dev-database/data-generation/script.py new file mode 100644 index 0000000..5b7c58b --- /dev/null +++ b/dev-database/data-generation/script.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding: utf-8 + +import pandas as pd +import argparse +import sys +from namegen import random_fullname, username_generator + +# Parse command-line arguments +parser = argparse.ArgumentParser(description="Transform a CSV file with user data.") +parser.add_argument("input_csv", help="Input CSV file") +args = parser.parse_args() + +# Load the input CSV file +df = pd.read_csv(args.input_csv) + +# Generate usernames +usergen = username_generator() + +# Modify the DataFrame +for i, row in df.iterrows(): + names = random_fullname(as_list=True) + df.at[i, 'firstName'] = ' '.join(names[0:-1]) + df.at[i, 'lastName'] = names[-1] + df.at[i, 'email'] = f"{usergen(' '.join(names))}@testdummy.cyb.no" + +# Output the modified CSV to stdout +df.to_csv(sys.stdout, index=False, na_rep='NULL') diff --git a/dev-database/mysql-init/0-init.sql b/dev-database/mysql-init/0-init.sql new file mode 100644 index 0000000..8428750 --- /dev/null +++ b/dev-database/mysql-init/0-init.sql @@ -0,0 +1,345 @@ +-- MySQL dump 10.13 Distrib 8.0.39, for Linux (x86_64) +-- +-- Host: localhost Database: internsystem_v2_data +-- ------------------------------------------------------ +-- Server version 8.0.39-0ubuntu0.22.04.1 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `ActivateToken` +-- + +DROP TABLE IF EXISTS `ActivateToken`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `ActivateToken` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `token` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `activatedAt` datetime(3) DEFAULT NULL, + `createdAt` datetime(3) DEFAULT CURRENT_TIMESTAMP(3), + `updatedAt` datetime(3) DEFAULT NULL, + `userId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `ActivateToken_token_key` (`token`), + KEY `ActivateToken_userId_fkey` (`userId`), + CONSTRAINT `ActivateToken_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `Event` +-- + +DROP TABLE IF EXISTS `Event`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Event` ( + `id` varchar(45) NOT NULL, + `title` varchar(45) NOT NULL, + `startDate` datetime NOT NULL, + `endDate` datetime NOT NULL, + `description` varchar(120) NOT NULL, + `location` varchar(45) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `MenuProduct` +-- + +DROP TABLE IF EXISTS `MenuProduct`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `MenuProduct` ( + `id` int NOT NULL, + `name` varchar(45) NOT NULL, + `volume` float NOT NULL, + `price` int NOT NULL, + `priceVolunteer` int NOT NULL, + `glutenfree` tinyint NOT NULL, + `active` tinyint DEFAULT '1', + `category` varchar(45) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `Role` +-- + +DROP TABLE IF EXISTS `Role`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Role` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `createdAt` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), + `updatedAt` datetime(3) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `Role_name_key` (`name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `Semester` +-- + +DROP TABLE IF EXISTS `Semester`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Semester` ( + `id` int NOT NULL, + `semester` varchar(45) DEFAULT NULL, + `year` int DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `Session` +-- + +DROP TABLE IF EXISTS `Session`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `Session` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `sessionToken` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `userId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `expires` datetime(3) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `Session_sessionToken_key` (`sessionToken`), + KEY `Session_userId_fkey` (`userId`), + CONSTRAINT `Session_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `ShiftCafe` +-- + +DROP TABLE IF EXISTS `ShiftCafe`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `ShiftCafe` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `startAt` datetime NOT NULL, + `createdAt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, + `shiftPosition` int NOT NULL, + `comment` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `shiftManager` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `shiftWorker1` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `shiftWorker2` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `ShiftCafe_shiftWorker_User_idx` (`shiftManager`), + KEY `ShiftCafe_shiftWorker2_User_idx` (`shiftWorker1`), + KEY `ShiftCafe_shiftWorker2_User_idx1` (`shiftWorker2`), + CONSTRAINT `ShiftCafe_shiftManager_User` FOREIGN KEY (`shiftManager`) REFERENCES `User` (`id`), + CONSTRAINT `ShiftCafe_shiftWorker1_User` FOREIGN KEY (`shiftWorker1`) REFERENCES `User` (`id`), + CONSTRAINT `ShiftCafe_shiftWorker2_User` FOREIGN KEY (`shiftWorker2`) REFERENCES `User` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `User` +-- + +DROP TABLE IF EXISTS `User`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `User` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `email` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `emailVerified` datetime(3) DEFAULT NULL, + `active` tinyint(1) NOT NULL DEFAULT '0', + `createdAt` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), + `updatedAt` datetime(3) NOT NULL, + `firstName` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `lastName` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `recruitedById` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `recruitedBy` (`id`) /*!80000 INVISIBLE */, + UNIQUE KEY `User_email_key` (`email`), + KEY `recruitedById_idx` (`recruitedById`), + CONSTRAINT `recruitedById` FOREIGN KEY (`recruitedById`) REFERENCES `User` (`id`) ON DELETE SET NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `UserMembership` +-- + +DROP TABLE IF EXISTS `UserMembership`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `UserMembership` ( + `id` int NOT NULL AUTO_INCREMENT, + `lifetime` tinyint(1) NOT NULL DEFAULT '0', + `honorary` tinyint(1) NOT NULL DEFAULT '0', + `date_joined` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, + `name` varchar(50) NOT NULL, + `email` varchar(254) NOT NULL, + `seller_id` varchar(191) NOT NULL, + `semester_id` int NOT NULL, + `user_id` varchar(50) DEFAULT NULL, + `uio_username` varchar(15) DEFAULT NULL, + `date_lifetime` datetime DEFAULT NULL, + `comments` text, + `last_edited_by_id` int DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `UserMembership_semester_idx` (`semester_id`), + CONSTRAINT `UserMembership_semester` FOREIGN KEY (`semester_id`) REFERENCES `Semester` (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=11005 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `UserRole` +-- + +DROP TABLE IF EXISTS `UserRole`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `UserRole` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `userId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `roleId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `UserRole_userId_roleId_key` (`userId`,`roleId`), + KEY `UserRole_roleId_fkey` (`roleId`), + CONSTRAINT `UserRole_roleId_fkey` FOREIGN KEY (`roleId`) REFERENCES `Role` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `UserRole_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `UserToWorkGroup` +-- + +DROP TABLE IF EXISTS `UserToWorkGroup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `UserToWorkGroup` ( + `userId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `workGroupId` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `groupLeader` tinyint(1) DEFAULT '0', + PRIMARY KEY (`workGroupId`,`userId`), + KEY `_VolunteerToWorkGroup_B_index` (`workGroupId`), + KEY `UserToWorkGroup_A_fkey_idx` (`userId`), + CONSTRAINT `UserToWorkGroup_A_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `UserToWorkGroup_B_fkey` FOREIGN KEY (`workGroupId`) REFERENCES `WorkGroup` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `VerificationToken` +-- + +DROP TABLE IF EXISTS `VerificationToken`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `VerificationToken` ( + `identifier` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `token` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `expires` datetime(3) NOT NULL, + UNIQUE KEY `VerificationToken_token_key` (`token`), + UNIQUE KEY `VerificationToken_identifier_token_key` (`identifier`,`token`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `VoucherLog` +-- + +DROP TABLE IF EXISTS `VoucherLog`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `VoucherLog` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `loggedFor` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `usedAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `amount` int NOT NULL, + `description` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL, + `semesterId` int NOT NULL, + PRIMARY KEY (`id`), + KEY `logID_idx` (`id`), + KEY `loggedFor_idx` (`loggedFor`), + KEY `VoucherLog_Semester_idx` (`semesterId`), + CONSTRAINT `loggedFor0` FOREIGN KEY (`loggedFor`) REFERENCES `User` (`id`) ON DELETE SET NULL, + CONSTRAINT `VoucherLog_Semester` FOREIGN KEY (`semesterId`) REFERENCES `Semester` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `WorkGroup` +-- + +DROP TABLE IF EXISTS `WorkGroup`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `WorkGroup` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(45) COLLATE utf8mb4_unicode_ci NOT NULL, + `leaderTitle` varchar(45) COLLATE utf8mb4_unicode_ci NOT NULL, + `description` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `gid_UNIQUE` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Table structure for table `WorkLog` +-- + +DROP TABLE IF EXISTS `WorkLog`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `WorkLog` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `loggedBy` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `loggedFor` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `workedAt` timestamp NULL DEFAULT NULL, + `createdAt` timestamp NULL DEFAULT CURRENT_TIMESTAMP, + `duration` float DEFAULT NULL, + `description` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `semesterId` int NOT NULL, + PRIMARY KEY (`id`), + KEY `logID_idx` (`id`), + KEY `loggedBy_idx` (`loggedBy`), + KEY `loggedFor_idx` (`loggedFor`), + KEY `WorkLog_Semester_idx` (`semesterId`), + CONSTRAINT `loggedBy` FOREIGN KEY (`loggedBy`) REFERENCES `User` (`id`) ON DELETE SET NULL, + CONSTRAINT `loggedFor` FOREIGN KEY (`loggedFor`) REFERENCES `User` (`id`) ON DELETE SET NULL, + CONSTRAINT `WorkLog_Semester` FOREIGN KEY (`semesterId`) REFERENCES `Semester` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2024-09-25 13:05:51 + + +-- Martin additions: + +-- LOAD DATA INFILE '/var/lib/mysql-files/users.csv' +-- INTO TABLE `User` +-- FIELDS TERMINATED BY ',' +-- ENCLOSED BY '"' +-- LINES TERMINATED BY '\n' +-- IGNORE 1 ROWS; diff --git a/dev-database/mysql-init/1-load-csv.sql b/dev-database/mysql-init/1-load-csv.sql new file mode 100644 index 0000000..72a3da1 --- /dev/null +++ b/dev-database/mysql-init/1-load-csv.sql @@ -0,0 +1,6 @@ +LOAD DATA INFILE '/var/lib/mysql-files/users.csv' +INTO TABLE `User` +FIELDS TERMINATED BY ',' +ENCLOSED BY '"' +LINES TERMINATED BY '\n' +IGNORE 1 ROWS; diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..d27da62 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,25 @@ +services: + mysql: + container_name: internsystem-v2-mysql + restart: always + environment: + MYSQL_ROOT_PASSWORD: rootpassword + MYSQL_DATABASE: mydb + build: + context: dev-database/ + dockerfile: Dockerfile + ports: + - "3306:3306" + + frontend: + container_name: internsystem-v2-frontend + depends_on: + - mysql + restart: always + build: + context: . + dockerfile: Dockerfile + environment: + DATABASE_URL: "mysql://root:rootpassword@mysql:3306/mydb" + ports: + - "3005:3005"