Index: applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java
===================================================================
--- applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java	(revision 27002)
+++ applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java	(revision 27005)
@@ -102,16 +102,15 @@
 		this.add(getChrButton(fixedButton, 0, 16, 44, 16, Messages.getString("FChar"), Chr.FIXED), null);
 		this.add(getChrButton(flashButton, 0, 32, 44, 16, Messages.getString("FlChar"), Chr.FLASH), null);
-		this.add(getChrButton(longFlashButton, 0, 48, 44, 16, Messages.getString("LFlChar"), Chr.LONGFLASH), null);
+		this.add(getChrButton(longFlashButton, 0, 48, 44, 16, Messages.getString("LFlChar"), Chr.LFLASH), null);
 		this.add(getChrButton(quickButton, 0, 64, 44, 16, Messages.getString("QChar"), Chr.QUICK), null);
-		this.add(getChrButton(veryQuickButton, 0, 80, 44, 16, Messages.getString("VQChar"), Chr.VERYQUICK), null);
-		this.add(getChrButton(ultraQuickButton, 0, 96, 44, 16, Messages.getString("UQChar"), Chr.ULTRAQUICK), null);
+		this.add(getChrButton(veryQuickButton, 0, 80, 44, 16, Messages.getString("VQChar"), Chr.VQUICK), null);
+		this.add(getChrButton(ultraQuickButton, 0, 96, 44, 16, Messages.getString("UQChar"), Chr.UQUICK), null);
 		this.add(getChrButton(alternatingButton, 44, 0, 44, 16, Messages.getString("AlChar"), Chr.ALTERNATING), null);
 		this.add(getChrButton(isophasedButton, 44, 16, 44, 16, Messages.getString("IsoChar"), Chr.ISOPHASED), null);
 		this.add(getChrButton(occultingButton, 44, 32, 44, 16, Messages.getString("OcChar"), Chr.OCCULTING), null);
 		this.add(getChrButton(morseButton, 44, 48, 44, 16, Messages.getString("MoChar"), Chr.MORSE), null);
