#lang racket (define (read-flag) (let ((args (current-command-line-arguments))) (cond ((= (vector-length args) 0) (displayln "No flag given") (exit)) (else (fun (vector-ref args 0)))))) (define fun (((((((((((((λ (a) (λ (b) (λ (c) (λ (d) (λ (i) (λ (j) (λ (e) (λ (g) (λ (p) (λ (q) (λ (r) (λ (s) (λ (f) (((((a (c q (c (i e s) (c (i q s) (c (i p r) (c (i e j) (c d (b f)))))))) g) (λ (g) (displayln "Thats the flag!"))) (λ (h) (displayln "Not the flag :("))) f)))))))))))))) ((λ (f) (λ (a) (λ (b) (if (f a b) (λ (x) (λ (y) x)) (λ (x) (λ (y) y)))))) equal?)) string->list) map) char->integer) curry) 42) bitwise-xor) '(166 210 154 166 110 214 100 100 162 190 180 162 152 204 150 144 158 104 180 124 158 138 102 138 168 98 178 32 -4 142)) *) -) 2) 20)) (read-flag)