/*
 * NB:  This file is machine generated, DO NOT EDIT!
 *
 * Edit vmod_std.vcc and run make instead
 */

#include "config.h"
#include "vdef.h"
#include "vrt.h"
#include "vcc_std_if.h"
#include "vmod_abi.h"


typedef VCL_REAL td_vmod_std_random(VRT_CTX, VCL_REAL,
    VCL_REAL);
typedef VCL_REAL td_vmod_std_round(VRT_CTX, VCL_REAL);
typedef VCL_VOID td_vmod_std_collect(VRT_CTX, VCL_HEADER,
    VCL_STRING);
typedef VCL_STRING td_vmod_std_querysort(VRT_CTX, VCL_STRING);
typedef VCL_STRING td_vmod_std_toupper(VRT_CTX, VCL_STRANDS);
typedef VCL_STRING td_vmod_std_tolower(VRT_CTX, VCL_STRANDS);
typedef VCL_STRING td_vmod_std_strstr(VRT_CTX, VCL_STRING,
    VCL_STRING);
typedef VCL_BOOL td_vmod_std_fnmatch(VRT_CTX, VCL_STRING,
    VCL_STRING, VCL_BOOL, VCL_BOOL, VCL_BOOL);
typedef VCL_STRING td_vmod_std_fileread(VRT_CTX,
    struct vmod_priv *, VCL_STRING);
typedef VCL_BLOB td_vmod_std_blobread(VRT_CTX,
    struct vmod_priv *, VCL_STRING);
typedef VCL_BOOL td_vmod_std_file_exists(VRT_CTX, VCL_STRING);
typedef VCL_BOOL td_vmod_std_healthy(VRT_CTX, VCL_BACKEND);
typedef VCL_INT td_vmod_std_port(VRT_CTX, VCL_IP);
typedef VCL_DURATION td_vmod_std_duration(VRT_CTX,
    struct VARGS(duration)*);
typedef VCL_BYTES td_vmod_std_bytes(VRT_CTX,
    struct VARGS(bytes)*);
typedef VCL_INT td_vmod_std_integer(VRT_CTX,
    struct VARGS(integer)*);
typedef VCL_IP td_vmod_std_ip(VRT_CTX, struct VARGS(ip)*);
typedef VCL_REAL td_vmod_std_real(VRT_CTX, struct VARGS(real)*);
typedef VCL_TIME td_vmod_std_time(VRT_CTX, struct VARGS(time)*);
typedef VCL_STRING td_vmod_std_strftime(VRT_CTX, VCL_TIME,
    VCL_STRING);
typedef VCL_VOID td_vmod_std_log(VRT_CTX, VCL_STRANDS);
typedef VCL_VOID td_vmod_std_syslog(VRT_CTX, VCL_INT,
    VCL_STRANDS);
typedef VCL_VOID td_vmod_std_timestamp(VRT_CTX, VCL_STRING);
typedef VCL_BOOL td_vmod_std_syntax(VRT_CTX, VCL_REAL);
typedef VCL_STRING td_vmod_std_getenv(VRT_CTX, VCL_STRING);
typedef VCL_BOOL td_vmod_std_cache_req_body(VRT_CTX, VCL_BYTES);
typedef VCL_VOID td_vmod_std_late_100_continue(VRT_CTX,
    VCL_BOOL);
typedef VCL_VOID td_vmod_std_set_ip_tos(VRT_CTX, VCL_INT);
typedef VCL_VOID td_vmod_std_rollback(VRT_CTX, VCL_HTTP);
typedef VCL_BOOL td_vmod_std_ban(VRT_CTX, VCL_STRING);
typedef VCL_STRING td_vmod_std_ban_error(VRT_CTX);
typedef VCL_TIME td_vmod_std_now(VRT_CTX);
typedef VCL_DURATION td_vmod_std_timed_call(VRT_CTX, VCL_SUB);
typedef VCL_VOID td_vmod_std_rfc_ttl(VRT_CTX);

