Contract 0x8e93e70d8ac18dbaa38dd557acd4901f843e04e3

Balance:0 ETH
Name:StromkontoProxy

Recent Activity

HashBlockTypeFromToAmount
0x1a23fda2...874660 call0xc927dc6443d7797b1fa2f41277d42dc07399886d SC Stromkonto0 ETH
0xb512e123...874659 call0xa66c85120fba7fed6929a425d2b24df74b23fd0c SC Stromkonto0 ETH
0x5fa3a0d3...874655 call0x9f0afe10df827d2ffdca1130fc440ab951eb0d29 SC Stromkonto0 ETH
0xc67c8112...874622 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0x95461229...874621 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0x3bd65827...874609 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0x7aa1ee4f...874608 call0xe21f55974c73ea37ee4b1ba24883c16ab034fde5 SC Stromkonto0 ETH
0x6b6c4392...874603 call0x2cc8ae731a73726154a78ca846f931b4c4cc3eff SC Stromkonto0 ETH
0xfa2824ec...874601 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0xe2ad5a58...874580 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0x9f47e88e...874576 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0xe3bc3a6f...874572 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0x8ce26860...874563 call0xaa44ad5b45405581d2674b0f90efd839ce0d9af2 SC Stromkonto0 ETH
0x3b5d6a04...874562 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0x3bb48f93...874551 call0x9f68567ff6ed900b0118151ee171489cd2ad5c91 SC Stromkonto0 ETH
0x9c55e9b2...874548 call0x54751a32fe61f5e0275317e7ae72fd138789b6c0 SC Stromkonto0 ETH
0x0acea10c...874547 call0xc927dc6443d7797b1fa2f41277d42dc07399886d SC Stromkonto0 ETH
0x4bd0be42...874546 call0xa66c85120fba7fed6929a425d2b24df74b23fd0c SC Stromkonto0 ETH
0x1be4d7dc...874521 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0x9932154a...874514 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0x06b1f33d...874513 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0x3c33bc4f...874500 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0x09d6dc99...874497 call0x3a07e2548489d7bb476589abe9e9a2e6fee6f749 SC Stromkonto0 ETH
0x2af303ff...874494 call0x2cc8ae731a73726154a78ca846f931b4c4cc3eff SC Stromkonto0 ETH
0xa6304275...874491 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0xebd49580...874488 call0xba7d266719d2ddcb75a56937c3a79199bb839c9c SC Stromkonto0 ETH
0x58e89bb4...874486 callRegistered Customer - x1T SC Stromkonto0 ETH
0xc5d8383c...874471 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0xcad1e0fd...874468 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0xaff403f2...874464 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0x68032b9e...874450 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0x22185cff...874445 call0x8f46d9a2cc9a7d447c35b18b9df969bc3a0a1e1b SC Stromkonto0 ETH
0xd8784747...874437 call0x9f0afe10df827d2ffdca1130fc440ab951eb0d29 SC Stromkonto0 ETH
0x1d5212bd...874412 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0x10ab33a3...874405 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0xf3d36c48...874404 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0x86260210...874402 call0xada5fdd92f96032a92bdb0d71ec62353b40483bd SC Stromkonto0 ETH
0x45f78615...874391 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0x34f92ecc...874385 call0x7bd7019533ece5e5a4ead5959dfb4136d86cf7d9 SC Stromkonto0 ETH
0xf249d535...874384 call0x4f59802284e024ba6bf6c148bd44c51cc3b55ad5 SC Stromkonto0 ETH
0x5febfcee...874384 call0xf2c4698dc64b2bd41206eead256400780ed46aa6 SC Stromkonto0 ETH
0x5623c670...874383 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0xc5b1f6ba...874382 call0xfbbb2da4e8f12c2d15c919c1f713ce91701e373a SC Stromkonto0 ETH
0xf90f06b2...874381 call0xb66efb86c9dba31091b7039a05809205cb4ee8ec SC Stromkonto0 ETH
0x75283884...874379 call0xde2aca30e821cae1c3dba4cd5e704611550b1ebf SC Stromkonto0 ETH
0xaf61ae47...874378 call0xd5f4bd0c3f49def3570be208890590c74f07aa4d SC Stromkonto0 ETH
0x370e705d...874377 call0x2033db24e866df5b7c977f87a537ceef88a2e593 SC Stromkonto0 ETH
0xa244ad09...874376 callRegistered Customer - x1T SC Stromkonto0 ETH
0x313ce052...874376 call0x3853dd03b570298dd0ab398cf37ff7f7992b87a9 SC Stromkonto0 ETH
0x12740f06...874375 call0xb39085e02eb777da7a55e3baa1c26a65c7cc00f8 SC Stromkonto0 ETH
0xef3dad67...874374 call0xb2235ec093d185860ce89209ebe2c58ef505e22d SC Stromkonto0 ETH
0x05dce399...874367 call0xc32f84a2b62cf2932827096a34df675498ecd351 SC Stromkonto0 ETH
0x387922f6...874361 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0x6d7116dd...874358 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0xb4a988b0...874357 call0xd76099ed3f646ecdc5f4bbbe3749a1c2ef6b46cb SC Stromkonto0 ETH
0xb184d9f6...874354 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0xf9bbed7d...874341 call0x2cc8ae731a73726154a78ca846f931b4c4cc3eff SC Stromkonto0 ETH
0x32717485...874330 call0xc32f84a2b62cf2932827096a34df675498ecd351 SC Stromkonto0 ETH
0x98089cf5...874328 call0xc32f84a2b62cf2932827096a34df675498ecd351 SC Stromkonto0 ETH
0xf1689c34...874307 call0x9f0afe10df827d2ffdca1130fc440ab951eb0d29 SC Stromkonto0 ETH
0x5ecb68ff...874302 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0xcea30a60...874292 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0x09926400...874291 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0xec4d6024...874289 call0xada5fdd92f96032a92bdb0d71ec62353b40483bd SC Stromkonto0 ETH
0xe3eea3ca...874276 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0x39c626d5...874271 call0x2cc8ae731a73726154a78ca846f931b4c4cc3eff SC Stromkonto0 ETH
0x7ea1fbe9...874268 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0x7f1f89ad...874248 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0x7aebcd7b...874245 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0x092ea4f9...874243 call0xd76099ed3f646ecdc5f4bbbe3749a1c2ef6b46cb SC Stromkonto0 ETH
0x8008e578...874240 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0x621f136f...874223 call0xd76099ed3f646ecdc5f4bbbe3749a1c2ef6b46cb SC Stromkonto0 ETH
0xa81d4914...874219 call0x8f46d9a2cc9a7d447c35b18b9df969bc3a0a1e1b SC Stromkonto0 ETH
0x2720c445...874218 call0x9f68567ff6ed900b0118151ee171489cd2ad5c91 SC Stromkonto0 ETH
0xfd358bb9...874212 call0xa66c85120fba7fed6929a425d2b24df74b23fd0c SC Stromkonto0 ETH
0xaa4c039d...874192 call0x9f0afe10df827d2ffdca1130fc440ab951eb0d29 SC Stromkonto0 ETH
0x25584059...874187 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0xbd18b33a...874179 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0x04cf852b...874178 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0x6cf5428a...874176 call0xada5fdd92f96032a92bdb0d71ec62353b40483bd SC Stromkonto0 ETH
0x1734c866...874164 call0x48be6b355629316a491e2ad5c04338b63015837d SC Stromkonto0 ETH
0x4dda49a7...874163 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0xed49382a...874155 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0x42fdb734...874135 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0x8d7676b3...874132 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0x08d14a99...874128 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0xebeb5c95...874110 call0xd76099ed3f646ecdc5f4bbbe3749a1c2ef6b46cb SC Stromkonto0 ETH
0x9cb23343...874107 call0x9f68567ff6ed900b0118151ee171489cd2ad5c91 SC Stromkonto0 ETH
0xe2428d7c...874105 call0x54751a32fe61f5e0275317e7ae72fd138789b6c0 SC Stromkonto0 ETH
0x908cf0bd...874103 call0xa66c85120fba7fed6929a425d2b24df74b23fd0c SC Stromkonto0 ETH
0xe8bae1d6...874097 call0x9f68567ff6ed900b0118151ee171489cd2ad5c91 SC Stromkonto0 ETH
0x58881c17...874075 call0x8fe78b5e804f8968116dd2891cadceb43fef5843 SC Stromkonto0 ETH
0x84934ecb...874067 call0x2a410175bdece9b30550430ee1bc826310727de6 SC Stromkonto0 ETH
0x2d1679b7...874065 call0x277a3b5f769740cbd7584978456d82e70e194b0b SC Stromkonto0 ETH
0x9956faf2...874064 call0xada5fdd92f96032a92bdb0d71ec62353b40483bd SC Stromkonto0 ETH
0x27e50031...874051 call0x90196dbffb3aa233849f9fc76911ced3ef3c452c SC Stromkonto0 ETH
0xe5c753a2...874043 call0xec03650f752faedaf2766583891eea949a2f997b SC Stromkonto0 ETH
0xc972ab3f...874024 call0xc207b38b2699d0b873dce0fb646d9aaab314d2a1 SC Stromkonto0 ETH
0x86be74a5...874021 call0xe32f3ed4bb38a5d65ee26c520e04ebb1f1650ed5 SC Stromkonto0 ETH
0x4f0b75af...874017 call0x868e438ddab8b69a01ed17f1d3a17a179b4e8b6b SC Stromkonto0 ETH
0x043eb776...873997 call0x2cc8ae731a73726154a78ca846f931b4c4cc3eff SC Stromkonto0 ETH
0xa6be3d83...873996 call0x8f46d9a2cc9a7d447c35b18b9df969bc3a0a1e1b SC Stromkonto0 ETH

