class Listener4SpeedAssistExtend implements Listener4Assist.AssistExtend,
        ListenerModelHandler.ModelCreator<Listener4SpeedAssistExtend.Listener4SpeedModel> {

    @Override public boolean dispatchBlockEnd(DownloadTask task, int blockIndex,
                                              Listener4Assist.Listener4Model model) {
        final Listener4SpeedModel speedModel = (Listener4SpeedModel) model;

        speedModel.blockSpeeds.get(blockIndex).endTask();

        if (callback != null) {
            callback.blockEnd(task, blockIndex, model.info.getBlock(blockIndex),
                    speedModel.getBlockSpeed(blockIndex));
        }

        return true;
    }

}