struct Vmod_vmod_std_Func {
	td_vmod_std_random		*f_random;
	td_vmod_std_round		*f_round;
	td_vmod_std_collect		*f_collect;
	td_vmod_std_querysort		*f_querysort;
	td_vmod_std_toupper		*f_toupper;
	td_vmod_std_tolower		*f_tolower;
	td_vmod_std_strstr		*f_strstr;
	td_vmod_std_fnmatch		*f_fnmatch;
	td_vmod_std_fileread		*f_fileread;
	td_vmod_std_blobread		*f_blobread;
	td_vmod_std_file_exists		*f_file_exists;
	td_vmod_std_healthy		*f_healthy;
	td_vmod_std_port		*f_port;
	td_vmod_std_duration		*f_duration;
	td_vmod_std_bytes		*f_bytes;
	td_vmod_std_integer		*f_integer;
	td_vmod_std_ip			*f_ip;
	td_vmod_std_real		*f_real;
	td_vmod_std_time		*f_time;
	td_vmod_std_strftime		*f_strftime;
	td_vmod_std_log			*f_log;
	td_vmod_std_syslog		*f_syslog;
	td_vmod_std_timestamp		*f_timestamp;
	td_vmod_std_syntax		*f_syntax;
	td_vmod_std_getenv		*f_getenv;
	td_vmod_std_cache_req_body	*f_cache_req_body;
	td_vmod_std_late_100_continue	*f_late_100_continue;
	td_vmod_std_set_ip_tos		*f_set_ip_tos;
	td_vmod_std_rollback		*f_rollback;
	td_vmod_std_ban			*f_ban;
	td_vmod_std_ban_error		*f_ban_error;
	td_vmod_std_now			*f_now;
	td_vmod_std_timed_call		*f_timed_call;
	td_vmod_std_rfc_ttl		*f_rfc_ttl;
};

/*lint -esym(754, Vmod_vmod_std_Func::*) */

static const struct Vmod_vmod_std_Func Vmod_vmod_std_Func = {
	.f_random =			vmod_random,
	.f_round =			vmod_round,
	.f_collect =			vmod_collect,
	.f_querysort =			vmod_querysort,
	.f_toupper =			vmod_toupper,
	.f_tolower =			vmod_tolower,
	.f_strstr =			vmod_strstr,
	.f_fnmatch =			vmod_fnmatch,
	.f_fileread =			vmod_fileread,
	.f_blobread =			vmod_blobread,
	.f_file_exists =		vmod_file_exists,
	.f_healthy =			vmod_healthy,
	.f_port =			vmod_port,
	.f_duration =			vmod_duration,
	.f_bytes =			vmod_bytes,
	.f_integer =			vmod_integer,
	.f_ip =				vmod_ip,
	.f_real =			vmod_real,
	.f_time =			vmod_time,
	.f_strftime =			vmod_strftime,
	.f_log =			vmod_log,
	.f_syslog =			vmod_syslog,
	.f_timestamp =			vmod_timestamp,
	.f_syntax =			vmod_syntax,
	.f_getenv =			vmod_getenv,
	.f_cache_req_body =		vmod_cache_req_body,
	.f_late_100_continue =		vmod_late_100_continue,
	.f_set_ip_tos =			vmod_set_ip_tos,
	.f_rollback =			vmod_rollback,
	.f_ban =			vmod_ban,
	.f_ban_error =			vmod_ban_error,
	.f_now =			vmod_now,
	.f_timed_call =			vmod_timed_call,
	.f_rfc_ttl =			vmod_rfc_ttl,

};
#define STRINGIFY3(arg) #arg
#define STRINGIFY2(arg) STRINGIFY3(#arg)
#define STRINGIFY1(arg) STRINGIFY2(arg)