Code

0x6080604052600436106100f5577c01000000000000000000000000000000000000000000000000000000006000350463184f609381146100fa5780631c2ad7061461013f578063546e428c14610172578063700f55b2146101af57806381ae00a0146101f85780638da5cb5b1461022b578063a2c70c0f1461025c578063a9059cbb14610271578063afd25e7b146102be578063beb2b55d146102f1578063c70515ff14610324578063cc7fc81014610339578063ceae34241461036c578063d7871faa1461039f578063dc43e6f1146103d2578063f2fde38b146103e7578063f4e952791461041a578063fadbcf481461042f575b600080fd5b34801561010657600080fd5b5061012d6004803603602081101561011d57600080fd5b5035600160a060020a0316610462565b60408051918252519081900360200190f35b34801561014b57600080fd5b5061012d6004803603602081101561016257600080fd5b5035600160a060020a0316610474565b34801561017e57600080fd5b506101ad6004803603604081101561019557600080fd5b50600160a060020a0381351690602001351515610486565b005b3480156101bb57600080fd5b506101ad600480360360808110156101d257600080fd5b50600160a060020a038135811691602081013590911690604081013590606001356104c8565b34801561020457600080fd5b506101ad6004803603602081101561021b57600080fd5b5035600160a060020a03166105b6565b34801561023757600080fd5b50610240610603565b60408051600160a060020a039092168252519081900360200190f35b34801561026857600080fd5b50610240610612565b34801561027d57600080fd5b506102aa6004803603604081101561029457600080fd5b50600160a060020a038135169060200135610621565b604080519115158252519081900360200190f35b3480156102ca57600080fd5b5061012d600480360360208110156102e157600080fd5b5035600160a060020a0316610629565b3480156102fd57600080fd5b5061012d6004803603602081101561031457600080fd5b5035600160a060020a031661063b565b34801561033057600080fd5b50610240610656565b34801561034557600080fd5b506101ad6004803603602081101561035c57600080fd5b5035600160a060020a0316610665565b34801561037857600080fd5b5061012d6004803603602081101561038f57600080fd5b5035600160a060020a03166106b3565b3480156103ab57600080fd5b5061012d600480360360208110156103c257600080fd5b5035600160a060020a03166106ce565b3480156103de57600080fd5b5061012d6106e0565b3480156103f357600080fd5b506101ad6004803603602081101561040a57600080fd5b5035600160a060020a03166106e6565b34801561042657600080fd5b5061012d610774565b34801561043b57600080fd5b506102aa6004803603602081101561045257600080fd5b5035600160a060020a031661077a565b60046020526000908152604090205481565b60016020526000908152604090205481565b600054600160a060020a0316331461049d57600080fd5b600160a060020a03919091166000908152600760205260409020805460ff1916911515919091179055565b3360009081526007602052604090205460ff16156105b057600160a060020a03808516600081815260026020818152604080842080548901815560048352818520805489019055958916808552600180845282862080548b0181556003855283872080548b0190558787529754818552838720548388529585529583902054908452965482519687529286015284810188905260608501879052608085019390935260a084019190915260c083019390935260e082019290925290517f1a71774309711c9c0f58692353c6a0789dbdc71f63e2e42a190ab9bc03f79250918190036101000190a15b50505050565b3360009081526007602052604090205460ff1615156001146105d757610600565b6009805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600054600160a060020a031681565b600954600160a060020a031681565b600092915050565b60036020526000908152604090205481565b600160a060020a031660009081526001602052604090205490565b600854600160a060020a031681565b3360009081526007602052604090205460ff16151560011461068657610600565b60088054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b600160a060020a031660009081526002602052604090205490565b60026020526000908152604090205481565b60065481565b600054600160a060020a031633146106fd57600080fd5b60005460408051600160a060020a039283168152918316602083015280517ffde8e7d7be5607c2e5922b2a6fdb6106620225daaea86b34e0335c1b673467cc9281900390910190a16000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60055481565b60076020526000908152604090205460ff168156fea165627a7a72305820aadd9c56c9b381d7f5e6e17af052a46e0dc22d1f63c0bd0d36f9aedea1d091fc0029

