require(MCDswitchTimestamp != now, "Cannot send DAI during the switching block");
            require(dai.transferFrom(msg.sender, address(this), _amount), "DAI transfer failed");
            unredeemedBounty[msg.sender].DAI = unredeemedBounty[msg.sender].DAI.add(_amount);
            bountyPot.DAI = bountyPot.DAI.add(_amount);
        }
        receiver[_to] = Receiver(_to.balance, 0, _amount, now, getPrice(), msg.sender);
        giveCommon(_to);
    }


    
    
    
    
    function bump(bool _up) external payable shutdownNotActive {
        require(msg.value > 0, "Ether required");
        uint initialMultiplier = multiplier;

        
        uint bumpAmount = msg.value
            .wdiv(bumpBasePrice)
            .wmul(getBonusMultiplier(msg.sender))
            .wmul(BUMP_INCREMENT);

        if (_up) {
            if (multiplier.add(bumpAmount) >= MULTIPLIER_CEILING) {
                multiplier = MULTIPLIER_CEILING;
            } else {
                multiplier = multiplier.add(roundBumpAmount(bumpAmount));
            }