static const char Vmod_Json[] = {
	"VMOD_JSON_SPEC"
	"[ "
	"  [ "
	"    \"$VMOD\", "
	"    \"2.0\", "
	"    \"std\", "
	"    \"Vmod_vmod_std_Func\", "
	"    \"256a40f2e394c4010f53872302e599eff71473e5d2163a64dd9aaa02e487bffc\" ,"
	"    \"" VMOD_ABI_Version "\", "
	    STRINGIFY1(0) ", "
	    STRINGIFY1(0)
	"  ], "
	"  [ "
	"    \"$CPROTO\", "
	"    \"#define VPFX(a) vmod_##a\", "
	"    \"#define VARGS(a) arg_vmod_std_##a\", "
	"    \"#define VENUM(a) enum_vmod_std_##a\", "
	"    \"//lint -esym(755, VPFX)\", "
	"    \"//lint -esym(767, VPFX)\", "
	"    \"//lint -esym(755, VARGS)\", "
	"    \"//lint -esym(767, VARGS)\", "
	"    \"//lint -esym(755, VENUM)\", "
	"    \"//lint -esym(767, VENUM)\", "
	"    \"//lint -esym(755, VARGS)\", "
	"    \"//lint -esym(755, VENUM)\", "
	"    \"\", "
	"    \"/* Functions */\", "
	"    \"typedef VCL_REAL td_vmod_std_random(VRT_CTX, VCL_REAL,\", "
	"    \"    VCL_REAL);\", "
	"    \"typedef VCL_REAL td_vmod_std_round(VRT_CTX, VCL_REAL);\", "
	"    \"typedef VCL_VOID td_vmod_std_collect(VRT_CTX, VCL_HEADER,\", "
	"    \"    VCL_STRING);\", "
	"    \"typedef VCL_STRING td_vmod_std_querysort(VRT_CTX, VCL_STRING);\", "
	"    \"typedef VCL_STRING td_vmod_std_toupper(VRT_CTX, VCL_STRANDS);\", "
	"    \"typedef VCL_STRING td_vmod_std_tolower(VRT_CTX, VCL_STRANDS);\", "
	"    \"typedef VCL_STRING td_vmod_std_strstr(VRT_CTX, VCL_STRING,\", "
	"    \"    VCL_STRING);\", "
	"    \"typedef VCL_BOOL td_vmod_std_fnmatch(VRT_CTX, VCL_STRING,\", "
	"    \"    VCL_STRING, VCL_BOOL, VCL_BOOL, VCL_BOOL);\", "
	"    \"typedef VCL_STRING td_vmod_std_fileread(VRT_CTX,\", "
	"    \"    struct vmod_priv *, VCL_STRING);\", "
	"    \"typedef VCL_BLOB td_vmod_std_blobread(VRT_CTX,\", "
	"    \"    struct vmod_priv *, VCL_STRING);\", "
	"    \"typedef VCL_BOOL td_vmod_std_file_exists(VRT_CTX, VCL_STRING);\", "
	"    \"typedef VCL_BOOL td_vmod_std_healthy(VRT_CTX, VCL_BACKEND);\", "
	"    \"typedef VCL_INT td_vmod_std_port(VRT_CTX, VCL_IP);\", "
	"    \"\", "
	"    \"struct VARGS(duration) {\", "
	"    \"\\tchar\\t\\t\\tvalid_s;\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_real;\", "
	"    \"\\tchar\\t\\t\\tvalid_integer;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_DURATION\\t\\tfallback;\", "
	"    \"\\tVCL_REAL\\t\\treal;\", "
	"    \"\\tVCL_INT\\t\\t\\tinteger;\", "
	"    \"};\", "
	"    \"typedef VCL_DURATION td_vmod_std_duration(VRT_CTX,\", "
	"    \"    struct VARGS(duration)*);\", "
	"    \"\", "
	"    \"struct VARGS(bytes) {\", "
	"    \"\\tchar\\t\\t\\tvalid_s;\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_real;\", "
	"    \"\\tchar\\t\\t\\tvalid_integer;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_BYTES\\t\\tfallback;\", "
	"    \"\\tVCL_REAL\\t\\treal;\", "
	"    \"\\tVCL_INT\\t\\t\\tinteger;\", "
	"    \"};\", "
	"    \"typedef VCL_BYTES td_vmod_std_bytes(VRT_CTX,\", "
	"    \"    struct VARGS(bytes)*);\", "
	"    \"\", "
	"    \"struct VARGS(integer) {\", "
	"    \"\\tchar\\t\\t\\tvalid_s;\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_boolean;\", "
	"    \"\\tchar\\t\\t\\tvalid_bytes;\", "
	"    \"\\tchar\\t\\t\\tvalid_duration;\", "
	"    \"\\tchar\\t\\t\\tvalid_real;\", "
	"    \"\\tchar\\t\\t\\tvalid_time;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_INT\\t\\t\\tfallback;\", "
	"    \"\\tVCL_BOOL\\t\\tboolean;\", "
	"    \"\\tVCL_BYTES\\t\\tbytes;\", "
	"    \"\\tVCL_DURATION\\t\\tduration;\", "
	"    \"\\tVCL_REAL\\t\\treal;\", "
	"    \"\\tVCL_TIME\\t\\ttime;\", "
	"    \"};\", "
	"    \"typedef VCL_INT td_vmod_std_integer(VRT_CTX,\", "
	"    \"    struct VARGS(integer)*);\", "
	"    \"\", "
	"    \"struct VARGS(ip) {\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_p;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_IP\\t\\t\\tfallback;\", "
	"    \"\\tVCL_BOOL\\t\\tresolve;\", "
	"    \"\\tVCL_STRING\\t\\tp;\", "
	"    \"};\", "
	"    \"typedef VCL_IP td_vmod_std_ip(VRT_CTX, struct VARGS(ip)*);\", "
	"    \"\", "
	"    \"struct VARGS(real) {\", "
	"    \"\\tchar\\t\\t\\tvalid_s;\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_integer;\", "
	"    \"\\tchar\\t\\t\\tvalid_boolean;\", "
	"    \"\\tchar\\t\\t\\tvalid_bytes;\", "
	"    \"\\tchar\\t\\t\\tvalid_duration;\", "
	"    \"\\tchar\\t\\t\\tvalid_time;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_REAL\\t\\tfallback;\", "
	"    \"\\tVCL_INT\\t\\t\\tinteger;\", "
	"    \"\\tVCL_BOOL\\t\\tboolean;\", "
	"    \"\\tVCL_BYTES\\t\\tbytes;\", "
	"    \"\\tVCL_DURATION\\t\\tduration;\", "
	"    \"\\tVCL_TIME\\t\\ttime;\", "
	"    \"};\", "
	"    \"typedef VCL_REAL td_vmod_std_real(VRT_CTX, struct VARGS(real)*);\", "
	"    \"\", "
	"    \"struct VARGS(time) {\", "
	"    \"\\tchar\\t\\t\\tvalid_s;\", "
	"    \"\\tchar\\t\\t\\tvalid_fallback;\", "
	"    \"\\tchar\\t\\t\\tvalid_real;\", "
	"    \"\\tchar\\t\\t\\tvalid_integer;\", "
	"    \"\\tVCL_STRING\\t\\ts;\", "
	"    \"\\tVCL_TIME\\t\\tfallback;\", "
	"    \"\\tVCL_REAL\\t\\treal;\", "
	"    \"\\tVCL_INT\\t\\t\\tinteger;\", "
	"    \"};\", "
	"    \"typedef VCL_TIME td_vmod_std_time(VRT_CTX, struct VARGS(time)*);\", "
	"    \"typedef VCL_STRING td_vmod_std_strftime(VRT_CTX, VCL_TIME,\", "
	"    \"    VCL_STRING);\", "
	"    \"typedef VCL_VOID td_vmod_std_log(VRT_CTX, VCL_STRANDS);\", "
	"    \"typedef VCL_VOID td_vmod_std_syslog(VRT_CTX, VCL_INT,\", "
	"    \"    VCL_STRANDS);\", "
	"    \"typedef VCL_VOID td_vmod_std_timestamp(VRT_CTX, VCL_STRING);\", "
	"    \"typedef VCL_BOOL td_vmod_std_syntax(VRT_CTX, VCL_REAL);\", "
	"    \"typedef VCL_STRING td_vmod_std_getenv(VRT_CTX, VCL_STRING);\", "
	"    \"typedef VCL_BOOL td_vmod_std_cache_req_body(VRT_CTX, VCL_BYTES);\", "
	"    \"typedef VCL_VOID td_vmod_std_late_100_continue(VRT_CTX,\", "
	"    \"    VCL_BOOL);\", "
	"    \"typedef VCL_VOID td_vmod_std_set_ip_tos(VRT_CTX, VCL_INT);\", "
	"    \"typedef VCL_VOID td_vmod_std_rollback(VRT_CTX, VCL_HTTP);\", "
	"    \"typedef VCL_BOOL td_vmod_std_ban(VRT_CTX, VCL_STRING);\", "
	"    \"typedef VCL_STRING td_vmod_std_ban_error(VRT_CTX);\", "
	"    \"typedef VCL_TIME td_vmod_std_now(VRT_CTX);\", "
	"    \"typedef VCL_DURATION td_vmod_std_timed_call(VRT_CTX, VCL_SUB);\", "
	"    \"typedef VCL_VOID td_vmod_std_rfc_ttl(VRT_CTX);\", "
	"    \"\", "
	"    \"struct Vmod_vmod_std_Func {\", "
	"    \"\\ttd_vmod_std_random\\t\\t*f_random;\", "
	"    \"\\ttd_vmod_std_round\\t\\t*f_round;\", "
	"    \"\\ttd_vmod_std_collect\\t\\t*f_collect;\", "
	"    \"\\ttd_vmod_std_querysort\\t\\t*f_querysort;\", "
	"    \"\\ttd_vmod_std_toupper\\t\\t*f_toupper;\", "
	"    \"\\ttd_vmod_std_tolower\\t\\t*f_tolower;\", "
	"    \"\\ttd_vmod_std_strstr\\t\\t*f_strstr;\", "
	"    \"\\ttd_vmod_std_fnmatch\\t\\t*f_fnmatch;\", "
	"    \"\\ttd_vmod_std_fileread\\t\\t*f_fileread;\", "
	"    \"\\ttd_vmod_std_blobread\\t\\t*f_blobread;\", "
	"    \"\\ttd_vmod_std_file_exists\\t\\t*f_file_exists;\", "
	"    \"\\ttd_vmod_std_healthy\\t\\t*f_healthy;\", "
	"    \"\\ttd_vmod_std_port\\t\\t*f_port;\", "
	"    \"\\ttd_vmod_std_duration\\t\\t*f_duration;\", "
	"    \"\\ttd_vmod_std_bytes\\t\\t*f_bytes;\", "
	"    \"\\ttd_vmod_std_integer\\t\\t*f_integer;\", "
	"    \"\\ttd_vmod_std_ip\\t\\t\\t*f_ip;\", "
	"    \"\\ttd_vmod_std_real\\t\\t*f_real;\", "
	"    \"\\ttd_vmod_std_time\\t\\t*f_time;\", "
	"    \"\\ttd_vmod_std_strftime\\t\\t*f_strftime;\", "
	"    \"\\ttd_vmod_std_log\\t\\t\\t*f_log;\", "
	"    \"\\ttd_vmod_std_syslog\\t\\t*f_syslog;\", "
	"    \"\\ttd_vmod_std_timestamp\\t\\t*f_timestamp;\", "
	"    \"\\ttd_vmod_std_syntax\\t\\t*f_syntax;\", "
	"    \"\\ttd_vmod_std_getenv\\t\\t*f_getenv;\", "
	"    \"\\ttd_vmod_std_cache_req_body\\t*f_cache_req_body;\", "
	"    \"\\ttd_vmod_std_late_100_continue\\t*f_late_100_continue;\", "
	"    \"\\ttd_vmod_std_set_ip_tos\\t\\t*f_set_ip_tos;\", "
	"    \"\\ttd_vmod_std_rollback\\t\\t*f_rollback;\", "
	"    \"\\ttd_vmod_std_ban\\t\\t\\t*f_ban;\", "
	"    \"\\ttd_vmod_std_ban_error\\t\\t*f_ban_error;\", "
	"    \"\\ttd_vmod_std_now\\t\\t\\t*f_now;\", "
	"    \"\\ttd_vmod_std_timed_call\\t\\t*f_timed_call;\", "
	"    \"\\ttd_vmod_std_rfc_ttl\\t\\t*f_rfc_ttl;\", "
	"    \"};\", "
	"    \"#undef VPFX\", "
	"    \"#undef VARGS\", "
	"    \"#undef VENUM\", "
	"    \"static struct Vmod_vmod_std_Func Vmod_vmod_std_Func;\" "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"random\", "
	"    [ "
	"      [ "
	"        \"REAL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_random\", "
	"      \"\", "
	"      [ "
	"        \"REAL\", "
	"        \"lo\", "
	"        \"lo\" "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"hi\", "
	"        \"hi\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"round\", "
	"    [ "
	"      [ "
	"        \"REAL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_round\", "
	"      \"\", "
	"      [ "
	"        \"REAL\", "
	"        \"r\", "
	"        \"r\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"collect\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_collect\", "
	"      \"\", "
	"      [ "
	"        \"HEADER\", "
	"        \"hdr\", "
	"        \"hdr\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        \"sep\", "
	"        \"sep\", "
	"        \"\\\", \\\"\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"querysort\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_querysort\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        null, "
	"        \"arg1\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"toupper\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_toupper\", "
	"      \"\", "
	"      [ "
	"        \"STRANDS\", "
	"        \"s\", "
	"        \"s\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"tolower\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_tolower\", "
	"      \"\", "
	"      [ "
	"        \"STRANDS\", "
	"        \"s\", "
	"        \"s\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"strstr\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_strstr\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        \"s1\", "
	"        \"s1\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        \"s2\", "
	"        \"s2\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"fnmatch\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_fnmatch\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        \"pattern\", "
	"        \"pattern\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        \"subject\", "
	"        \"subject\" "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"pathname\", "
	"        \"pathname\", "
	"        \"1\" "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"noescape\", "
	"        \"noescape\", "
	"        \"0\" "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"period\", "
	"        \"period\", "
	"        \"0\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"fileread\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_fileread\", "
	"      \"\", "
	"      [ "
	"        \"PRIV_CALL\", "
	"        null, "
	"        \"arg1\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        null, "
	"        \"arg2\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"blobread\", "
	"    [ "
	"      [ "
	"        \"BLOB\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_blobread\", "
	"      \"\", "
	"      [ "
	"        \"PRIV_CALL\", "
	"        null, "
	"        \"arg1\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        null, "
	"        \"arg2\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"file_exists\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_file_exists\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        \"path\", "
	"        \"path\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"healthy\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_healthy\", "
	"      \"\", "
	"      [ "
	"        \"BACKEND\", "
	"        \"be\", "
	"        \"be\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"port\", "
	"    [ "
	"      [ "
	"        \"INT\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_port\", "
	"      \"\", "
	"      [ "
	"        \"IP\", "
	"        \"ip\", "
	"        \"ip\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"duration\", "
	"    [ "
	"      [ "
	"        \"DURATION\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_duration\", "
	"      \"struct arg_vmod_std_duration\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"DURATION\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"real\", "
	"        \"real\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"INT\", "
	"        \"integer\", "
	"        \"integer\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"bytes\", "
	"    [ "
	"      [ "
	"        \"BYTES\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_bytes\", "
	"      \"struct arg_vmod_std_bytes\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BYTES\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"real\", "
	"        \"real\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"INT\", "
	"        \"integer\", "
	"        \"integer\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"integer\", "
	"    [ "
	"      [ "
	"        \"INT\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_integer\", "
	"      \"struct arg_vmod_std_integer\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"INT\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"bool\", "
	"        \"boolean\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BYTES\", "
	"        \"bytes\", "
	"        \"bytes\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"DURATION\", "
	"        \"duration\", "
	"        \"duration\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"real\", "
	"        \"real\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"TIME\", "
	"        \"time\", "
	"        \"time\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"ip\", "
	"    [ "
	"      [ "
	"        \"IP\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_ip\", "
	"      \"struct arg_vmod_std_ip\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\" "
	"      ], "
	"      [ "
	"        \"IP\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"resolve\", "
	"        \"resolve\", "
	"        \"1\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        \"p\", "
	"        \"p\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"real\", "
	"    [ "
	"      [ "
	"        \"REAL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_real\", "
	"      \"struct arg_vmod_std_real\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"INT\", "
	"        \"integer\", "
	"        \"integer\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BOOL\", "
	"        \"bool\", "
	"        \"boolean\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"BYTES\", "
	"        \"bytes\", "
	"        \"bytes\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"DURATION\", "
	"        \"duration\", "
	"        \"duration\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"TIME\", "
	"        \"time\", "
	"        \"time\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"time\", "
	"    [ "
	"      [ "
	"        \"TIME\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_time\", "
	"      \"struct arg_vmod_std_time\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"TIME\", "
	"        \"fallback\", "
	"        \"fallback\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"REAL\", "
	"        \"real\", "
	"        \"real\", "
	"        null, "
	"        null, "
	"        true "
	"      ], "
	"      [ "
	"        \"INT\", "
	"        \"integer\", "
	"        \"integer\", "
	"        null, "
	"        null, "
	"        true "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"strftime\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_strftime\", "
	"      \"\", "
	"      [ "
	"        \"TIME\", "
	"        \"time\", "
	"        \"time\" "
	"      ], "
	"      [ "
	"        \"STRING\", "
	"        \"format\", "
	"        \"format\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"log\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_log\", "
	"      \"\", "
	"      [ "
	"        \"STRANDS\", "
	"        \"s\", "
	"        \"s\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"syslog\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_syslog\", "
	"      \"\", "
	"      [ "
	"        \"INT\", "
	"        \"priority\", "
	"        \"priority\" "
	"      ], "
	"      [ "
	"        \"STRANDS\", "
	"        \"s\", "
	"        \"s\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"timestamp\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_timestamp\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        \"s\", "
	"        \"s\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"syntax\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_syntax\", "
	"      \"\", "
	"      [ "
	"        \"REAL\", "
	"        null, "
	"        \"arg1\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"getenv\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_getenv\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        \"name\", "
	"        \"name\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"cache_req_body\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_cache_req_body\", "
	"      \"\", "
	"      [ "
	"        \"BYTES\", "
	"        \"size\", "
	"        \"size\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$RESTRICT\", "
	"    [ "
	"      \"vcl_recv\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"late_100_continue\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_late_100_continue\", "
	"      \"\", "
	"      [ "
	"        \"BOOL\", "
	"        \"late\", "
	"        \"late\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$RESTRICT\", "
	"    [ "
	"      \"vcl_recv\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"set_ip_tos\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_set_ip_tos\", "
	"      \"\", "
	"      [ "
	"        \"INT\", "
	"        \"tos\", "
	"        \"tos\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$RESTRICT\", "
	"    [ "
	"      \"client\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"rollback\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_rollback\", "
	"      \"\", "
	"      [ "
	"        \"HTTP\", "
	"        \"h\", "
	"        \"h\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$RESTRICT\", "
	"    [ "
	"      \"backend\", "
	"      \"vcl_recv\", "
	"      \"vcl_pass\", "
	"      \"vcl_hash\", "
	"      \"vcl_purge\", "
	"      \"vcl_miss\", "
	"      \"vcl_hit\", "
	"      \"vcl_deliver\", "
	"      \"vcl_synth\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"ban\", "
	"    [ "
	"      [ "
	"        \"BOOL\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_ban\", "
	"      \"\", "
	"      [ "
	"        \"STRING\", "
	"        null, "
	"        \"arg1\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"ban_error\", "
	"    [ "
	"      [ "
	"        \"STRING\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_ban_error\", "
	"      \"\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"now\", "
	"    [ "
	"      [ "
	"        \"TIME\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_now\", "
	"      \"\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"timed_call\", "
	"    [ "
	"      [ "
	"        \"DURATION\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_timed_call\", "
	"      \"\", "
	"      [ "
	"        \"SUB\", "
	"        null, "
	"        \"arg1\" "
	"      ] "
	"    ] "
	"  ], "
	"  [ "
	"    \"$FUNC\", "
	"    \"rfc_ttl\", "
	"    [ "
	"      [ "
	"        \"VOID\" "
	"      ], "
	"      \"Vmod_vmod_std_Func.f_rfc_ttl\", "
	"      \"\" "
	"    ] "
	"  ], "
	"  [ "
	"    \"$RESTRICT\", "
	"    [ "
	"      \"vcl_backend_response\", "
	"      \"vcl_backend_refresh\" "
	"    ] "
	"  ] "
	"] "
	"\n\x03"
};
#undef STRINGIFY

static const char vmod_vcs[] v_used_(section(".vmod_vcs")) = "423648c4cb6b225b3268ffc337354ea938f5efee";
/*lint -esym(714, Vmod_std_Data) */
/*lint -esym(759, Vmod_std_Data) */
/*lint -esym(765, Vmod_std_Data) */

extern const struct vmod_data Vmod_std_Data;

const struct vmod_data Vmod_std_Data = {
	.vrt_major =	0,
	.vrt_minor =	0,
	.file_id =	"256a40f2e394c4010f53872302e599eff71473e5d2163a64dd9aaa02e487bffc",
	.name =		"std",
	.func_name =	"Vmod_vmod_std_Func",
	.func =		&Vmod_vmod_std_Func,
	.func_len =	sizeof(Vmod_vmod_std_Func),
	.json =		Vmod_Json,
	.abi =		VMOD_ABI_Version,
	.version =	"Vinyl Cache 9.0.1",
	.vcs =	vmod_vcs,
};