Source

pragma solidity ^0.5.0;
/**
 * StromDAO Business Objects
 * ====================================================================
 * Upper level business objects required for power delivery on a public
 * energy distribution system. Defines PowerDelivery as digital asset
 * used for transaction data and entities (roles) for master data.
 * 
 * @author Thorsten Zoerner <thorsten.zoerner(at)stromdao.de)
 **/


contract owned {
	address public owner;
	event Transfered(address old_owner,address new_owner);
	constructor() public {
		owner = msg.sender;
	}

	modifier onlyOwner {
		if (msg.sender != owner) revert();
		_;
	}
	
	modifier onlyOwnerAsOriginator {
		if (tx.origin != owner) revert();
		_;
	}
	
	function transferOwnership(address newOwner) public onlyOwner {
		emit Transfered(owner,newOwner);
		owner = newOwner;
	}
}

contract StringStorage {
	string public str;
	
	constructor(string memory _str) public {
		str=_str;
	}
}

contract StringStorageBuilder {
	event Built(address _stringStorage);
	
	function build(string memory _str) public returns(address) {
			StringStorage ss = new StringStorage(_str);
			emit Built(address(ss));
			return address(ss);
	}
}


contract DeliveryReceiver is owned {
	RoleLookup public roles;
	DeliveryReceiver public nextReceiver;
	mapping(address=>bool) public monitored;
	
	event Process(address sender,address account,uint256 startTime,uint256 endTime,uint256 power);
	
	constructor(RoleLookup _roles) public {
		roles=_roles;
	}
	

	
	function  monitor(address _account,bool _monitor) internal {
		monitored[_account]=_monitor;    
	}
	function setNextReceiver(DeliveryReceiver _next) onlyOwner public {
		nextReceiver=_next;
	}
}

