implemented soft constraints to keep bboxes and verticle i/o from interacting badly