function DAOPlayMarketTokenCrowdsale(address _token, address _multisigWallet, uint _start, uint _cap, uint[20] _price, uint _periodStage, uint _capPeriod) public {
  
    require(_multisigWallet != 0x0);
    require(_start >= block.timestamp);
    require(_cap > 0);
    require(_periodStage > 0);
    require(_capPeriod > 0);
	
    token = DAOPlayMarketToken(_token);
    multisigWallet = _multisigWallet;
    startsAt = _start;
    CAP = _cap*10**token.decimals();
	
    periodStage = _periodStage*1 days;
    uint capPeriod = _capPeriod*10**token.decimals();
    uint j = 0;
    for(uint i=0; i<_price.length; i=i+4) {
      stages.push(Stage(startsAt+j*periodStage, startsAt+(j+1)*periodStage, j, _price[i], _price[i+1], _price[i+2], _price[i+3], capPeriod, 0));
      j++;
    }
    endsAt = stages[stages.length-1].end;
    stage = 0;
  }