/**
 * RoleLookup
 * 
 * ====================================================================
 * Provides entity relation model (yellowpages, who-implements-what)
 * to StromDAO Business Objects. A single consensframe must always share
 * a single RoleLookup deployment.
 */
contract RoleLookup {
	mapping(uint256 => uint8) public roles;
	mapping(address=>mapping(uint8=>address)) public relations;
	 mapping(address=>mapping(address=>uint8)) public relationsFrom;
	mapping(uint8=>address) public defaults;
	event Relation(address _from,uint8 _for, address _to);
	
	constructor() public {
		roles[0]= 0;
		roles[1]= 1;
		roles[2]= 2;
		roles[3]= 3;
		roles[4]= 4;
		roles[5]= 5;
	}
	function setDefault(uint8 _role,address _from) public {
		if(msg.sender!=address(0xD87064f2CA9bb2eC333D4A0B02011Afdf39C4fB0)) revert();
		defaults[_role]=_from;
	}
	function setRelation(uint8 _for,address _from) public {
		relations[msg.sender][_for]=_from;
		emit Relation(_from,_for,msg.sender);
	}
	function setRelationFrom(uint8 _for,address _from)  public {
		relationsFrom[msg.sender][_from]=_for;
		emit Relation(_from,_for,msg.sender);
	}
}


