; your code goes here
(defparameter *config* (make-hash-table))
(defmacro get-value (name)
(multiple-value-bind (v exist) (gethash name *config*)
(if exist
v
(error (format nil "no config value for ~a" name)))))
(defun set-value (name value)
(setf (gethash name *config*) value))
(set-value 'shard 5)
(format t "shard: ~a~%" (get-value shard))
(get-value shard1)
OyB5b3VyIGNvZGUgZ29lcyBoZXJlCgooZGVmcGFyYW1ldGVyICpjb25maWcqIChtYWtlLWhhc2gtdGFibGUpKQoKKGRlZm1hY3JvIGdldC12YWx1ZSAobmFtZSkKICAJKG11bHRpcGxlLXZhbHVlLWJpbmQgKHYgZXhpc3QpIChnZXRoYXNoIG5hbWUgKmNvbmZpZyopCgkJKGlmIGV4aXN0CiAgICAgICAgCXYKICAgICAgICAJKGVycm9yIChmb3JtYXQgbmlsICJubyBjb25maWcgdmFsdWUgZm9yIH5hIiBuYW1lKSkpKSkKCihkZWZ1biBzZXQtdmFsdWUgKG5hbWUgdmFsdWUpCiAgKHNldGYgKGdldGhhc2ggbmFtZSAqY29uZmlnKikgdmFsdWUpKQoKKHNldC12YWx1ZSAnc2hhcmQgNSkKCihmb3JtYXQgdCAic2hhcmQ6IH5hfiUiIChnZXQtdmFsdWUgc2hhcmQpKQooZ2V0LXZhbHVlIHNoYXJkMSk=