class ScriptPayloadParserBuilder implements PayloadParserBuilderStrategy {
    @Override
    public PayloadParserType getType() {
        return PayloadParserType.SCRIPT;
    }

    @Override
    @SneakyThrows
    public Supplier<PayloadParser> buildLazy(ValueObject config) {<FILL_FUNCTION_BODY>}
}

        String script = config.getString("script")
                              .orElseThrow(() -> new IllegalArgumentException("script不能为空"));
        String lang = config.getString("lang")
                            .orElse("js");

        CompiledScript compiledScript = Scripts
            .getFactory(lang)
            .compile(Script.of("tcp-network-payload-parser", script));

        return () -> {
            PipePayloadParser parser = new PipePayloadParser();

            Map<String, Object> ctx = new HashMap<>();
            ctx.put("parser", parser);

            compiledScript.call(ctx);
            return parser;
        };
    
<no_super_class>