add opts.main_view and counter