function nextUL(UL) {
    do{
        if(UL && UL.nodeName == "UL") return UL;
        if(UL) UL = UL.nextSibling;
    }
    while(UL);
    return false;
}

function fold(object){
    if(!object.nextSibling) return false;
    var UL = nextUL(object.nextSibling);
    if(UL==false) return false;
    with(UL.style){
        if(display=="none" || display=="")
            display="block";
        else
            display="none";
    }
    return false;
}

function unfold(){
    var UL = document.getElementById("unfold");
    if(!UL) return;
    var lastUL = UL;
    do{
        if(UL && UL.nodeName == "UL") {
            lastUL.style.display="block";
            lastUL = UL;
        }
        if(UL) UL = UL.parentNode;
        if(UL && UL.id == "refhead") return;
        
    }
    while(UL);
}

function foldall(method, UL) {
    if(!UL) UL = document.getElementById("refhead");
    UL = UL. firstChild;
    do{
        if(UL && UL.nodeName == "UL") {
            UL.style.display = method;
        }
        if(UL) {
            foldall(method, UL);
            UL = UL.nextSibling;
        }
        
    }
    while(UL);
}