-		this.add(getChrButton(interruptedQuickButton, 44, 64, 44, 16, Messages.getString("IQChar"), Chr.INTERRUPTEDQUICK), null);
-		this.add(getChrButton(interruptedVeryQuickButton, 44, 80, 44, 16, Messages.getString("IVQChar"), Chr.INTERRUPTEDVERYQUICK),
-				null);
-		this.add(getChrButton(interruptedUltraQuickButton, 44, 96, 44, 16, Messages.getString("IUQChar"), Chr.INTERRUPTEDULTRAQUICK),
+		this.add(getChrButton(interruptedQuickButton, 44, 64, 44, 16, Messages.getString("IQChar"), Chr.IQUICK), null);
+		this.add(getChrButton(interruptedVeryQuickButton, 44, 80, 44, 16, Messages.getString("IVQChar"), Chr.IVQUICK),null);
+		this.add(getChrButton(interruptedUltraQuickButton, 44, 96, 44, 16, Messages.getString("IUQChar"), Chr.IUQUICK),
 				null);
 		charLabel.setBounds(new Rectangle(0, 113, 88, 20));
Index: applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java
===================================================================
--- applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java	(revision 27002)
+++ applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java	(revision 27005)
@@ -5,4 +5,5 @@
 import java.awt.*;
 import java.awt.event.*;
+import java.util.EnumMap;
 
 import oseam.Messages;
@@ -39,4 +40,5 @@
 	public JLabel visibilityLabel;
 	public JComboBox visibilityBox;
+	public EnumMap<Vis, Integer> visibilities = new EnumMap<Vis, Integer>(Vis.class);
 	private ActionListener alVisibility = new ActionListener() {
 		public void actionPerformed(java.awt.event.ActionEvent e) {
@@ -72,4 +74,5 @@
 	public JLabel exhibitionLabel;
 	public JComboBox exhibitionBox;
+	public EnumMap<Exh, Integer> exhibitions = new EnumMap<Exh, Integer>(Exh.class);
 	private ActionListener alExhibition = new ActionListener() {
 		public void actionPerformed(java.awt.event.ActionEvent e) {
@@ -179,8 +182,8 @@
 		this.add(visibilityBox, null);
 		visibilityBox.addActionListener(alVisibility);
-		visibilityBox.addItem(Messages.getString("NoneSpecified"));
-		visibilityBox.addItem(Messages.getString("Intensified"));
-		visibilityBox.addItem(Messages.getString("Unintensified"));
-		visibilityBox.addItem(Messages.getString("PartiallyObscured"));
+		addVisibItem(Messages.getString("NoneSpecified"), Vis.UNKNOWN);
+		addVisibItem(Messages.getString("Intensified"), Vis.INTEN);
+		addVisibItem(Messages.getString("Unintensified"), Vis.UNINTEN);
+		addVisibItem(Messages.getString("PartiallyObscured"), Vis.PARTOBS);
 
 		exhibitionLabel = new JLabel(Messages.getString("Exhibition"), SwingConstants.CENTER);
@@ -191,9 +194,9 @@
 		this.add(exhibitionBox, null);
 		exhibitionBox.addActionListener(alExhibition);
-		exhibitionBox.addItem("-");
-		exhibitionBox.addItem(Messages.getString("24h"));
-		exhibitionBox.addItem(Messages.getString("Day"));
-		exhibitionBox.addItem(Messages.getString("Night"));
-		exhibitionBox.addItem(Messages.getString("Fog"));
+		addExhibItem(Messages.getString("NotSet"), Exh.UNKNOWN);
+		addExhibItem(Messages.getString("24h"), Exh.H24);
+		addExhibItem(Messages.getString("Day"), Exh.DAY);
+		addExhibItem(Messages.getString("Night"), Exh.NIGHT);
+		addExhibItem(Messages.getString("Fog"), Exh.FOG);
 
 		orientationLabel = new JLabel(Messages.getString("Orientation"), SwingConstants.CENTER);
@@ -210,4 +213,14 @@
 	}
 
+	private void addVisibItem(String str, Vis vis) {
+		visibilities.put(vis, visibilityBox.getItemCount());
+		visibilityBox.addItem(str);
+	}
+
+	private void addExhibItem(String str, Exh exh) {
+		exhibitions.put(exh, exhibitionBox.getItemCount());
+		exhibitionBox.addItem(str);
+	}
+
 	private JRadioButton getTypeButton(JRadioButton button, int x, int y, int w, int h, String tip) {
 		button.setBounds(new Rectangle(x, y, w, h));
Index: applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java
===================================================================
--- applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java	(revision 27002)
+++ applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java	(revision 27005)
@@ -67,13 +67,13 @@
 		}
 	};
-	public JLabel visLabel;
-	public JComboBox visBox;
-	public EnumMap<Vis, Integer> visibilities = new EnumMap<Vis, Integer>(Vis.class);
-	private ActionListener alVis = new ActionListener() {
-		public void actionPerformed(java.awt.event.ActionEvent e) {
-			for (Vis vis : visibilities.keySet()) {
-				int idx = visibilities.get(vis);
-				if (dlg.mark != null && (idx == visBox.getSelectedIndex()))
-					dlg.mark.setVis(vis);
+	public JLabel conLabel;
+	public JComboBox conBox;
+	public EnumMap<Con, Integer> conspicuities = new EnumMap<Con, Integer>(Con.class);
+	private ActionListener alCon = new ActionListener() {
+		public void actionPerformed(java.awt.event.ActionEvent e) {
+			for (Con con : conspicuities.keySet()) {
+				int idx = conspicuities.get(con);
+				if (dlg.mark != null && (idx == conBox.getSelectedIndex()))
+					dlg.mark.setCon(con);
 			}
 		}
@@ -81,11 +81,11 @@
 	public JLabel reflLabel;
 	public JComboBox reflBox;
-	public EnumMap<Vis, Integer> reflectivities = new EnumMap<Vis, Integer>(Vis.class);
+	public EnumMap<Con, Integer> reflectivities = new EnumMap<Con, Integer>(Con.class);
 	private ActionListener alRefl = new ActionListener() {
 		public void actionPerformed(java.awt.event.ActionEvent e) {
-			for (Vis vis : reflectivities.keySet()) {
-				int idx = reflectivities.get(vis);
+			for (Con con : reflectivities.keySet()) {
+				int idx = reflectivities.get(con);
 				if (dlg.mark != null && (idx == reflBox.getSelectedIndex()))
-					dlg.mark.setRvis(vis);
+					dlg.mark.setRefl(con);
 			}
 		}
@@ -272,14 +272,14 @@
 		constrBox.addActionListener(alConstr);
 
-		visLabel = new JLabel(Messages.getString("Visibility"), SwingConstants.CENTER);
-		visLabel.setBounds(new Rectangle(250, 80, 100, 20));
-		this.add(visLabel, null);
-		visBox = new JComboBox();
-		visBox.setBounds(new Rectangle(250, 100, 100, 20));
-		addVisItem(Messages.getString("NotSet"), Vis.UNKNOWN);
-		addVisItem(Messages.getString("Conspicuous"), Vis.CONSP);
-		addVisItem(Messages.getString("NotConspicuous"), Vis.NCONS);
-		this.add(visBox, null);
-		visBox.addActionListener(alVis);
+		conLabel = new JLabel(Messages.getString("Visibility"), SwingConstants.CENTER);
+		conLabel.setBounds(new Rectangle(250, 80, 100, 20));
+		this.add(conLabel, null);
+		conBox = new JComboBox();
+		conBox.setBounds(new Rectangle(250, 100, 100, 20));
+		addConItem(Messages.getString("NotSet"), Con.UNKNOWN);
+		addConItem(Messages.getString("Conspicuous"), Con.CONSP);
+		addConItem(Messages.getString("NotConspicuous"), Con.NCONS);
+		this.add(conBox, null);
+		conBox.addActionListener(alCon);
 
 		reflLabel = new JLabel(Messages.getString("Reflectivity"), SwingConstants.CENTER);
@@ -288,8 +288,8 @@
 		reflBox = new JComboBox();
 		reflBox.setBounds(new Rectangle(250, 140, 100, 20));
-		addRvsItem(Messages.getString("NotSet"), Vis.UNKNOWN);
-		addRvsItem(Messages.getString("Conspicuous"), Vis.CONSP);
-		addRvsItem(Messages.getString("NotConspicuous"), Vis.NCONS);
-		addRvsItem(Messages.getString("Reflector"), Vis.REFL);
+		addReflItem(Messages.getString("NotSet"), Con.UNKNOWN);
+		addReflItem(Messages.getString("Conspicuous"), Con.CONSP);
+		addReflItem(Messages.getString("NotConspicuous"), Con.NCONS);
+		addReflItem(Messages.getString("Reflector"), Con.REFL);
 		this.add(reflBox, null);
 		reflBox.addActionListener(alRefl);
@@ -318,14 +318,14 @@
 				constrBox.setSelectedIndex(item);
 		}
-		visBox.setSelectedIndex(0);
-		for (Vis vis : visibilities.keySet()) {
-			int item = visibilities.get(vis);
-			if (dlg.mark.getVis() == vis)
-				visBox.setSelectedIndex(item);
+		conBox.setSelectedIndex(0);
+		for (Con con : conspicuities.keySet()) {
+			int item = conspicuities.get(con);
+			if (dlg.mark.getCon() == con)
+				conBox.setSelectedIndex(item);
 		}
 		reflBox.setSelectedIndex(0);
-		for (Vis vis : reflectivities.keySet()) {
-			int item = reflectivities.get(vis);
-			if (dlg.mark.getRvis() == vis)
+		for (Con con : reflectivities.keySet()) {
+			int item = reflectivities.get(con);
+			if (dlg.mark.getRefl() == con)
 				reflBox.setSelectedIndex(item);
 		}
@@ -342,11 +342,11 @@
 	}
 
-	private void addVisItem(String str, Vis vis) {
-		visibilities.put(vis, visBox.getItemCount());
-		visBox.addItem(str);
-	}
-
-	private void addRvsItem(String str, Vis vis) {
-		reflectivities.put(vis, reflBox.getItemCount());
+	private void addConItem(String str, Con con) {
+		conspicuities.put(con, conBox.getItemCount());
+		conBox.addItem(str);
+	}
+
+	private void addReflItem(String str, Con con) {
+		reflectivities.put(con, reflBox.getItemCount());
 		reflBox.addItem(str);
 	}
Index: applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java
===================================================================
--- applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java	(revision 27002)
+++ applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java	(revision 27005)
@@ -55,5 +55,7 @@
 
 	public enum Obj {
-		UNKNOWN, BCNCAR, BCNISD, BCNLAT, BCNSAW, BCNSPP, BOYCAR, BOYISD, BOYLAT, BOYSAW, BOYSPP, FLTCAR, FLTISD, FLTLAT, FLTSAW, FLTSPP, LITMAJ, LITMIN, LITFLT, LITVES, LNDMRK, MORFAC, SISTAW, SISTAT
+		UNKNOWN, BCNCAR, BCNISD, BCNLAT, BCNSAW, BCNSPP, BOYCAR, BOYISD, BOYLAT, BOYSAW, BOYSPP,
+		FLTCAR, FLTISD, FLTLAT, FLTSAW, FLTSPP, LITMAJ, LITMIN, LITFLT, LITVES,
+		LNDMRK, MORFAC, SISTAW, SISTAT
 	}
 
@@ -159,5 +161,12 @@
 
 	public enum Cat {
-		NONE, LAM_PORT, LAM_STBD, LAM_PPORT, LAM_PSTBD, CAM_NORTH, CAM_EAST, CAM_SOUTH, CAM_WEST, ACH_URST, ACH_DEEP, ACH_TANK, ACH_EXPL, ACH_QUAR, ACH_SPLN, ACH_SCAN, ACH_SCMO, ACH_T24H, ACH_TLIM, SPM_UNKN, SPM_WARN, SPM_CHBF, SPM_YCHT, SPM_CABL, SPM_OFAL, SPM_ODAS, SPM_RECN, SPM_MOOR, SPM_LNBY, SPM_LDNG, SPM_NOTC, SPM_TSS, SPM_FOUL, SPM_DIVE, SPM_FRRY, SPM_ANCH, MOR_DLPN, MOR_DDPN, MOR_BLRD, MOR_WALL, MOR_POST, MOR_CHWR, MOR_BUOY, SIS_PTCL, SIS_PTED, SIS_IPT, SIS_BRTH, SIS_DOCK, SIS_LOCK, SIS_FBAR, SIS_BRDG, SIS_DRDG, SIS_TRFC, SIS_DNGR, SIS_OBST, SIS_CABL, SIS_MILY, SIS_DSTR, SIS_WTHR, SIS_STRM, SIS_ICE, SIS_TIME, SIS_TIDE, SIS_TSTM, SIS_TGAG, SIS_TSCL, SIS_DIVE, SIS_LGAG, LIT_DIRF, LIT_LEDG
+		NONE, LAM_PORT, LAM_STBD, LAM_PPORT, LAM_PSTBD, CAM_NORTH, CAM_EAST, CAM_SOUTH, CAM_WEST,
+		ACH_URST, ACH_DEEP, ACH_TANK, ACH_EXPL, ACH_QUAR, ACH_SPLN, ACH_SCAN, ACH_SCMO, ACH_T24H, ACH_TLIM,
+		SPM_UNKN, SPM_WARN, SPM_CHBF, SPM_YCHT, SPM_CABL, SPM_OFAL, SPM_ODAS, SPM_RECN, SPM_MOOR, SPM_LNBY,
+		SPM_LDNG, SPM_NOTC, SPM_TSS, SPM_FOUL, SPM_DIVE, SPM_FRRY,
+		SPM_ANCH, MOR_DLPN, MOR_DDPN, MOR_BLRD, MOR_WALL, MOR_POST, MOR_CHWR, MOR_BUOY,
+		SIS_PTCL, SIS_PTED, SIS_IPT, SIS_BRTH, SIS_DOCK, SIS_LOCK, SIS_FBAR, SIS_BRDG, SIS_DRDG, SIS_TRFC,
+		SIS_DNGR, SIS_OBST, SIS_CABL, SIS_MILY, SIS_DSTR, SIS_WTHR, SIS_STRM, SIS_ICE, SIS_TIME, SIS_TIDE,
+		SIS_TSTM, SIS_TGAG, SIS_TSCL, SIS_DIVE, SIS_LGAG, LIT_DIRF, LIT_LEDG
 	}
 
@@ -234,5 +243,6 @@
 
 	public enum Shp {
-		UNKNOWN, PILLAR, SPAR, CAN, CONE, SPHERE, BARREL, FLOAT, SUPER, BUOYANT, CAIRN, PILE, LATTICE, TOWER, STAKE, POLE, POST, PERCH, BUOY, BEACON
+		UNKNOWN, PILLAR, SPAR, CAN, CONE, SPHERE, BARREL, FLOAT, SUPER,
+		BUOYANT, CAIRN, PILE, LATTICE, TOWER, STAKE, POLE, POST, PERCH, BUOY, BEACON
 	}
 
@@ -447,5 +457,6 @@
 
 	public enum Chr {
-		UNKNOWN, FIXED, FLASH, LONGFLASH, QUICK, VERYQUICK, ULTRAQUICK, ISOPHASED, OCCULTING, MORSE, ALTERNATING, INTERRUPTEDQUICK, INTERRUPTEDVERYQUICK, INTERRUPTEDULTRAQUICK
+		UNKNOWN, FIXED, FLASH, LFLASH, QUICK, VQUICK, UQUICK, ISOPHASED, OCCULTING,
+		MORSE, ALTERNATING, IQUICK, IVQUICK, IUQUICK
 	}
 
@@ -455,11 +466,11 @@
 		ChrMAP.put(EnumSet.of(Chr.FIXED), "F");
 		ChrMAP.put(EnumSet.of(Chr.FLASH), "Fl");
-		ChrMAP.put(EnumSet.of(Chr.LONGFLASH), "LFl");
+		ChrMAP.put(EnumSet.of(Chr.LFLASH), "LFl");
 		ChrMAP.put(EnumSet.of(Chr.QUICK), "Q");
-		ChrMAP.put(EnumSet.of(Chr.VERYQUICK), "VQ");
-		ChrMAP.put(EnumSet.of(Chr.ULTRAQUICK), "UQ");
-		ChrMAP.put(EnumSet.of(Chr.INTERRUPTEDQUICK), "IQ");
-		ChrMAP.put(EnumSet.of(Chr.INTERRUPTEDVERYQUICK), "IVQ");
-		ChrMAP.put(EnumSet.of(Chr.INTERRUPTEDULTRAQUICK), "IUQ");
+		ChrMAP.put(EnumSet.of(Chr.VQUICK), "VQ");
+		ChrMAP.put(EnumSet.of(Chr.UQUICK), "UQ");
+		ChrMAP.put(EnumSet.of(Chr.IQUICK), "IQ");
+		ChrMAP.put(EnumSet.of(Chr.IVQUICK), "IVQ");
+		ChrMAP.put(EnumSet.of(Chr.IUQUICK), "IUQ");
 		ChrMAP.put(EnumSet.of(Chr.ISOPHASED), "Iso");
 		ChrMAP.put(EnumSet.of(Chr.OCCULTING), "Oc");
@@ -469,14 +480,14 @@
 		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.FLASH), "Al.Fl");
 		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.FIXED, Chr.FLASH), "F.Al.Fl");
-		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.LONGFLASH), "Al.LFl");
+		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.LFLASH), "Al.LFl");
 		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.ISOPHASED), "Al.Iso");
 		ChrMAP.put(EnumSet.of(Chr.ALTERNATING, Chr.OCCULTING), "Al.Oc");
 		ChrMAP.put(EnumSet.of(Chr.FIXED, Chr.FLASH), "FFl");
