Problem 3.  

Suppose we are writing software for the embedded processors that control the turnstiles on the T (the Boston subway, that is). During the switchover from tokens to the new ``Charlie'' stored-value mag-stripe cards, the turnstiles should handle both tokens and Charlie cards. So we use the following data definition to represent payments in either form:

(define-struct magstripe-card (value))

;;; A Payment is one of
;;; - 'token
;;; - (make-magstripe-card Number)

Develop the template for a function that takes a Payment as its argument.

;;; Grader: Ryan

(define (payment-template pmnt)
  ;; A COND with 2 arms -- [2pts]
  (cond [(symbol? pmnt) ... pmnt ...]                   ; SYMBOL? [1pt]
        [else ... (magstripe-card-value pmnt) ...]))    ; accessor [1pt]