public HgvsProtein(ChangeEffect changeEffect) {
		super(changeEffect);

		codonNum = changeEffect.getCodonNum();
		marker = changeEffect.getMarker();
		effectType = changeEffect.getEffectType();

		// No marker? Nothing to do
		if (marker != null) {
			// Codon numbering
			// HGVS: the translation initiator Methionine is numbered as +1
			aaPos = codonNum + 1;

			// Convert to 3 letter code
			// HGVS: the three-letter amino acid code is prefered (see Discussion), with "*" designating a translation
			// 		 termination codon; for clarity we this page describes changes using the three-letter amino acid
			CodonTable codonTable = marker.codonTable();

			String aaNew = changeEffect.getAaNew();
			String aaOld = changeEffect.getAaOld();

			if (aaNew == null || aaNew.isEmpty() || aaNew.equals("-")) aaNew3 = "";
			else aaNew3 = codonTable.aaThreeLetterCode(aaNew);

			if (aaOld == null || aaOld.isEmpty() || aaOld.equals("-")) aaOld3 = "";
			else aaOld3 = codonTable.aaThreeLetterCode(aaOld);
		} else {
			aaPos = -1;
			aaNew3 = aaOld3 = "";
		}
	}