-		ChrMAP.put(EnumSet.of(Chr.FIXED, Chr.LONGFLASH), "FLFl");
+		ChrMAP.put(EnumSet.of(Chr.FIXED, Chr.LFLASH), "FLFl");
 		ChrMAP.put(EnumSet.of(Chr.OCCULTING, Chr.FLASH), "OcFl");
-		ChrMAP.put(EnumSet.of(Chr.FLASH, Chr.LONGFLASH), "FlLFl");
-		ChrMAP.put(EnumSet.of(Chr.QUICK, Chr.LONGFLASH), "Q+LFl");
-		ChrMAP.put(EnumSet.of(Chr.VERYQUICK, Chr.LONGFLASH), "VQ+LFl");
-		ChrMAP.put(EnumSet.of(Chr.ULTRAQUICK, Chr.LONGFLASH), "UQ+LFl");
+		ChrMAP.put(EnumSet.of(Chr.FLASH, Chr.LFLASH), "FlLFl");
+		ChrMAP.put(EnumSet.of(Chr.QUICK, Chr.LFLASH), "Q+LFl");
+		ChrMAP.put(EnumSet.of(Chr.VQUICK, Chr.LFLASH), "VQ+LFl");
+		ChrMAP.put(EnumSet.of(Chr.UQUICK, Chr.LFLASH), "UQ+LFl");
 	}
 
