def decipher(self,string):
        '''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.
        '''           
        string = self.remove_punctuation(string)        
        ret = ['_']*len(string)
        L,M = len(string),len(self.keyword)
        ind = self.unsortind(self.keyword)
        upto = 0
        for i in range(len(self.keyword)):
            thiscollen = (int)(L/M)
            if ind[i]< L%M: thiscollen += 1
            ret[ind[i]::M] = string[upto:upto+thiscollen]
            upto += thiscollen
        return ''.join(ret)
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.