private void ProcessBiSlice(Item item, ref BiSlice biSlice)
    {
        biSlice.RegisterItem(item);
        if (!biSlice.Stopped)
        {
            return;
        }

        SetMaxSize(biSlice.Size);

        biSlice = new BiSlice(_lastPlainSlice);
        biSlice.RegisterItem(item);
    }
    public void Process()
    {
        var biSlice = new BiSlice(_lastPlainSlice);

        for (var i = 0; i < _ints.Length; i++)
        {
            var item = new Item(_ints[i], i);

            ProcessBiSlice(item, ref biSlice);
            ProcessLastPlainSlice(item);
        }

        SetMaxSize(biSlice.Size);
    }