@@ -745,4 +756,40 @@
 	}
 
+	public enum Vis {
+		UNKNOWN, HIGH, LOW, FAINT, INTEN, UNINTEN, REST, OBS, PARTOBS
+	}
+
+	public static final Map<EnumSet<Vis>, String> VisMAP = new HashMap<EnumSet<Vis>, String>();
+	static {
+		VisMAP.put(EnumSet.of(Vis.UNKNOWN), "");
+		VisMAP.put(EnumSet.of(Vis.HIGH), "high");
+		VisMAP.put(EnumSet.of(Vis.LOW), "low");
+		VisMAP.put(EnumSet.of(Vis.FAINT), "faint");
+		VisMAP.put(EnumSet.of(Vis.INTEN), "intensified");
+		VisMAP.put(EnumSet.of(Vis.UNINTEN), "unintensified");
+		VisMAP.put(EnumSet.of(Vis.REST), "restricted");
+		VisMAP.put(EnumSet.of(Vis.OBS), "obscured");
+		VisMAP.put(EnumSet.of(Vis.PARTOBS), "part_obscured");
+	}
+
+	public enum Lit {
+		UNKNOWN, VERT, VERT2, VERT3, VERT4, HORIZ, HORIZ2, HORIZ3, HORIZ4, UPPER, LOWER, REAR, FRONT, AERO, AIROBS, FOGDET, FLOOD, STRIP, SUBS, SPOT, MOIRE, EMERG, BEAR
+	}
+
+	public static final Map<EnumSet<Lit>, String> LitMAP = new HashMap<EnumSet<Lit>, String>();
+	static {
+		LitMAP.put(EnumSet.of(Lit.UNKNOWN), "");
+	}
+
+	public enum Exh { UNKNOWN, H24, DAY, NIGHT, FOG }
+	public static final Map<EnumSet<Exh>, String> ExhMAP = new HashMap<EnumSet<Exh>, String>();
+	static {
+		ExhMAP.put(EnumSet.of(Exh.UNKNOWN), "");
+		ExhMAP.put(EnumSet.of(Exh.H24), "24h");
+		ExhMAP.put(EnumSet.of(Exh.DAY), "day");
+		ExhMAP.put(EnumSet.of(Exh.NIGHT), "night");
+		ExhMAP.put(EnumSet.of(Exh.FOG), "fog");
+	}
+	
 	public enum Pat {
 		NONE, HORIZ, VERT, DIAG, SQUARE, BORDER
@@ -1058,33 +1105,33 @@
 	}
 
