123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- #! /bin/bash
- SCRIPTDIR=`dirname "${BASH_SOURCE[0]}"`
- pushd ${SCRIPTDIR}
- SCRIPTDIR=`pwd`
- popd
- source ${SCRIPTDIR}/base64decode.sh
- function dupsinglemarkedsortedqreset
- {
- cat <<EOF | base64 ${BASE64DEC}
- H4sIBAAAAAAA/wYAQkMCAGoV5V1bryO5cW4DDpBj5IJmGghfAgy5/dAvOyP1Vb2AAbNFQFwg8S5g
- Ia+Ns96xY8SzXs+sY+SRBB/4mxIgCXJBLkDykp+QH5IU1dJR69JStW4YIGV4Z0ZHR6qvv/qqimyS
- 3Yg/+97/fC8IfqTk05//+LPp6/zpJ1989uvfvH3/1988v3v7gx99uXj6XH721W+fn7788eoPeNfk
- dfW6fP70fZ5lT/M//ezNh1/97LvfPr9/++Yvvn3++Rt405vuHW+++sU3/p+v3r199+r98zdfv/7Z
- 8/rPX28++cNP3z+/++qXb/3Hb//+5earpq+n2eti91u+ev7652/frz588xuvPv381Yfnd68+/eLV
- V/DHi9vP7949v//Lr3/z7S9/8dPn795+SFcoDl+Fz3/9+s2H9z99c+xXvtx6tkI/Aadmve/48Kv3
- 360/ePXXnU/zr7z6yRc/fLmmK3SH37L55Hra++T3bz+83Xx09/edz1699Gr1X/81v3r/9dv3P5ys
- v2DlSu9TA7B/hP//79p+L/icBMH3g697r/n3fDtpf/HNX7VZtZgHllhjksjEmjKXkKjhjaNRyJgw
- yjUylCppVGhYyCRJiFFR+AnGnlDvGrS/63n8u0Mo8naWi2VAhIoUt84KR5qIcMebkAhjrUtoyGWT
- gM+W6lgkVgimmLDX+Xbc9gH/a8/bcAhBueJhWs4XbTqdLwLCzIoPFdktH/IUH0fduPLi79vf99x+
- GoIyLdqymi+DRDkJF5sJnpiYhTFNlDJak1hyqwUVjkqiZUQiE1HpGkPVDTw8C/hveu5+fwhCmgZn
- Qyhah5CyCbNG38T7s4YiIM3a2UzMg5MXn+xe/EQloXX3crvPCkrQAAH0EITMRYSKJuQ0EeAi14pD
- yFOjmeSx0loQEtHY2VhE0nil3AtB3/695+0fDSHIpm1WL0Rbp/NlWxdzERyhQh+jgq6ocIwdSHrA
- LhL50/r3/rnn+B8MginbLFvO22q6WAb7kuCHknBrSRgDxBl+IwQn34XSdVYHGDF0DCScGcfZQ0IK
- x0LdFqXwLEA0ncIRdzj0bXA8nfznrqFYyCcBOqmuIyi8S6W+zPsiGBlAIrpbYu0bqjYUWZvXy0Uw
- 5H501H0uOa7Z69sFaQkHoWrTCvLQDgB1+vp7AIct0nXOHrd/6rn7+4PdXtd251NgIo4iZ5tYEMec
- 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
- EOF
- }
|