finalized viginere