         @set(catlist0 : catlist0)
         if catlist0.length == 1
             @set_selected_category(0, 0)
+
     search: (search_str) ->
         @reset()
         if not search_str? or search_str.length == 0

            search_sel : null
            submittable: false
            cat1_top   : ["Intro", "Tutorial", "Help"]
    hide: =>
        @set(show: false)
    init: (lang='sage') ->
        @reset()
        @show(lang=lang)
        @load_data()
    init_data: (data) ->
        @set(data: data)
        nav_entries = []

                @init_data(DATA)
        else
            @init_data(DATA)

    data_lang: () ->
        @get('data').get(@get('lang'))

    get_catlist0: () ->
        @data_lang().keySeq().toArray().sort(@cat_sort)

    get_catlist1: () ->
        k0 = @get_catlist0()[@get('cat0')]
        @data_lang().get(k0).keySeq().toArray().sort(@cat_sort)

    get_catlist2: () ->
        k0 = @get_catlist0()[@get('cat0')]
        k1 = @get_catlist1()[@get('cat1')]
        @data_lang().getIn([k0, k1]).map((el) -> el.get(0)).toArray()

    select_lang: (lang) ->
        @reset()
        @set(lang: lang)
