I have a simple function that adds numbers together and multiplies them.

```
(defn add-and-multiply [x y z]
  (let [add (+ x y z) 
        mult (* x y z)] 
    (println "Add: " add) 
    (println "Mult: " mult)))

(add-and-multiply 1 1 2)
Add:  4
Mult:  2
nil

```

How would I call `add-and-multiply` again with the `x` argument now being the result of `add` (4), the `y` argument being the result of `mult` (2) and the `z` argument being the same (2).

How could I then repeat this process 100 times and then print the final values of add and mult?

Any help would be much appreciated. Thanks