code: def reduce_tashkeel(text):
      """Reduce the Tashkeel, by deleting evident cases.
  
      @param text: the input text fully vocalized.
      @type text: unicode.
      @return : partially vocalized text.
      @rtype: unicode.
  
      """
      patterns = [
          # delete all fathat,  except on waw and yeh
          "(?<!(%s|%s))(%s|%s)" % (WAW, YEH, SUKUN, FATHA),
          # delete damma if followed by waw.
          "%s(?=%s)" % (DAMMA, WAW),
          # delete kasra if followed by yeh.
          "%s(?=%s)" % (KASRA, YEH),
          # delete fatha if followed by alef to reduce yeh maftouha
          #  and waw maftouha before alef.
          "%s(?=%s)" % (FATHA, ALEF),
          # delete fatha from yeh and waw if they are in the word begining.
          "(?<=\s(%s|%s))%s" % (WAW, YEH, FATHA),
          # delete kasra if preceded by Hamza below alef.
          "(?<=%s)%s" % (ALEF_HAMZA_BELOW, KASRA),
      ]
      reduced = text
      for pat in patterns:
          reduced = re.sub(pat, "", reduced)
      return reduced
  
imports: import re
  from cltk.phonology.arb.utils.pyarabic import stack
label_desc: Use image node_id 43 for calling a global function with example usage: reduce_tashkeel(text) and returns: reduced