diff --git a/demo12.java b/demo12.java
new file mode 100644
index 0000000000000000000000000000000000000000..e4b626018acb6a4821f17dac9236328bfb42f54a
--- /dev/null
+++ b/demo12.java
@@ -0,0 +1,127 @@
+import java.util.ArrayList;
+
+public class Demo12 {
+    public static void main(String[] args) {
+    }
+}
+class Asiakas {
+    private String kayttaja;
+    private String salasana;
+
+    public Asiakas(ArrayList<String> varaukset) {
+        this.varaukset = varaukset;
+    }
+
+    public String getKayttaja() {
+        return kayttaja;
+    }
+
+    public void setKayttajan(String kayttaja) {
+        this.kayttaja = kayttaja;
+    }
+
+    public String getSalasana() {
+        return salasana;
+    }
+
+    public void setSalasana(String salasana) {
+        this.salasana = salasana;
+    }
+
+    public ArrayList<String> getVaraukset() {
+        return varaukset;
+    }
+
+    public void setVaraukset(ArrayList<String> varaukset) {
+        this.varaukset = varaukset;
+    }
+
+    public Asiakas(String kayttaja) {
+        this.kayttaja = kayttaja;
+    }
+
+    private ArrayList<String> varaukset = new ArrayList<>();
+    }
+class Esiintyja {
+    private String nimi;
+    private ArrayList<String> esitykset = new ArrayList<>();
+    private int palkka;
+
+    public String getNimi() {
+        return nimi;
+    }
+
+    public void setNimi(String nimi) {
+        this.nimi = nimi;
+    }
+
+    public ArrayList<String> getEsitykset() {
+        return esitykset;
+    }
+
+    public void setEsitykset(ArrayList<String> esitykset) {
+        this.esitykset = esitykset;
+    }
+
+    public int getPalkka() {
+        return palkka;
+    }
+
+    public void setPalkka(int palkka) {
+        this.palkka = palkka;
+    }
+
+    public String getErityisala() {
+        return erityisala;
+    }
+
+    public void setErityisala(String erityisala) {
+        this.erityisala = erityisala;
+    }
+
+    private String erityisala;
+
+    public Esiintyja(String nimi, ArrayList<String> esitykset, int palkka, String erityisala) {
+        this.nimi = nimi;
+        this.esitykset = esitykset;
+        this.palkka = palkka;
+        this.erityisala = erityisala;
+    }
+}
+class Tilaisuudet {
+    private String tyyppi;
+
+    public String getTyyppi() {
+        return tyyppi;
+    }
+
+    public void setTyyppi(String tyyppi) {
+        this.tyyppi = tyyppi;
+    }
+
+    public double getPvm() {
+        return pvm;
+    }
+
+    public void setPvm(double pvm) {
+        this.pvm = pvm;
+    }
+
+    public int getHinta() {
+        return hinta;
+    }
+
+    public void setHinta(int hinta) {
+        this.hinta = hinta;
+    }
+
+    private double pvm;
+
+    public Tilaisuudet(String tyyppi, double pvm, int hinta) {
+        this.tyyppi = tyyppi;
+        this.pvm = pvm;
+        this.hinta = hinta;
+    }
+
+    private int hinta;
+}
\ No newline at end of file