'Requires:
nothing
Returns:
Nothing
Logic:
Pop the last values in the instructions list, the fields list, the
paragaph list, and the section list.
If the field is a symbol, do not write the tags <field></field>,
since this field is really just UTF-8.
If the field contains paragraph or section breaks, it is a
field-block rather than just a field.
Write the paragraph or section markers for later parsing of the
file.
If the filed list contains more strings, add the latest
(processed) string to the last string in the list. Otherwise,
write the string to the output file.'

def __end_field_func(self):

    last_bracket = self.__field_count.pop()
    instruction = self.__field_instruction.pop()
    inner_field_string = self.__field_string.pop()
    sec_in_field = self.__sec_in_field.pop()
    par_in_field = self.__par_in_field.pop()
    if self.__symbol:
        inner_field_string = ('%scb<nu<clos-brack<%s\n' % (instruction, last_bracket))
    elif (sec_in_field or par_in_field):
        inner_field_string = ('mi<mk<fldbkstart\nmi<tg<open-att__<field-block<type>%s\n%smi<mk<fldbk-end_\nmi<tg<close_____<field-block\nmi<mk<fld-bk-end\n' % (instruction, inner_field_string))
    else:
        inner_field_string = ('%smi<tg<open-att__<field<type>%s\n%smi<tg<close_____<field\n' % (self.__marker, instruction, inner_field_string))
    if sec_in_field:
        inner_field_string = (('mi<mk<sec-fd-beg\n' + inner_field_string) + 'mi<mk<sec-fd-end\n')
    if par_in_field:
        inner_field_string = ('mi<mk<par-in-fld\n' + inner_field_string)
    if (len(self.__field_string) == 0):
        self.__write_field_string(inner_field_string)
    else:
        self.__field_string[(-1)] += inner_field_string
    self.__symbol = 0
