add outer_shift param