def parse_word(sentence, word):
    """
    Add all parts of word to sentence (include punctuation marks as well for example)
    :param sentence: sentence of words being built as we proceed
    :param word: the word we are handling now
    :return: the sentence we build with one more word with all of its parts
    """
    if word.text:
        sentence += word.text

    if len(word) >= 1:
        inner_sentence = ""
        for inner_word in word:
            inner_sentence = parse_word(inner_sentence, inner_word)

        sentence += inner_sentence

    if word.tail:
        sentence += word.tail

    return sentence