-	public enum Vis {
+	public enum Con {
 		UNKNOWN, CONSP, NCONS, REFL
 	}
 
-	public static final EnumMap<Vis, String> VisSTR = new EnumMap<Vis, String>(Vis.class);
+	public static final EnumMap<Con, String> ConSTR = new EnumMap<Con, String>(Con.class);
 	static {
-		VisSTR.put(Vis.CONSP, "conspicuous");
-		VisSTR.put(Vis.NCONS, "not_conspicuous");
-		VisSTR.put(Vis.REFL, "reflector");
-	}
-
-	private Vis visibility = Vis.UNKNOWN;
-
-	public Vis getVis() {
-		return visibility;
-	}
-
-	public void setVis(Vis vis) {
-		visibility = vis;
-	}
-
-	private Vis reflectivity = Vis.UNKNOWN;
-
-	public Vis getRvis() {
+		ConSTR.put(Con.CONSP, "conspicuous");
+		ConSTR.put(Con.NCONS, "not_conspicuous");
+		ConSTR.put(Con.REFL, "reflector");
+	}
+
+	private Con conspicuity = Con.UNKNOWN;
+
+	public Con getCon() {
+		return conspicuity;
+	}
+
+	public void setCon(Con con) {
+		conspicuity = con;
+	}
+
+	private Con reflectivity = Con.UNKNOWN;
+
+	public Con getRefl() {
 		return reflectivity;
 	}
 
-	public void setRvis(Vis vis) {
-		reflectivity = vis;
+	public void setRefl(Con con) {
+		reflectivity = con;
 	}
 
@@ -1499,10 +1546,10 @@
 			}
 		}
