
___x_cmd_epoch_now(){

    local fp=""
    local epoch1
    local le=""
    local ge=""

    while [ $# -gt 0 ]; do
        case "$1" in
            -f)         fp="$2" ;   arg:2:shift ;;
            --le|--in)  le="$2" ;   arg:2:shift ;;
            --ge)       ge="$2" ;   arg:2:shift ;;
            --)         shift ; break ;;
            *)          break ;;
        esac
    done

    if [ -n "$fp" ]; then
        [ -r "$fp" ] || N=epoch M="File is not readable -> $fp" log:ret:64
        read -r epoch1 <"$fp"
    fi

    [ $# -eq 0 ] ||     epoch1="$1"

    if [ -z "$epoch1" ]; then
        N=epoch M="Please provide epoch using -f <file> or arg #1" log:ret:64
    fi

    [ -n "$le$ge" ] || N=epoch M="Must specify --le and/or --ge" log:ret:64

    ___x_cmd_epoch_diff_ "$epoch1" || return $?
    local diff="$x_"

    if [ -n "$le" ]; then
        ___x_cmd humantime tosec_ "$le" || return $?
        ___x_cmd_cmds awk -v d="$diff" -v le="$x_" 'BEGIN{ exit !(d+0 <= le+0) }' || return 1
    fi

    if [ -n "$ge" ]; then
        ___x_cmd humantime tosec_ "$ge" || return $?
        ___x_cmd_cmds awk -v d="$diff" -v ge="$x_" 'BEGIN{ exit !(d+0 >= ge+0) }' || return 1
    fi
}

___x_cmd_epoch_diff_(){
    # integer stays in shell arithmetic (exact); fractional must go through awk (preserves decimals).
    local epoch1="$1"
    case "$epoch1" in
        *.*)
            ___x_cmd epoch real3_ || return $?
            x_="$( ___x_cmd_cmds awk -v now="$x_" -v e="$epoch1" 'BEGIN{ printf("%.3f", now - e) }' )"
            ;;
        *)
            ___x_cmd epoch get_ || return $?
            x_=$(( x_ - epoch1 ))
            ;;
    esac
}
