F correct_case(string) R string.filter(s -> s.is_alpha()).map(s -> s.uppercase()).join(‘’) F permu(String alp; num) R alp[num..]‘’alp[0 .< num] F rotate_wheels(lalph, ralph, key) V newin = ralph.index(key) R (permu(lalph, newin), permu(ralph, newin)) F scramble_wheels(String =lalph, String =ralph) lalph = lalph[0]‘’lalph[2.<14]‘’lalph[1]‘’lalph[14..] ralph = ralph[1.<3]‘’ralph[4.<15]‘’ralph[3]‘’ralph[15..]‘’ralph[0] R (lalph, ralph) F do_chao(=msg, =lalpha, =ralpha, en = 1B, show = 0B) msg = correct_case(msg) V out = ‘’ I show print(‘=’ * 54) print((10 * ‘ ’)‘left:’(21 * ‘ ’)‘right: ’) print(‘=’ * 54) print(lalpha‘ ’ralpha" \n") L(l) msg I en (lalpha, ralpha) = rotate_wheels(lalpha, ralpha, l) out ‘’= lalpha[0] E (ralpha, lalpha) = rotate_wheels(ralpha, lalpha, l) out ‘’= ralpha[0] (lalpha, ralpha) = scramble_wheels(lalpha, ralpha) I show print(lalpha‘ ’ralpha) R out V lalpha = ‘HXUCZVAMDSLKPEFJRIGTWOBNYQ’ V ralpha = ‘PTLNBQDEOYSFAVZKGJRIHWXUMC’ V msg = ‘WELLDONEISBETTERTHANWELLSAID’ print(‘L: ’lalpha) print(‘R: ’ralpha) print(‘I: ’msg) V o = do_chao(msg, lalpha, ralpha, 1B, 0B) print(‘O: ’o) print(‘D: ’do_chao(o, lalpha, ralpha, 0B, 0B)) print() do_chao(msg, lalpha, ralpha, 1B, 1B)