is given by $\epsilon$ and we will assume without loss of generality that $\frac{1}{\epsilon}$ is integral. For this arbitrary instance we compute a solution that has a makespan of at most $(1 + O(\epsilon)) OPT_I$. It is sufficient to find an $(1+O(\epsilon)) OPT_I$ schedule as we can replace our input $\epsilon$ with $\epsilon' = \frac{1}{c} \epsilon$ for $c \in O(1), c \neq 0$ to gain a $(1+\epsilon) OPT_I$ schedule. In the following we will also write $log$ for $log_2$ unless another base is specified.

Classification of jobs and bags
-------------------------------

Before we start classifying jobs and bags, we will apply some standard scaling and rounding techniques to reduce the number of item sizes. With a binary search frame work we may assume that we know the height of an optimal makespan $OPT$ and by scaling we may assume that $OPT = 1$. Further we will round up all job lengths to the next power of $1+ \epsilon$. With this we may assume that for any $j\in J$ we have that $p_j =(1+\epsilon)^k$ for some $k \in \mathbb{N}$. Note that this rounding increases our optimum to $1+\epsilon$ [@bagptas].

We later want to use a result from Das and Wiese to schedule 