-		if (keys.containsKey("seamark:visibility")) {
-			str = keys.get("seamark:visibility");
-			setVis(Vis.UNKNOWN);
-			for (Vis vis : VisSTR.keySet()) {
-				if (VisSTR.get(vis).equals(str)) {
-					setVis(vis);
+		if (keys.containsKey("seamark:conspicuity")) {
+			str = keys.get("seamark:conspicuity");
+			setCon(Con.UNKNOWN);
+			for (Con con : ConSTR.keySet()) {
+				if (ConSTR.get(con).equals(str)) {
+					setCon(con);
 				}
 			}
@@ -1510,8 +1557,8 @@
 		if (keys.containsKey("seamark:reflectivity")) {
 			str = keys.get("seamark:reflectivity");
-			setRvis(Vis.UNKNOWN);
-			for (Vis vis : VisSTR.keySet()) {
-				if (VisSTR.get(vis).equals(str)) {
-					setRvis(vis);
+			setRefl(Con.UNKNOWN);
+			for (Con con : ConSTR.keySet()) {
+				if (ConSTR.get(con).equals(str)) {
+					setRefl(con);
 				}
 			}
@@ -1917,9 +1964,9 @@
 				Main.main.undoRedo.add(new ChangePropertyCommand(node, "seamark:construction", CnsSTR.get(getConstr())));
 			}
-			if (getVis() != Vis.UNKNOWN) {
-				Main.main.undoRedo.add(new ChangePropertyCommand(node, "seamark:visibility", VisSTR.get(getVis())));
-			}
-			if (getRvis() != Vis.UNKNOWN) {
-				Main.main.undoRedo.add(new ChangePropertyCommand(node, "seamark:reflectivity", VisSTR.get(getRvis())));
+			if (getCon() != Con.UNKNOWN) {
+				Main.main.undoRedo.add(new ChangePropertyCommand(node, "seamark:conspicuity", ConSTR.get(getCon())));
+			}
+			if (getRefl() != Con.UNKNOWN) {
+				Main.main.undoRedo.add(new ChangePropertyCommand(node, "seamark:reflectivity", ConSTR.get(getRefl())));
 			}
 		}
