http://nathansuniversity.com/scheem2.html define and set!