library Math {
     /** 1/1000, 1000 uint = 1 */

    /**
     * Returns `promille` promille of `value`
     * e.g. `takePromille(5000, 1) == 5`
     * @param value - uint to take promille value
     * @param promille - promille value
     * @return result - `value * promille / 1000`
     */
    function takePromille (uint value, uint promille)  constant  returns (uint result) { 
        result = value * promille / 1000;
    }

    /**
     * Returns `value` with added `promille` promille
     * @param value - uint to add promille to
     * @param promille - promille value to add
     * @return result - `value + value * promille / 1000`
     */
    function addPromille (uint value, uint promille)  constant  returns (uint result) { 
        result = value + takePromille(value, promille);
    }
}
/**
 * @title Various Math utilities
 */
function addPromille (uint value, uint promille)  constant  returns (uint result) { 
    result = value + takePromille(value, promille);
}

/**
 * Returns `value` with added `promille` promille
 * @param value - uint to add promille to
 * @param promille - promille value to add
 * @return result - `value + value * promille / 1000`
 */