@Override
	public DataType toDataType() throws DuplicateNameException {
		StructureDataType struct = (StructureDataType)super.toDataType();
		
		struct.add(new ArrayDataType(WORD,4,2));
		struct.add(WORD);
		struct.add(WORD);
		struct.add(new ArrayDataType(WORD,10,2));
		struct.add(DWORD);
		if (getProgramLen() > 0) {
			struct.add(new ArrayDataType(BYTE, getProgramLen(), 1));
		}

        struct.getComponent(14).setFieldName("e_res[4]");
        struct.getComponent(15).setFieldName("e_oemid");
        struct.getComponent(16).setFieldName("e_oeminfo");
        struct.getComponent(17).setFieldName("e_res2[10]");
        struct.getComponent(18).setFieldName("e_lfanew");
		if (getProgramLen() > 0) {
        	struct.getComponent(19).setFieldName("e_program");
		}

        struct.getComponent(14).setComment("Reserved words");
        struct.getComponent(15).setComment("OEM identifier (for e_oeminfo)");
        struct.getComponent(16).setComment("OEM information; e_oemid specific");
        struct.getComponent(17).setComment("Reserved words");
        struct.getComponent(18).setComment("File address of new exe header");
		if (getProgramLen() > 0) {
        	struct.getComponent(19).setComment("Actual DOS program");
		}

        return struct;
    }
@see ghidra.app.util.bin.StructConverter#toDataType()
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/mz/DOSHeader.java