            var pmFlowing = false;
            var pmMoved = 0;
            var pmMoveRate = 0.07;
            var pmTerms = 4000;
            var pmFlow = 5;
            var pmHeight = 320;
            var pmCnt = 1;
            var pmPause = false;
            var pmDirection = "up";
            var pmDirectionTemporary = "up";
            var pmTimerID;
            
            function pomDirection(dic) {
                pmDirection = dic;
                if (pmMoved == 0) {
                    if (pmDirectionTemporary != pmDirection) {
                        for (var i = 0; i < pmCnt; i++) {
                            var obj = document.getElementById("pom" + i);
                            if (parseInt(obj.style.top) != 0) {
                                if (pmDirection == "up") {
                                    obj.style.top = parseInt(obj.style.top) + (pmHeight * pmCnt) + "px";
                                } else {
                                    obj.style.top = parseInt(obj.style.top) - (pmHeight * pmCnt) + "px";
                                }
                            }
                        }
                    }
                    pmDirectionTemporary = pmDirection;
                    window.clearTimeout(pmTimerID);
                    pmTimerID = window.setTimeout("pomScroll()", 0);
                }
            }
            function pomInit() {
                for (var i = 0; i < 50; i++) {
                    var obj = document.getElementById("pom" + i);
                    if (obj == null) {
                        pmCnt = i;
                        break;
                    }
        
                    if (pmDirection == "up") {
                        obj.style.top = pmHeight * i + "px";
                    } else {
                        obj.style.top = pmHeight * i * -1 + "px";
                    }
                }
                if (pmCnt > 1) {
                    pmTimerID = window.setTimeout("pomScroll()", pmTerms);
                }
        
        //        pmTimerID = window.setTimeout("pomScroll()", pmTerms);
        //        pmPause = true;
            }
            function pomScroll() {
                pmFlowing = true
                if (pmPause == false) {
                    var PX = (pmHeight - pmMoved) * pmMoveRate;
                    if (PX > 0) {
                        PX = Math.ceil(PX);
                    } else {
                        PX = Math.floor(PX);
                    }
                    
                    if (pmMoved + PX > pmHeight)
                        PX = pmHeight - pmMoved;
                    pmMoved = pmMoved + PX;
                        
                    for (var i = 0; i < pmCnt; i++) {
                        var obj = document.getElementById("pom" + i);
                        var objTop = parseInt(obj.style.top);
                        if (pmDirectionTemporary == "up") {
                            obj.style.top = objTop - PX + "px";
                            if (parseInt(obj.style.top) <= pmHeight * -1) {                 
                                obj.style.top = pmHeight * (pmCnt - 1) + "px";
                            }
                        } else {
                            obj.style.top = objTop + PX + "px";
                            if (parseInt(obj.style.top) >= pmHeight) {      
                                obj.style.top = pmHeight * (pmCnt - 1) * -1 + "px" ;
                            }
                        }
                    }
                    
                    if (pmMoved > pmHeight - 1) {
                        pmFlowing = false;
                        pmMoved = 0;
                        if (pmDirectionTemporary != pmDirection) {
                            for (var i = 0; i < pmCnt; i++) {
                                var obj = document.getElementById("pom" + i);
                                if (parseInt(obj.style.top) != 0) {
                                    if (pmDirection == "up") {
                                        obj.style.top = parseInt(obj.style.top) + (pmHeight * pmCnt) + "px";
                                    } else {
                                        obj.style.top = parseInt(obj.style.top) - (pmHeight * pmCnt) + "px";
                                    }
                                }
                            }
                            pmDirectionTemporary = pmDirection;
                            pmTimerID = window.setTimeout("pomScroll()", 0);
                        } else {
                            pmTimerID = window.setTimeout("pomScroll()", pmTerms);
                        }
                    } else {
                        pmTimerID = window.setTimeout("pomScroll()", pmFlow);
                    }
                } else {
                    pmTimerID = window.setTimeout("pomScroll()", 100);
                }
            }
            pomInit();
