24 lines
		
	
	
		
			515 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			515 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
pragma solidity >=0.4.21 <0.6.0;
 | 
						|
 | 
						|
contract Migrations {
 | 
						|
  address public owner;
 | 
						|
  uint public last_completed_migration;
 | 
						|
 | 
						|
  constructor() public {
 | 
						|
    owner = msg.sender;
 | 
						|
  }
 | 
						|
 | 
						|
  modifier restricted() {
 | 
						|
    if (msg.sender == owner) _;
 | 
						|
  }
 | 
						|
 | 
						|
  function setCompleted(uint completed) public restricted {
 | 
						|
    last_completed_migration = completed;
 | 
						|
  }
 | 
						|
 | 
						|
  function upgrade(address new_address) public restricted {
 | 
						|
    Migrations upgraded = Migrations(new_address);
 | 
						|
    upgraded.setCompleted(last_completed_migration);
 | 
						|
  }
 | 
						|
}
 |