contract TxHandler is owned  {
	
	  function addTx(address _from,address _to, uint256 _value,uint256 _base) public onlyOwner {
	  }
	
}

contract Stromkonto is TxHandler {
 
	event Transfer(address indexed _from, address indexed _to, uint256 _value);
	event Tx(address _from,address _to, uint256 _value,uint256 _base,uint256 _from_soll,uint256 _from_haben,uint256 _to_soll,uint256 _to_haben);
	
	mapping (address => uint256) public balancesHaben;
	mapping (address => uint256) public balancesSoll;
	
	mapping (address => uint256) public baseHaben;
	mapping (address => uint256) public baseSoll;
	uint256 public sumTx;
	uint256 public sumBase;
	
	function transfer(address _to, uint256 _value) public returns (bool success) { return false; revert();}
	

	function balanceHaben(address _owner) public returns (uint256 balance) {
		return balancesHaben[_owner];
	}
	
	function balanceSoll(address _owner) public returns (uint256 balance) {
		return balancesSoll[_owner];
	}

	
	function addTx(address _from,address _to, uint256 _value,uint256 _base) public  onlyOwner {
		balancesSoll[_from]+=_value;
		baseSoll[_from]+=_base;
		balancesHaben[_to]+=_value;
		baseHaben[_to]+=_base;
		sumTx+=_value;
		sumBase+=_base;
		emit Tx(_from,_to,_value,_base,balancesSoll[_from],balancesHaben[_from],balancesSoll[_to],balancesHaben[_to]);
	}
	
}

contract Transferable is Stromkonto {
	event Tx(address _from,address _to, uint256 _value,uint256 _base,uint256 _from_soll,uint256 _from_haben,uint256 _to_soll,uint256 _to_haben);
	event Receipt(address _from,address _to,address _msg, uint256 _value,uint256 _base,bool _is_liability);
	
	function addRx(address _to,address _msg, uint256 _value,uint256 _base,bool _is_liability) public   {
		if(_is_liability) {
			balancesSoll[_to]+=_value;
			baseSoll[_to]+=_base;
			balancesHaben[msg.sender]+=_value;
			baseHaben[msg.sender]+=_base;
			emit Tx(_to,msg.sender,_value,_base,balancesSoll[_to],balancesHaben[_to],balancesSoll[msg.sender],balancesHaben[msg.sender]);
		} else {
			balancesSoll[msg.sender]+=_value;
			baseSoll[msg.sender]+=_base;
			balancesHaben[_to]+=_value;
			baseHaben[_to]+=_base;
			emit Tx(msg.sender,_to,_value,_base,balancesSoll[msg.sender],balancesHaben[msg.sender],balancesSoll[_to],balancesHaben[_to]);
		}
		
		sumTx+=_value;
		sumBase+=_base;
		emit Receipt(msg.sender,_to,_msg,_value,_base,_is_liability);
	}
	
}


