def decipher(self,string):
string = self.remove_punctuation(string)        <EOL>ret = ['<STR_LIT:_>']*len(string)<EOL>L,M = len(string),len(self.keyword)<EOL>ind = self.unsortind(self.keyword)<EOL>upto = <NUM_LIT:0><EOL>for i in range(len(self.keyword)):<EOL><INDENT>thiscollen = (int)(L/M)<EOL>if ind[i]< L%M: thiscollen += <NUM_LIT:1><EOL>ret[ind[i]::M] = string[upto:upto+thiscollen]<EOL>upto += thiscollen<EOL><DEDENT>return '<STR_LIT>'.join(ret)<EOL>
Decipher string using Columnar Transposition cipher according to initialised key. Punctuation and whitespace
        are removed from the input.

        Example::

            plaintext = ColTrans('GERMAN').decipher(ciphertext)     

        :param string: The string to decipher.
        :returns: The deciphered string.