| Return Value | {:sequence 0,:key nil,:balance 3,:allowance 0,:holdings nil,:controller nil,:environment {add-amount (fn [artifact amount] (let [tips (call* #154/state 0 deref) sender (:sender (get %2 %0)) ] (cond (not (= *caller* %3)) (fail :TRUST (str *caller* " not authorised to add amount on behalf of " %3)) (not (> %1 0)) (fail :FUNDS "No tip offered!") :else (do (accept %1) (call* #154/state 0 swap! assoc-in (vector %0 :amount) %1) (return "Thanks for the tip!"))))),disabled? false,actor-name "tipper3",add-artifact (fn [artifact] (cond (not %0) (fail :ARGUMENT "Arguments require an artifact") (call* #154/state 0 swap! #8/update %0 merge (hash-map :sender *caller*)))),tip! (fn [tip-map] (let [tips (call* #154/state 0 deref) artifact (:artifact %0) amount (get-in %1 (vector %2 :amount) *offer*) recipient (get-in %1 (vector %2 :recipient) (:recipient %0)) ] (#154/add-artifact %2) (#154/add-recipient %2 %4) (#154/add-amount %2 %3))),state #152,add-recipient (fn [artifact recipient] (cond %1 (let [tips (call* #154/state 0 deref) sender (:sender (get %2 %0)) ] (cond (not (= *caller* %3)) (fail :TRUST (str *caller* " not authorised to add recipient on behalf of " %3)) (not %1) (fail :ARGUMENT "recipient field is nil") :else (call* #154/state 0 swap! assoc-in (vector %0 :recipient) %1))) nil)),tip-state #153,upgrade (fn [code] (cond #154/disabled? (fail :STATE "Administrative access is permenantly disabled.") (cond (not (= *caller* #154/admin)) (fail :TRUST (str *caller* " is not authorised to administrate on behalf of admin " #154/admin)) (eval %0)))),admin #135},:metadata {add-amount {:callable true},add-artifact {:callable true},tip! {:callable true},add-recipient {:callable true},upgrade {:callable true}},:parent nil} | Value returned by transaction |