// return value send contract KingOfTheEtherThrone{ struct Monarch { // identity of the king . identity ethAddr ; string name ; // how much he pays to previous king uint claimPrice ; uint coronationTimestamp; } Monarch public currentMonarch ; function claimThrone ( string name ) { identity wizardidentity; uint compensation = 100; uint valuePaid = 10; if ( currentMonarch.ethAddr != wizardidentity ) if (currentMonarch.ethAddr.send( compensation )) throw; currentMonarch = Monarch(msg.sender,name,valuePaid,block.timestamp); } }