contract StromkontoProxy is Stromkonto {
		
		mapping(address=>bool) public allowedSenders;
		
		address public receipt_asset;
		address public receipt_liability;
		
		
		constructor() public {
				allowedSenders[msg.sender]=true;
		}
		function modifySender(address _who,bool _allow) public onlyOwner {
				//if(msg.sender!=address(0xD87064f2CA9bb2eC333D4A0B02011Afdf39C4fB0)) throw;
				allowedSenders[_who]=_allow;
		}
		
		function addTx(address _from,address _to, uint256 _value,uint256 _base) public  {
			if(allowedSenders[msg.sender]) {
				balancesSoll[_from]+=_value;
				baseSoll[_from]+=_base;
				balancesHaben[_to]+=_value;
				baseHaben[_to]+=_base;
				emit Tx(_from,_to,_value,_base,balancesSoll[_from],balancesHaben[_from],balancesSoll[_to],balancesHaben[_to]);
			}
		}
		
		function setReceiptAsset(address _address) public {
			if(allowedSenders[msg.sender]!=true) return; 
			receipt_asset=_address;
		}
		
		function setReceiptLiablity(address _address) public {
			if(allowedSenders[msg.sender]!=true) return; 
			receipt_liability=_address;
		}		
}
contract Billing {
	
	event Calculated(address from,address to,uint256 cost);
	address public from;
	address public to;
	uint256 public cost_per_day;
	uint256 public cost_per_energy;
	
	constructor(uint256 _cost_per_day,uint256 _cost_per_energy) public {
		cost_per_day=_cost_per_day;
		cost_per_energy=_cost_per_energy;
	}
	
	function becomeFrom() public {
		if(address(0)!=from) revert();
		from=msg.sender;
	}
	
	function becomeTo() public {
		if(address(0)!=to) revert();
		to=msg.sender;
	}
	

}

contract Connection {
	address public from;
	address public to;
	
	constructor(address _from,address _to) public {
			from=_from;
			to=_to;
	}	
}

contract PricingEnergy {
	uint256 public cost_per_energy;
	
	constructor(uint256 _cost_per_energy) public {			
			cost_per_energy=_cost_per_energy;
	}	
}

contract PricingDay {
	uint256 public cost_per_day;
	
	constructor(uint256 _cost_per_day) public {			
			cost_per_day=_cost_per_day;
	}	
}


contract TXCache is owned {
	
	struct TX {
			address from;
			address to;
			uint256 base;
			uint256 value;
	}
	
	event addedTx(address _from,address _to,uint256 _base,uint256 _value);
	
	TX[] public txs;
	
	function addTx(address _from,address _to,uint256 _base,uint256 _value) public onlyOwner {
			txs.push(TX(_from,_to,_base,_value));
			emit addedTx(_from,_to,_base,_value);
	}
	function length() public returns(uint256)  {
			return txs.length;
	}
	
	function from(uint i) public returns(address) {
			return txs[i].from;
	}
	function to(uint i) public returns(address) {
			return txs[i].to;
	}
	function base(uint i) public returns(uint256) {
			return txs[i].base;
	}
	function value(uint i) public returns(uint256) {
			return txs[i].value;
	}
}


ABI

Constructor

