move duplicated code to a function
move duplicated code to a function
danse/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,tavisrudd/ghcjs,nrolland/ghcjs,mgsloan/ghcjs,yihuang/ghcjs,rowhit/ghcjs,ryantrinkle/ghcjs,nrolland/ghcjs,mgsloan/ghcjs,tavisrudd/ghcjs,tavisrudd/ghcjs,yihuang/ghcjs,philderbeast/ghcjs,ghcjs/ghcjs,flowbox-public/ghcjs,ghcjs/ghcjs,psfblair/ghcjs,seereason/ghcjs,k0001/ghcjs,nrolland/ghcjs,manyoo/ghcjs,tavisrudd/ghcjs,yihuang/ghcjs,philderbeast/ghcjs,fizruk/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,ryantrinkle/ghcjs,k0001/ghcjs,fizruk/ghcjs,flowbox-public/ghcjs,flowbox-public/ghcjs,seereason/ghcjs,rowhit/ghcjs,psfblair/ghcjs,flowbox-public/ghcjs,tavisrudd/ghcjs,ghcjs/ghcjs,fizruk/ghcjs,manyoo/ghcjs,fizruk/ghcjs,k0001/ghcjs,mgsloan/ghcjs,beni55/ghcjs,mgsloan/ghcjs,ryantrinkle/ghcjs,ghcjs/ghcjs,psfblair/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,ryantrinkle/ghcjs,mgsloan/ghcjs,danse/ghcjs,seereason/ghcjs,ghcjs/ghcjs,philderbeast/ghcjs,yihuang/ghcjs,manyoo/ghcjs,rowhit/ghcjs,seereason/ghcjs,ghcjs/ghcjs,beni55/ghcjs,ghcjs/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,flowbox-public/ghcjs,flowbox-public/ghcjs,k-bx/ghcjs,nrolland/ghcjs,k0001/ghcjs,manyoo/ghcjs,tavisrudd/ghcjs,seereason/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,danse/ghcjs,rowhit/ghcjs,ryantrinkle/ghcjs,yihuang/ghcjs,danse/ghcjs,k0001/ghcjs,manyoo/ghcjs,k-bx/ghcjs,ryantrinkle/ghcjs,k0001/ghcjs,k-bx/ghcjs,k-bx/ghcjs,yihuang/ghcjs,rowhit/ghcjs,seereason/ghcjs,fizruk/ghcjs,philderbeast/ghcjs,k-bx/ghcjs,nrolland/ghcjs,manyoo/ghcjs,danse/ghcjs,rowhit/ghcjs,beni55/ghcjs,forked-upstream-packages-for-ghcjs/ghcjs,nrolland/ghcjs,psfblair/ghcjs,philderbeast/ghcjs,mgsloan/ghcjs,psfblair/ghcjs,danse/ghcjs,fizruk/ghcjs,psfblair/ghcjs,k-bx/ghcjs,beni55/ghcjs,beni55/ghcjs,philderbeast/ghcjs,beni55/ghcjs