For the first error: you must explicitly determine atom?, because there is no built-in procedure in a simple Racket (perhaps this is in one of the training languages):
(define (atom? x)
(and (not (null? x))
(not (pair? x))))
: symbol? , , A - undefined. , ( ):
(symbol? 'A)
=>