if (members.size() == 1) { member_helper_finish((Member)members.get(0), callback, typer, def, end, null); return; }
    private void member_helper_size(List members,                                    final ObjectSwitchCallback callback,                                    final ParameterTyper typer,                                    final Label def,                                    final Label end) throws Exception {        if (members.size() == 1) {            member_helper_finish((Member)members.get(0), callback, typer, def, end, null);            return;        }        final Map buckets = bucket(members, new Transformer() {            public Object transform(Object value) {                return new Integer(typer.getParameterTypes(value).length);            }        });        dup();        arraylength();        process_switch(getSwitchKeys(buckets), new ProcessSwitchCallback() {            public void processCase(int key, Label dontUseEnd) throws Exception {                List bucket = (List)buckets.get(new Integer(key));                Class[] types = typer.getParameterTypes(bucket.get(0));                member_helper_type(bucket, callback, typer, def, end, new BitSet(types.length));            }            public void processDefault() throws Exception {                goTo(def);            }        });    }