ct Christoph Thomas Düren CT-sOFT
siehe: Thomelsheim - CT-sOFT
ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct ct