declare -f config::load
config::load () 
{ 
    local conf_file;
    conf_file="$(ctx::data)/wgctl.conf";
    [[ ! -f "$conf_file" ]] && return 0;
    echo "test";
    while IFS='=' read -r key value; do
        echo "KEY='$key' VALUE='$value'";
        [[ "$key" =~ ^[[:space:]]*# ]] && continue;
        [[ -z "${key// }" ]] && continue;
        key="${key// /}";
        value="${value// /}";
        case "$key" in 
            WG_INTERFACE)
                _WG_INTERFACE="$value"
            ;;
            WG_ENDPOINT)
                _WG_ENDPOINT="$value"
            ;;
            WG_DNS)
                _WG_DNS="$value"
            ;;
            WG_PORT)
                _WG_PORT="$value"
            ;;
            WG_SUBNET)
                _WG_SUBNET="$value"
            ;;
            WG_LAN)
                _WG_LAN="$value"
            ;;
            DATE_FORMAT)
                log::debug "config: setting date format to $value";
                _FMT_DATE_FORMAT="$value";
                fmt::set_date_format "$value"
            ;;
        esac;
    done < "$conf_file";
    _WG_CONFIG="$(ctx::wg)/${_WG_INTERFACE}.conf";
    _WG_TUNNEL_SPLIT="${_WG_SUBNET}, ${_WG_LAN}"
}