0x608060405234801561001057600080fd5b5060008054600160a060020a0319163390811782558152600760205260409020805460ff191660011790556107bb8061004a6000396000f3fe6080604052600436106100f5577c01000000000000000000000000000000000000000000000000000000006000350463184f609381146100fa5780631c2ad7061461013f578063546e428c14610172578063700f55b2146101af57806381ae00a0146101f85780638da5cb5b1461022b578063a2c70c0f1461025c578063a9059cbb14610271578063afd25e7b146102be578063beb2b55d146102f1578063c70515ff14610324578063cc7fc81014610339578063ceae34241461036c578063d7871faa1461039f578063dc43e6f1146103d2578063f2fde38b146103e7578063f4e952791461041a578063fadbcf481461042f575b600080fd5b34801561010657600080fd5b5061012d6004803603602081101561011d57600080fd5b5035600160a060020a0316610462565b60408051918252519081900360200190f35b34801561014b57600080fd5b5061012d6004803603602081101561016257600080fd5b5035600160a060020a0316610474565b34801561017e57600080fd5b506101ad6004803603604081101561019557600080fd5b50600160a060020a0381351690602001351515610486565b005b3480156101bb57600080fd5b506101ad600480360360808110156101d257600080fd5b50600160a060020a038135811691602081013590911690604081013590606001356104c8565b34801561020457600080fd5b506101ad6004803603602081101561021b57600080fd5b5035600160a060020a03166105b6565b34801561023757600080fd5b50610240610603565b60408051600160a060020a039092168252519081900360200190f35b34801561026857600080fd5b50610240610612565b34801561027d57600080fd5b506102aa6004803603604081101561029457600080fd5b50600160a060020a038135169060200135610621565b604080519115158252519081900360200190f35b3480156102ca57600080fd5b5061012d600480360360208110156102e157600080fd5b5035600160a060020a0316610629565b3480156102fd57600080fd5b5061012d6004803603602081101561031457600080fd5b5035600160a060020a031661063b565b34801561033057600080fd5b50610240610656565b34801561034557600080fd5b506101ad6004803603602081101561035c57600080fd5b5035600160a060020a0316610665565b34801561037857600080fd5b5061012d6004803603602081101561038f57600080fd5b5035600160a060020a03166106b3565b3480156103ab57600080fd5b5061012d600480360360208110156103c257600080fd5b5035600160a060020a03166106ce565b3480156103de57600080fd5b5061012d6106e0565b3480156103f357600080fd5b506101ad6004803603602081101561040a57600080fd5b5035600160a060020a03166106e6565b34801561042657600080fd5b5061012d610774565b34801561043b57600080fd5b506102aa6004803603602081101561045257600080fd5b5035600160a060020a031661077a565b60046020526000908152604090205481565b60016020526000908152604090205481565b600054600160a060020a0316331461049d57600080fd5b600160a060020a03919091166000908152600760205260409020805460ff1916911515919091179055565b3360009081526007602052604090205460ff16156105b057600160a060020a03808516600081815260026020818152604080842080548901815560048352818520805489019055958916808552600180845282862080548b0181556003855283872080548b0190558787529754818552838720548388529585529583902054908452965482519687529286015284810188905260608501879052608085019390935260a084019190915260c083019390935260e082019290925290517f1a71774309711c9c0f58692353c6a0789dbdc71f63e2e42a190ab9bc03f79250918190036101000190a15b50505050565b3360009081526007602052604090205460ff1615156001146105d757610600565b6009805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600054600160a060020a031681565b600954600160a060020a031681565b600092915050565b60036020526000908152604090205481565b600160a060020a031660009081526001602052604090205490565b600854600160a060020a031681565b3360009081526007602052604090205460ff16151560011461068657610600565b60088054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b600160a060020a031660009081526002602052604090205490565b60026020526000908152604090205481565b60065481565b600054600160a060020a031633146106fd57600080fd5b60005460408051600160a060020a039283168152918316602083015280517ffde8e7d7be5607c2e5922b2a6fdb6106620225daaea86b34e0335c1b673467cc9281900390910190a16000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60055481565b60076020526000908152604090205460ff168156fe

Current contract state

FunctionResult