{"diffoscope-json-version": 1, "source1": "/input1", "source2": "/input2", "unified_diff": null, "details": [{"source1": "zipinfo {}", "source2": "zipinfo {}", "unified_diff": "@@ -1,28 +1,28 @@\n-Zip file size: 20751 bytes, number of entries: 26\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 META-INF/\n--rw-r--r--  2.0 unx      132 b- defN 24-Jan-30 05:30 META-INF/MANIFEST.MF\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 dev/\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 dev/langchain4j/\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 dev/langchain4j/model/\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 dev/langchain4j/model/vertexai/\n-drwxr-xr-x  2.0 unx        0 b- stor 24-Jan-30 05:30 dev/langchain4j/model/vertexai/spi/\n--rw-r--r--  2.0 unx      962 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/FinishReasonMapper$1.class\n--rw-r--r--  2.0 unx     1161 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/RoleMapper.class\n--rw-r--r--  2.0 unx     1168 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/FinishReasonMapper.class\n--rw-r--r--  2.0 unx     6976 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class\n--rw-r--r--  2.0 unx     6045 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/PartsMapper.class\n--rw-r--r--  2.0 unx      783 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/RoleMapper$1.class\n--rw-r--r--  2.0 unx      599 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class\n--rw-r--r--  2.0 unx      671 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class\n--rw-r--r--  2.0 unx     3129 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class\n--rw-r--r--  2.0 unx     7625 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class\n--rw-r--r--  2.0 unx     2656 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class\n--rw-r--r--  2.0 unx     2642 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class\n--rw-r--r--  2.0 unx     1115 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/TokenUsageMapper.class\n--rw-r--r--  2.0 unx     3208 b- defN 24-Jan-30 05:30 dev/langchain4j/model/vertexai/ContentsMapper.class\n-?rwsrwsrwt  2.0 unx        0 b- stor 24-Jan-30 05:30 META-INF/maven/\n-?rwsrwsrwt  2.0 unx        0 b- stor 24-Jan-30 05:30 META-INF/maven/dev.langchain4j/\n-?rwsrwsrwt  2.0 unx        0 b- stor 24-Jan-30 05:30 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/\n--rw-r--r--  2.0 unx     3126 b- defN 24-Jan-30 05:26 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml\n--rw-r--r--  2.0 unx      129 b- defN 24-Jan-30 05:30 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.properties\n-26 files, 42127 bytes uncompressed, 16147 bytes compressed:  61.7%\n+Zip file size: 20663 bytes, number of entries: 26\n+drwxr-xr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 META-INF/\n+-rw-r--r--  2.0 unx      129 b- defN 25-Jan-29 08:56 META-INF/MANIFEST.MF\n+drwxrwxr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 dev/\n+drwxrwxr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 dev/langchain4j/\n+drwxrwxr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 dev/langchain4j/model/\n+drwxrwxr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 dev/langchain4j/model/vertexai/\n+drwxrwxr-x  2.0 unx        0 b- stor 25-Jan-29 08:56 dev/langchain4j/model/vertexai/spi/\n+-rw-rw-r--  2.0 unx      959 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/FinishReasonMapper$1.class\n+-rw-rw-r--  2.0 unx     6806 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class\n+-rw-rw-r--  2.0 unx      780 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/RoleMapper$1.class\n+-rw-rw-r--  2.0 unx     1161 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/RoleMapper.class\n+-rw-rw-r--  2.0 unx      671 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class\n+-rw-rw-r--  2.0 unx      599 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class\n+-rw-rw-r--  2.0 unx     7461 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class\n+-rw-rw-r--  2.0 unx     6039 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/PartsMapper.class\n+-rw-rw-r--  2.0 unx     2642 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class\n+-rw-rw-r--  2.0 unx     3123 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class\n+-rw-rw-r--  2.0 unx     1168 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/FinishReasonMapper.class\n+-rw-rw-r--  2.0 unx     3208 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/ContentsMapper.class\n+-rw-rw-r--  2.0 unx     1115 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/TokenUsageMapper.class\n+-rw-rw-r--  2.0 unx     2656 b- defN 25-Jan-29 08:56 dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class\n+?rwsrwsrwt  2.0 unx        0 b- stor 25-Jan-29 08:56 META-INF/maven/\n+?rwsrwsrwt  2.0 unx        0 b- stor 25-Jan-29 08:56 META-INF/maven/dev.langchain4j/\n+?rwsrwsrwt  2.0 unx        0 b- stor 25-Jan-29 08:56 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/\n+-rw-rw-r--  2.0 unx     3117 b- defN 25-Jan-29 08:56 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml\n+-rw-rw-r--  2.0 unx      129 b- defN 25-Jan-29 08:56 META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.properties\n+26 files, 41763 bytes uncompressed, 16059 bytes compressed:  61.5%\n"}, {"source1": "zipnote \u00abTEMP\u00bb/diffoscope__jh052vn_mnt/tmphl6gwu2o_.zip", "source2": "zipnote \u00abTEMP\u00bb/diffoscope__jh052vn_mnt/tmphl6gwu2o_.zip", "unified_diff": "@@ -18,51 +18,51 @@\n \n Filename: dev/langchain4j/model/vertexai/spi/\n Comment: \n \n Filename: dev/langchain4j/model/vertexai/FinishReasonMapper$1.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/RoleMapper.class\n+Filename: dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/FinishReasonMapper.class\n+Filename: dev/langchain4j/model/vertexai/RoleMapper$1.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class\n+Filename: dev/langchain4j/model/vertexai/RoleMapper.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/PartsMapper.class\n+Filename: dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/RoleMapper$1.class\n+Filename: dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class\n+Filename: dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class\n+Filename: dev/langchain4j/model/vertexai/PartsMapper.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class\n+Filename: dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class\n+Filename: dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class\n+Filename: dev/langchain4j/model/vertexai/FinishReasonMapper.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class\n+Filename: dev/langchain4j/model/vertexai/ContentsMapper.class\n Comment: \n \n Filename: dev/langchain4j/model/vertexai/TokenUsageMapper.class\n Comment: \n \n-Filename: dev/langchain4j/model/vertexai/ContentsMapper.class\n+Filename: dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class\n Comment: \n \n Filename: META-INF/maven/\n Comment: \n \n Filename: META-INF/maven/dev.langchain4j/\n Comment: \n"}, {"source1": "zipdetails --redact --scan --utc {}", "source2": "zipdetails --redact --scan --utc {}", "unified_diff": "@@ -1,14 +1,14 @@\n \n 0000 LOCAL HEADER #1       04034B50 (67324752)\n 0004 Extract Zip Spec      0A (10) '1.0'\n 0005 Extract OS            00 (0) 'MS-DOS'\n 0006 General Purpose Flag  0000 (0)\n 0008 Compression Method    0000 (0) 'Stored'\n-000A Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n+000A Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n 000E CRC                   00000000 (0)\n 0012 Compressed Size       00000000 (0)\n 0016 Uncompressed Size     00000000 (0)\n 001A Filename Length       0009 (9)\n 001C Extra Length          0000 (0)\n 001E Filename              'XXXXXXXXX'\n #\n@@ -18,33 +18,33 @@\n \n 0027 LOCAL HEADER #2       04034B50 (67324752)\n 002B Extract Zip Spec      0A (10) '1.0'\n 002C Extract OS            00 (0) 'MS-DOS'\n 002D General Purpose Flag  0000 (0)\n      [Bits 1-2]            0 'Normal Compression'\n 002F Compression Method    0008 (8) 'Deflated'\n-0031 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-0035 CRC                   5779D1A3 (1467601315)\n+0031 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+0035 CRC                   FFABC81E (4289447966)\n 0039 Compressed Size       0000006C (108)\n-003D Uncompressed Size     00000084 (132)\n+003D Uncompressed Size     00000081 (129)\n 0041 Filename Length       0014 (20)\n 0043 Extra Length          0000 (0)\n 0045 Filename              'XXXXXXXXXXXXXXXXXXXX'\n #\n # WARNING: Offset 0x45: Filename 'XXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n 0059 PAYLOAD               XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n \n 00C5 LOCAL HEADER #3       04034B50 (67324752)\n 00C9 Extract Zip Spec      0A (10) '1.0'\n 00CA Extract OS            00 (0) 'MS-DOS'\n 00CB General Purpose Flag  0000 (0)\n 00CD Compression Method    0000 (0) 'Stored'\n-00CF Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n+00CF Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n 00D3 CRC                   00000000 (0)\n 00D7 Compressed Size       00000000 (0)\n 00DB Uncompressed Size     00000000 (0)\n 00DF Filename Length       0004 (4)\n 00E1 Extra Length          0000 (0)\n 00E3 Filename              'XXXX'\n #\n@@ -53,15 +53,15 @@\n #\n \n 00E7 LOCAL HEADER #4       04034B50 (67324752)\n 00EB Extract Zip Spec      0A (10) '1.0'\n 00EC Extract OS            00 (0) 'MS-DOS'\n 00ED General Purpose Flag  0000 (0)\n 00EF Compression Method    0000 (0) 'Stored'\n-00F1 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n+00F1 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n 00F5 CRC                   00000000 (0)\n 00F9 Compressed Size       00000000 (0)\n 00FD Uncompressed Size     00000000 (0)\n 0101 Filename Length       0010 (16)\n 0103 Extra Length          0000 (0)\n 0105 Filename              'XXXXXXXXXXXXXXXX'\n #\n@@ -70,15 +70,15 @@\n #\n \n 0115 LOCAL HEADER #5       04034B50 (67324752)\n 0119 Extract Zip Spec      0A (10) '1.0'\n 011A Extract OS            00 (0) 'MS-DOS'\n 011B General Purpose Flag  0000 (0)\n 011D Compression Method    0000 (0) 'Stored'\n-011F Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n+011F Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n 0123 CRC                   00000000 (0)\n 0127 Compressed Size       00000000 (0)\n 012B Uncompressed Size     00000000 (0)\n 012F Filename Length       0016 (22)\n 0131 Extra Length          0000 (0)\n 0133 Filename              'XXXXXXXXXXXXXXXXXXXXXX'\n #\n@@ -87,15 +87,15 @@\n #\n \n 0149 LOCAL HEADER #6       04034B50 (67324752)\n 014D Extract Zip Spec      0A (10) '1.0'\n 014E Extract OS            00 (0) 'MS-DOS'\n 014F General Purpose Flag  0000 (0)\n 0151 Compression Method    0000 (0) 'Stored'\n-0153 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n+0153 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n 0157 CRC                   00000000 (0)\n 015B Compressed Size       00000000 (0)\n 015F Uncompressed Size     00000000 (0)\n 0163 Filename Length       001F (31)\n 0165 Extra Length          0000 (0)\n 0167 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n@@ -104,15 +104,15 @@\n #\n \n 0186 LOCAL HEADER #7       04034B50 (67324752)\n 018A Extract Zip Spec      0A (10) '1.0'\n 018B Extract OS            00 (0) 'MS-DOS'\n 018C General Purpose Flag  0000 (0)\n 018E Compression Method    0000 (0) 'Stored'\n-0190 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n+0190 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n 0194 CRC                   00000000 (0)\n 0198 Compressed Size       00000000 (0)\n 019C Uncompressed Size     00000000 (0)\n 01A0 Filename Length       0023 (35)\n 01A2 Extra Length          0000 (0)\n 01A4 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n@@ -122,1143 +122,1143 @@\n \n 01C7 LOCAL HEADER #8       04034B50 (67324752)\n 01CB Extract Zip Spec      0A (10) '1.0'\n 01CC Extract OS            00 (0) 'MS-DOS'\n 01CD General Purpose Flag  0000 (0)\n      [Bits 1-2]            0 'Normal Compression'\n 01CF Compression Method    0008 (8) 'Deflated'\n-01D1 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-01D5 CRC                   00BC64EA (12346602)\n-01D9 Compressed Size       00000219 (537)\n-01DD Uncompressed Size     000003C2 (962)\n+01D1 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+01D5 CRC                   0CE36CE4 (216231140)\n+01D9 Compressed Size       0000021D (541)\n+01DD Uncompressed Size     000003BF (959)\n 01E1 Filename Length       0039 (57)\n 01E3 Extra Length          0000 (0)\n 01E5 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n # WARNING: Offset 0x1E5: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n 021E PAYLOAD\n \n-0437 LOCAL HEADER #9       04034B50 (67324752)\n-043B Extract Zip Spec      0A (10) '1.0'\n-043C Extract OS            00 (0) 'MS-DOS'\n-043D General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-043F Compression Method    0008 (8) 'Deflated'\n-0441 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-0445 CRC                   225743FA (576144378)\n-0449 Compressed Size       0000025F (607)\n-044D Uncompressed Size     00000489 (1161)\n-0451 Filename Length       002F (47)\n-0453 Extra Length          0000 (0)\n-0455 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x455: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-0484 PAYLOAD\n-\n-06E3 LOCAL HEADER #10      04034B50 (67324752)\n-06E7 Extract Zip Spec      0A (10) '1.0'\n-06E8 Extract OS            00 (0) 'MS-DOS'\n-06E9 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-06EB Compression Method    0008 (8) 'Deflated'\n-06ED Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-06F1 CRC                   FDBDE50E (4257080590)\n-06F5 Compressed Size       00000233 (563)\n-06F9 Uncompressed Size     00000490 (1168)\n-06FD Filename Length       0037 (55)\n-06FF Extra Length          0000 (0)\n-0701 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x701: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-0738 PAYLOAD\n-\n-096B LOCAL HEADER #11      04034B50 (67324752)\n-096F Extract Zip Spec      0A (10) '1.0'\n-0970 Extract OS            00 (0) 'MS-DOS'\n-0971 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-0973 Compression Method    0008 (8) 'Deflated'\n-0975 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-0979 CRC                   703AE577 (1882908023)\n-097D Compressed Size       000009EB (2539)\n-0981 Uncompressed Size     00001B40 (6976)\n-0985 Filename Length       0045 (69)\n-0987 Extra Length          0000 (0)\n-0989 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x989: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-09CE PAYLOAD\n-\n-13B9 LOCAL HEADER #12      04034B50 (67324752)\n-13BD Extract Zip Spec      0A (10) '1.0'\n-13BE Extract OS            00 (0) 'MS-DOS'\n-13BF General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-13C1 Compression Method    0008 (8) 'Deflated'\n-13C3 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-13C7 CRC                   C4552B1C (3293915932)\n-13CB Compressed Size       00000A2A (2602)\n-13CF Uncompressed Size     0000179D (6045)\n-13D3 Filename Length       0030 (48)\n-13D5 Extra Length          0000 (0)\n-13D7 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x13D7: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-1407 PAYLOAD\n-\n-1E31 LOCAL HEADER #13      04034B50 (67324752)\n-1E35 Extract Zip Spec      0A (10) '1.0'\n-1E36 Extract OS            00 (0) 'MS-DOS'\n-1E37 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-1E39 Compression Method    0008 (8) 'Deflated'\n-1E3B Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-1E3F CRC                   84DC8C8B (2229046411)\n-1E43 Compressed Size       000001DA (474)\n-1E47 Uncompressed Size     0000030F (783)\n-1E4B Filename Length       0031 (49)\n-1E4D Extra Length          0000 (0)\n-1E4F Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x1E4F: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-1E80 PAYLOAD\n-\n-205A LOCAL HEADER #14      04034B50 (67324752)\n-205E Extract Zip Spec      0A (10) '1.0'\n-205F Extract OS            00 (0) 'MS-DOS'\n-2060 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-2062 Compression Method    0008 (8) 'Deflated'\n-2064 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-2068 CRC                   7D72ECB2 (2104683698)\n-206C Compressed Size       000000FE (254)\n-2070 Uncompressed Size     00000257 (599)\n-2074 Filename Length       004E (78)\n-2076 Extra Length          0000 (0)\n-2078 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x2078: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-20C6 PAYLOAD               XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n-                           XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n-\n-21C4 LOCAL HEADER #15      04034B50 (67324752)\n-21C8 Extract Zip Spec      0A (10) '1.0'\n-21C9 Extract OS            00 (0) 'MS-DOS'\n-21CA General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-21CC Compression Method    0008 (8) 'Deflated'\n-21CE Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-21D2 CRC                   3467BDF1 (879214065)\n-21D6 Compressed Size       00000102 (258)\n-21DA Uncompressed Size     0000029F (671)\n-21DE Filename Length       0057 (87)\n-21E0 Extra Length          0000 (0)\n-21E2 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x21E2: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-2239 PAYLOAD\n-\n-233B LOCAL HEADER #16      04034B50 (67324752)\n-233F Extract Zip Spec      0A (10) '1.0'\n-2340 Extract OS            00 (0) 'MS-DOS'\n-2341 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-2343 Compression Method    0008 (8) 'Deflated'\n-2345 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-2349 CRC                   E4AF4B93 (3836693395)\n-234D Compressed Size       00000476 (1142)\n-2351 Uncompressed Size     00000C39 (3129)\n-2355 Filename Length       0041 (65)\n-2357 Extra Length          0000 (0)\n-2359 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x2359: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-239A PAYLOAD\n-\n-2810 LOCAL HEADER #17      04034B50 (67324752)\n-2814 Extract Zip Spec      0A (10) '1.0'\n-2815 Extract OS            00 (0) 'MS-DOS'\n-2816 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-2818 Compression Method    0008 (8) 'Deflated'\n-281A Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-281E CRC                   FAC23816 (4207032342)\n-2822 Compressed Size       00000A5B (2651)\n-2826 Uncompressed Size     00001DC9 (7625)\n-282A Filename Length       003C (60)\n-282C Extra Length          0000 (0)\n-282E Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x282E: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-286A PAYLOAD\n-\n-32C5 LOCAL HEADER #18      04034B50 (67324752)\n-32C9 Extract Zip Spec      0A (10) '1.0'\n-32CA Extract OS            00 (0) 'MS-DOS'\n-32CB General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-32CD Compression Method    0008 (8) 'Deflated'\n-32CF Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-32D3 CRC                   AC63F368 (2892231528)\n-32D7 Compressed Size       0000036A (874)\n-32DB Uncompressed Size     00000A60 (2656)\n-32DF Filename Length       005B (91)\n-32E1 Extra Length          0000 (0)\n-32E3 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x32E3: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-333E PAYLOAD\n-\n-36A8 LOCAL HEADER #19      04034B50 (67324752)\n-36AC Extract Zip Spec      0A (10) '1.0'\n-36AD Extract OS            00 (0) 'MS-DOS'\n-36AE General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-36B0 Compression Method    0008 (8) 'Deflated'\n-36B2 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-36B6 CRC                   75E7B253 (1978118739)\n-36BA Compressed Size       00000349 (841)\n-36BE Uncompressed Size     00000A52 (2642)\n-36C2 Filename Length       006D (109)\n-36C4 Extra Length          0000 (0)\n-36C6 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x36C6: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-3733 PAYLOAD\n-\n-3A7C LOCAL HEADER #20      04034B50 (67324752)\n-3A80 Extract Zip Spec      0A (10) '1.0'\n-3A81 Extract OS            00 (0) 'MS-DOS'\n-3A82 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-3A84 Compression Method    0008 (8) 'Deflated'\n-3A86 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-3A8A CRC                   28C91432 (684266546)\n-3A8E Compressed Size       00000206 (518)\n-3A92 Uncompressed Size     0000045B (1115)\n-3A96 Filename Length       0035 (53)\n-3A98 Extra Length          0000 (0)\n-3A9A Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x3A9A: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-3ACF PAYLOAD\n-\n-3CD5 LOCAL HEADER #21      04034B50 (67324752)\n-3CD9 Extract Zip Spec      0A (10) '1.0'\n-3CDA Extract OS            00 (0) 'MS-DOS'\n-3CDB General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-3CDD Compression Method    0008 (8) 'Deflated'\n-3CDF Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-3CE3 CRC                   24E9B92B (619297067)\n-3CE7 Compressed Size       000004D5 (1237)\n-3CEB Uncompressed Size     00000C88 (3208)\n-3CEF Filename Length       0033 (51)\n-3CF1 Extra Length          0000 (0)\n-3CF3 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x3CF3: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-3D26 PAYLOAD\n-\n-41FB LOCAL HEADER #22      04034B50 (67324752)\n-41FF Extract Zip Spec      0A (10) '1.0'\n-4200 Extract OS            00 (0) 'MS-DOS'\n-4201 General Purpose Flag  0000 (0)\n-4203 Compression Method    0000 (0) 'Stored'\n-4205 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4209 CRC                   00000000 (0)\n-420D Compressed Size       00000000 (0)\n-4211 Uncompressed Size     00000000 (0)\n-4215 Filename Length       000F (15)\n-4217 Extra Length          0000 (0)\n-4219 Filename              'XXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x4219: Filename 'XXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-\n-4228 LOCAL HEADER #23      04034B50 (67324752)\n-422C Extract Zip Spec      0A (10) '1.0'\n-422D Extract OS            00 (0) 'MS-DOS'\n-422E General Purpose Flag  0000 (0)\n-4230 Compression Method    0000 (0) 'Stored'\n-4232 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4236 CRC                   00000000 (0)\n-423A Compressed Size       00000000 (0)\n-423E Uncompressed Size     00000000 (0)\n-4242 Filename Length       001F (31)\n-4244 Extra Length          0000 (0)\n-4246 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x4246: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-\n-4265 LOCAL HEADER #24      04034B50 (67324752)\n-4269 Extract Zip Spec      0A (10) '1.0'\n-426A Extract OS            00 (0) 'MS-DOS'\n-426B General Purpose Flag  0000 (0)\n-426D Compression Method    0000 (0) 'Stored'\n-426F Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4273 CRC                   00000000 (0)\n-4277 Compressed Size       00000000 (0)\n-427B Uncompressed Size     00000000 (0)\n-427F Filename Length       003C (60)\n-4281 Extra Length          0000 (0)\n-4283 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x4283: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-\n-42BF LOCAL HEADER #25      04034B50 (67324752)\n-42C3 Extract Zip Spec      0A (10) '1.0'\n-42C4 Extract OS            00 (0) 'MS-DOS'\n-42C5 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-42C7 Compression Method    0008 (8) 'Deflated'\n-42C9 Modification Time     583E2B59 (1480469337) 'Tue Jan 30 05:26:50 2024'\n-42CD CRC                   81635872 (2170771570)\n-42D1 Compressed Size       00000338 (824)\n-42D5 Uncompressed Size     00000C36 (3126)\n-42D9 Filename Length       0043 (67)\n-42DB Extra Length          0000 (0)\n-42DD Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x42DD: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-4320 PAYLOAD\n-\n-4658 LOCAL HEADER #26      04034B50 (67324752)\n-465C Extract Zip Spec      0A (10) '1.0'\n-465D Extract OS            00 (0) 'MS-DOS'\n-465E General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4660 Compression Method    0008 (8) 'Deflated'\n-4662 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4666 CRC                   BCC981B4 (3167322548)\n-466A Compressed Size       00000076 (118)\n-466E Uncompressed Size     00000081 (129)\n-4672 Filename Length       004A (74)\n-4674 Extra Length          0000 (0)\n-4676 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#\n-# WARNING: Offset 0x4676: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n-#          Zero length filename\n-#\n-46C0 PAYLOAD               XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n-\n-4736 CENTRAL HEADER #1     02014B50 (33639248)\n-473A Created Zip Spec      14 (20) '2.0'\n-473B Created OS            03 (3) 'Unix'\n-473C Extract Zip Spec      0A (10) '1.0'\n-473D Extract OS            00 (0) 'MS-DOS'\n-473E General Purpose Flag  0000 (0)\n-4740 Compression Method    0000 (0) 'Stored'\n-4742 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4746 CRC                   00000000 (0)\n-474A Compressed Size       00000000 (0)\n-474E Uncompressed Size     00000000 (0)\n-4752 Filename Length       0009 (9)\n-4754 Extra Length          0000 (0)\n-4756 Comment Length        0000 (0)\n-4758 Disk Start            0000 (0)\n-475A Int File Attributes   0000 (0)\n+043B LOCAL HEADER #9       04034B50 (67324752)\n+043F Extract Zip Spec      0A (10) '1.0'\n+0440 Extract OS            00 (0) 'MS-DOS'\n+0441 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+0443 Compression Method    0008 (8) 'Deflated'\n+0445 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+0449 CRC                   2ABFFD7E (717225342)\n+044D Compressed Size       000009B1 (2481)\n+0451 Uncompressed Size     00001A96 (6806)\n+0455 Filename Length       0045 (69)\n+0457 Extra Length          0000 (0)\n+0459 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x459: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+049E PAYLOAD\n+\n+0E4F LOCAL HEADER #10      04034B50 (67324752)\n+0E53 Extract Zip Spec      0A (10) '1.0'\n+0E54 Extract OS            00 (0) 'MS-DOS'\n+0E55 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+0E57 Compression Method    0008 (8) 'Deflated'\n+0E59 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+0E5D CRC                   AAE861B2 (2867356082)\n+0E61 Compressed Size       000001D7 (471)\n+0E65 Uncompressed Size     0000030C (780)\n+0E69 Filename Length       0031 (49)\n+0E6B Extra Length          0000 (0)\n+0E6D Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0xE6D: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+0E9E PAYLOAD\n+\n+1075 LOCAL HEADER #11      04034B50 (67324752)\n+1079 Extract Zip Spec      0A (10) '1.0'\n+107A Extract OS            00 (0) 'MS-DOS'\n+107B General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+107D Compression Method    0008 (8) 'Deflated'\n+107F Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+1083 CRC                   C10AB7D3 (3238705107)\n+1087 Compressed Size       00000261 (609)\n+108B Uncompressed Size     00000489 (1161)\n+108F Filename Length       002F (47)\n+1091 Extra Length          0000 (0)\n+1093 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x1093: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+10C2 PAYLOAD\n+\n+1323 LOCAL HEADER #12      04034B50 (67324752)\n+1327 Extract Zip Spec      0A (10) '1.0'\n+1328 Extract OS            00 (0) 'MS-DOS'\n+1329 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+132B Compression Method    0008 (8) 'Deflated'\n+132D Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+1331 CRC                   E726BE19 (3878075929)\n+1335 Compressed Size       00000104 (260)\n+1339 Uncompressed Size     0000029F (671)\n+133D Filename Length       0057 (87)\n+133F Extra Length          0000 (0)\n+1341 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x1341: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+1398 PAYLOAD\n+\n+149C LOCAL HEADER #13      04034B50 (67324752)\n+14A0 Extract Zip Spec      0A (10) '1.0'\n+14A1 Extract OS            00 (0) 'MS-DOS'\n+14A2 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+14A4 Compression Method    0008 (8) 'Deflated'\n+14A6 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+14AA CRC                   B1104081 (2970632321)\n+14AE Compressed Size       000000FF (255)\n+14B2 Uncompressed Size     00000257 (599)\n+14B6 Filename Length       004E (78)\n+14B8 Extra Length          0000 (0)\n+14BA Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x14BA: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+1508 PAYLOAD               XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n+                           XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n+\n+1607 LOCAL HEADER #14      04034B50 (67324752)\n+160B Extract Zip Spec      0A (10) '1.0'\n+160C Extract OS            00 (0) 'MS-DOS'\n+160D General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+160F Compression Method    0008 (8) 'Deflated'\n+1611 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+1615 CRC                   01E44F98 (31739800)\n+1619 Compressed Size       00000A26 (2598)\n+161D Uncompressed Size     00001D25 (7461)\n+1621 Filename Length       003C (60)\n+1623 Extra Length          0000 (0)\n+1625 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x1625: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+1661 PAYLOAD\n+\n+2087 LOCAL HEADER #15      04034B50 (67324752)\n+208B Extract Zip Spec      0A (10) '1.0'\n+208C Extract OS            00 (0) 'MS-DOS'\n+208D General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+208F Compression Method    0008 (8) 'Deflated'\n+2091 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+2095 CRC                   25969D07 (630627591)\n+2099 Compressed Size       00000A2D (2605)\n+209D Uncompressed Size     00001797 (6039)\n+20A1 Filename Length       0030 (48)\n+20A3 Extra Length          0000 (0)\n+20A5 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x20A5: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+20D5 PAYLOAD\n+\n+2B02 LOCAL HEADER #16      04034B50 (67324752)\n+2B06 Extract Zip Spec      0A (10) '1.0'\n+2B07 Extract OS            00 (0) 'MS-DOS'\n+2B08 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+2B0A Compression Method    0008 (8) 'Deflated'\n+2B0C Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+2B10 CRC                   0D3B0B2E (221973294)\n+2B14 Compressed Size       00000349 (841)\n+2B18 Uncompressed Size     00000A52 (2642)\n+2B1C Filename Length       006D (109)\n+2B1E Extra Length          0000 (0)\n+2B20 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x2B20: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+2B8D PAYLOAD\n+\n+2ED6 LOCAL HEADER #17      04034B50 (67324752)\n+2EDA Extract Zip Spec      0A (10) '1.0'\n+2EDB Extract OS            00 (0) 'MS-DOS'\n+2EDC General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+2EDE Compression Method    0008 (8) 'Deflated'\n+2EE0 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+2EE4 CRC                   C587F7B7 (3314022327)\n+2EE8 Compressed Size       0000047A (1146)\n+2EEC Uncompressed Size     00000C33 (3123)\n+2EF0 Filename Length       0041 (65)\n+2EF2 Extra Length          0000 (0)\n+2EF4 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x2EF4: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+2F35 PAYLOAD\n+\n+33AF LOCAL HEADER #18      04034B50 (67324752)\n+33B3 Extract Zip Spec      0A (10) '1.0'\n+33B4 Extract OS            00 (0) 'MS-DOS'\n+33B5 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+33B7 Compression Method    0008 (8) 'Deflated'\n+33B9 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+33BD CRC                   E41F637E (3827262334)\n+33C1 Compressed Size       00000238 (568)\n+33C5 Uncompressed Size     00000490 (1168)\n+33C9 Filename Length       0037 (55)\n+33CB Extra Length          0000 (0)\n+33CD Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x33CD: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+3404 PAYLOAD\n+\n+363C LOCAL HEADER #19      04034B50 (67324752)\n+3640 Extract Zip Spec      0A (10) '1.0'\n+3641 Extract OS            00 (0) 'MS-DOS'\n+3642 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+3644 Compression Method    0008 (8) 'Deflated'\n+3646 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+364A CRC                   C2494E95 (3259584149)\n+364E Compressed Size       000004D2 (1234)\n+3652 Uncompressed Size     00000C88 (3208)\n+3656 Filename Length       0033 (51)\n+3658 Extra Length          0000 (0)\n+365A Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x365A: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+368D PAYLOAD\n+\n+3B5F LOCAL HEADER #20      04034B50 (67324752)\n+3B63 Extract Zip Spec      0A (10) '1.0'\n+3B64 Extract OS            00 (0) 'MS-DOS'\n+3B65 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+3B67 Compression Method    0008 (8) 'Deflated'\n+3B69 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+3B6D CRC                   6418A2C1 (1679336129)\n+3B71 Compressed Size       00000209 (521)\n+3B75 Uncompressed Size     0000045B (1115)\n+3B79 Filename Length       0035 (53)\n+3B7B Extra Length          0000 (0)\n+3B7D Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x3B7D: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+3BB2 PAYLOAD\n+\n+3DBB LOCAL HEADER #21      04034B50 (67324752)\n+3DBF Extract Zip Spec      0A (10) '1.0'\n+3DC0 Extract OS            00 (0) 'MS-DOS'\n+3DC1 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+3DC3 Compression Method    0008 (8) 'Deflated'\n+3DC5 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+3DC9 CRC                   241FCCC5 (606063813)\n+3DCD Compressed Size       00000374 (884)\n+3DD1 Uncompressed Size     00000A60 (2656)\n+3DD5 Filename Length       005B (91)\n+3DD7 Extra Length          0000 (0)\n+3DD9 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x3DD9: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+3E34 PAYLOAD\n+\n+41A8 LOCAL HEADER #22      04034B50 (67324752)\n+41AC Extract Zip Spec      0A (10) '1.0'\n+41AD Extract OS            00 (0) 'MS-DOS'\n+41AE General Purpose Flag  0000 (0)\n+41B0 Compression Method    0000 (0) 'Stored'\n+41B2 Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+41B6 CRC                   00000000 (0)\n+41BA Compressed Size       00000000 (0)\n+41BE Uncompressed Size     00000000 (0)\n+41C2 Filename Length       000F (15)\n+41C4 Extra Length          0000 (0)\n+41C6 Filename              'XXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x41C6: Filename 'XXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+\n+41D5 LOCAL HEADER #23      04034B50 (67324752)\n+41D9 Extract Zip Spec      0A (10) '1.0'\n+41DA Extract OS            00 (0) 'MS-DOS'\n+41DB General Purpose Flag  0000 (0)\n+41DD Compression Method    0000 (0) 'Stored'\n+41DF Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+41E3 CRC                   00000000 (0)\n+41E7 Compressed Size       00000000 (0)\n+41EB Uncompressed Size     00000000 (0)\n+41EF Filename Length       001F (31)\n+41F1 Extra Length          0000 (0)\n+41F3 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x41F3: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+\n+4212 LOCAL HEADER #24      04034B50 (67324752)\n+4216 Extract Zip Spec      0A (10) '1.0'\n+4217 Extract OS            00 (0) 'MS-DOS'\n+4218 General Purpose Flag  0000 (0)\n+421A Compression Method    0000 (0) 'Stored'\n+421C Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+4220 CRC                   00000000 (0)\n+4224 Compressed Size       00000000 (0)\n+4228 Uncompressed Size     00000000 (0)\n+422C Filename Length       003C (60)\n+422E Extra Length          0000 (0)\n+4230 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x4230: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+\n+426C LOCAL HEADER #25      04034B50 (67324752)\n+4270 Extract Zip Spec      0A (10) '1.0'\n+4271 Extract OS            00 (0) 'MS-DOS'\n+4272 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4274 Compression Method    0008 (8) 'Deflated'\n+4276 Modification Time     5A3D470B (1513965323) 'Wed Jan 29 08:56:22 2025'\n+427A CRC                   3C99DEF2 (1016717042)\n+427E Compressed Size       00000335 (821)\n+4282 Uncompressed Size     00000C2D (3117)\n+4286 Filename Length       0043 (67)\n+4288 Extra Length          0000 (0)\n+428A Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x428A: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+42CD PAYLOAD\n+\n+4602 LOCAL HEADER #26      04034B50 (67324752)\n+4606 Extract Zip Spec      0A (10) '1.0'\n+4607 Extract OS            00 (0) 'MS-DOS'\n+4608 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+460A Compression Method    0008 (8) 'Deflated'\n+460C Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+4610 CRC                   C786CB6D (3347499885)\n+4614 Compressed Size       00000074 (116)\n+4618 Uncompressed Size     00000081 (129)\n+461C Filename Length       004A (74)\n+461E Extra Length          0000 (0)\n+4620 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#\n+# WARNING: Offset 0x4620: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+#          Zero length filename\n+#\n+466A PAYLOAD               XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n+\n+46DE CENTRAL HEADER #1     02014B50 (33639248)\n+46E2 Created Zip Spec      14 (20) '2.0'\n+46E3 Created OS            03 (3) 'Unix'\n+46E4 Extract Zip Spec      0A (10) '1.0'\n+46E5 Extract OS            00 (0) 'MS-DOS'\n+46E6 General Purpose Flag  0000 (0)\n+46E8 Compression Method    0000 (0) 'Stored'\n+46EA Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+46EE CRC                   00000000 (0)\n+46F2 Compressed Size       00000000 (0)\n+46F6 Uncompressed Size     00000000 (0)\n+46FA Filename Length       0009 (9)\n+46FC Extra Length          0000 (0)\n+46FE Comment Length        0000 (0)\n+4700 Disk Start            0000 (0)\n+4702 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-475C Ext File Attributes   41ED0010 (1106051088)\n+4704 Ext File Attributes   41ED0010 (1106051088)\n      [Bit 4]               Directory\n      [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-4760 Local Header Offset   00000000 (0)\n-4764 Filename              'XXXXXXXXX'\n+4708 Local Header Offset   00000000 (0)\n+470C Filename              'XXXXXXXXX'\n #\n-# WARNING: Offset 0x4764: Filename 'XXXXXXXXX'\n+# WARNING: Offset 0x470C: Filename 'XXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x4764: Directory 'XXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x470C: Directory 'XXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x473C: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXX'\n+# WARNING: Offset 0x46E4: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXX'\n #\n \n-476D CENTRAL HEADER #2     02014B50 (33639248)\n-4771 Created Zip Spec      14 (20) '2.0'\n-4772 Created OS            03 (3) 'Unix'\n-4773 Extract Zip Spec      0A (10) '1.0'\n-4774 Extract OS            00 (0) 'MS-DOS'\n-4775 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4777 Compression Method    0008 (8) 'Deflated'\n-4779 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-477D CRC                   5779D1A3 (1467601315)\n-4781 Compressed Size       0000006C (108)\n-4785 Uncompressed Size     00000084 (132)\n-4789 Filename Length       0014 (20)\n-478B Extra Length          0000 (0)\n-478D Comment Length        0000 (0)\n-478F Disk Start            0000 (0)\n-4791 Int File Attributes   0000 (0)\n+4715 CENTRAL HEADER #2     02014B50 (33639248)\n+4719 Created Zip Spec      14 (20) '2.0'\n+471A Created OS            03 (3) 'Unix'\n+471B Extract Zip Spec      0A (10) '1.0'\n+471C Extract OS            00 (0) 'MS-DOS'\n+471D General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+471F Compression Method    0008 (8) 'Deflated'\n+4721 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4725 CRC                   FFABC81E (4289447966)\n+4729 Compressed Size       0000006C (108)\n+472D Uncompressed Size     00000081 (129)\n+4731 Filename Length       0014 (20)\n+4733 Extra Length          0000 (0)\n+4735 Comment Length        0000 (0)\n+4737 Disk Start            0000 (0)\n+4739 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4793 Ext File Attributes   81A40000 (2175008768)\n+473B Ext File Attributes   81A40000 (2175008768)\n      [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4797 Local Header Offset   00000027 (39)\n-479B Filename              'XXXXXXXXXXXXXXXXXXXX'\n+473F Local Header Offset   00000027 (39)\n+4743 Filename              'XXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x479B: Filename 'XXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4743: Filename 'XXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-47AF CENTRAL HEADER #3     02014B50 (33639248)\n-47B3 Created Zip Spec      14 (20) '2.0'\n-47B4 Created OS            03 (3) 'Unix'\n-47B5 Extract Zip Spec      0A (10) '1.0'\n-47B6 Extract OS            00 (0) 'MS-DOS'\n-47B7 General Purpose Flag  0000 (0)\n-47B9 Compression Method    0000 (0) 'Stored'\n-47BB Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-47BF CRC                   00000000 (0)\n-47C3 Compressed Size       00000000 (0)\n-47C7 Uncompressed Size     00000000 (0)\n-47CB Filename Length       0004 (4)\n-47CD Extra Length          0000 (0)\n-47CF Comment Length        0000 (0)\n-47D1 Disk Start            0000 (0)\n-47D3 Int File Attributes   0000 (0)\n+4757 CENTRAL HEADER #3     02014B50 (33639248)\n+475B Created Zip Spec      14 (20) '2.0'\n+475C Created OS            03 (3) 'Unix'\n+475D Extract Zip Spec      0A (10) '1.0'\n+475E Extract OS            00 (0) 'MS-DOS'\n+475F General Purpose Flag  0000 (0)\n+4761 Compression Method    0000 (0) 'Stored'\n+4763 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4767 CRC                   00000000 (0)\n+476B Compressed Size       00000000 (0)\n+476F Uncompressed Size     00000000 (0)\n+4773 Filename Length       0004 (4)\n+4775 Extra Length          0000 (0)\n+4777 Comment Length        0000 (0)\n+4779 Disk Start            0000 (0)\n+477B Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-47D5 Ext File Attributes   41ED0010 (1106051088)\n+477D Ext File Attributes   41FD0010 (1107099664)\n      [Bit 4]               Directory\n-     [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n+     [Bits 16-24]          01FD (509) 'Unix attrib: rwxrwxr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-47D9 Local Header Offset   000000C5 (197)\n-47DD Filename              'XXXX'\n+4781 Local Header Offset   000000C5 (197)\n+4785 Filename              'XXXX'\n #\n-# WARNING: Offset 0x47DD: Filename 'XXXX'\n+# WARNING: Offset 0x4785: Filename 'XXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x47DD: Directory 'XXXX' must end in a '/'\n+# ERROR: Offset 0x4785: Directory 'XXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x47B5: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXX'\n+# WARNING: Offset 0x475D: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXX'\n #\n \n-47E1 CENTRAL HEADER #4     02014B50 (33639248)\n-47E5 Created Zip Spec      14 (20) '2.0'\n-47E6 Created OS            03 (3) 'Unix'\n-47E7 Extract Zip Spec      0A (10) '1.0'\n-47E8 Extract OS            00 (0) 'MS-DOS'\n-47E9 General Purpose Flag  0000 (0)\n-47EB Compression Method    0000 (0) 'Stored'\n-47ED Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-47F1 CRC                   00000000 (0)\n-47F5 Compressed Size       00000000 (0)\n-47F9 Uncompressed Size     00000000 (0)\n-47FD Filename Length       0010 (16)\n-47FF Extra Length          0000 (0)\n-4801 Comment Length        0000 (0)\n-4803 Disk Start            0000 (0)\n-4805 Int File Attributes   0000 (0)\n+4789 CENTRAL HEADER #4     02014B50 (33639248)\n+478D Created Zip Spec      14 (20) '2.0'\n+478E Created OS            03 (3) 'Unix'\n+478F Extract Zip Spec      0A (10) '1.0'\n+4790 Extract OS            00 (0) 'MS-DOS'\n+4791 General Purpose Flag  0000 (0)\n+4793 Compression Method    0000 (0) 'Stored'\n+4795 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4799 CRC                   00000000 (0)\n+479D Compressed Size       00000000 (0)\n+47A1 Uncompressed Size     00000000 (0)\n+47A5 Filename Length       0010 (16)\n+47A7 Extra Length          0000 (0)\n+47A9 Comment Length        0000 (0)\n+47AB Disk Start            0000 (0)\n+47AD Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4807 Ext File Attributes   41ED0010 (1106051088)\n+47AF Ext File Attributes   41FD0010 (1107099664)\n      [Bit 4]               Directory\n-     [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n+     [Bits 16-24]          01FD (509) 'Unix attrib: rwxrwxr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-480B Local Header Offset   000000E7 (231)\n-480F Filename              'XXXXXXXXXXXXXXXX'\n+47B3 Local Header Offset   000000E7 (231)\n+47B7 Filename              'XXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x480F: Filename 'XXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x47B7: Filename 'XXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x480F: Directory 'XXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x47B7: Directory 'XXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x47E7: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x478F: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXX'\n #\n \n-481F CENTRAL HEADER #5     02014B50 (33639248)\n-4823 Created Zip Spec      14 (20) '2.0'\n-4824 Created OS            03 (3) 'Unix'\n-4825 Extract Zip Spec      0A (10) '1.0'\n-4826 Extract OS            00 (0) 'MS-DOS'\n-4827 General Purpose Flag  0000 (0)\n-4829 Compression Method    0000 (0) 'Stored'\n-482B Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-482F CRC                   00000000 (0)\n-4833 Compressed Size       00000000 (0)\n-4837 Uncompressed Size     00000000 (0)\n-483B Filename Length       0016 (22)\n-483D Extra Length          0000 (0)\n-483F Comment Length        0000 (0)\n-4841 Disk Start            0000 (0)\n-4843 Int File Attributes   0000 (0)\n+47C7 CENTRAL HEADER #5     02014B50 (33639248)\n+47CB Created Zip Spec      14 (20) '2.0'\n+47CC Created OS            03 (3) 'Unix'\n+47CD Extract Zip Spec      0A (10) '1.0'\n+47CE Extract OS            00 (0) 'MS-DOS'\n+47CF General Purpose Flag  0000 (0)\n+47D1 Compression Method    0000 (0) 'Stored'\n+47D3 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+47D7 CRC                   00000000 (0)\n+47DB Compressed Size       00000000 (0)\n+47DF Uncompressed Size     00000000 (0)\n+47E3 Filename Length       0016 (22)\n+47E5 Extra Length          0000 (0)\n+47E7 Comment Length        0000 (0)\n+47E9 Disk Start            0000 (0)\n+47EB Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4845 Ext File Attributes   41ED0010 (1106051088)\n+47ED Ext File Attributes   41FD0010 (1107099664)\n      [Bit 4]               Directory\n-     [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n+     [Bits 16-24]          01FD (509) 'Unix attrib: rwxrwxr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-4849 Local Header Offset   00000115 (277)\n-484D Filename              'XXXXXXXXXXXXXXXXXXXXXX'\n+47F1 Local Header Offset   00000115 (277)\n+47F5 Filename              'XXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x484D: Filename 'XXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x47F5: Filename 'XXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x484D: Directory 'XXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x47F5: Directory 'XXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x4825: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x47CD: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXX'\n #\n \n-4863 CENTRAL HEADER #6     02014B50 (33639248)\n-4867 Created Zip Spec      14 (20) '2.0'\n-4868 Created OS            03 (3) 'Unix'\n-4869 Extract Zip Spec      0A (10) '1.0'\n-486A Extract OS            00 (0) 'MS-DOS'\n-486B General Purpose Flag  0000 (0)\n-486D Compression Method    0000 (0) 'Stored'\n-486F Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4873 CRC                   00000000 (0)\n-4877 Compressed Size       00000000 (0)\n-487B Uncompressed Size     00000000 (0)\n-487F Filename Length       001F (31)\n-4881 Extra Length          0000 (0)\n-4883 Comment Length        0000 (0)\n-4885 Disk Start            0000 (0)\n-4887 Int File Attributes   0000 (0)\n+480B CENTRAL HEADER #6     02014B50 (33639248)\n+480F Created Zip Spec      14 (20) '2.0'\n+4810 Created OS            03 (3) 'Unix'\n+4811 Extract Zip Spec      0A (10) '1.0'\n+4812 Extract OS            00 (0) 'MS-DOS'\n+4813 General Purpose Flag  0000 (0)\n+4815 Compression Method    0000 (0) 'Stored'\n+4817 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+481B CRC                   00000000 (0)\n+481F Compressed Size       00000000 (0)\n+4823 Uncompressed Size     00000000 (0)\n+4827 Filename Length       001F (31)\n+4829 Extra Length          0000 (0)\n+482B Comment Length        0000 (0)\n+482D Disk Start            0000 (0)\n+482F Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4889 Ext File Attributes   41ED0010 (1106051088)\n+4831 Ext File Attributes   41FD0010 (1107099664)\n      [Bit 4]               Directory\n-     [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n+     [Bits 16-24]          01FD (509) 'Unix attrib: rwxrwxr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-488D Local Header Offset   00000149 (329)\n-4891 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4835 Local Header Offset   00000149 (329)\n+4839 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4891: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4839: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x4891: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x4839: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x4869: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4811: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n \n-48B0 CENTRAL HEADER #7     02014B50 (33639248)\n-48B4 Created Zip Spec      14 (20) '2.0'\n-48B5 Created OS            03 (3) 'Unix'\n-48B6 Extract Zip Spec      0A (10) '1.0'\n-48B7 Extract OS            00 (0) 'MS-DOS'\n-48B8 General Purpose Flag  0000 (0)\n-48BA Compression Method    0000 (0) 'Stored'\n-48BC Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-48C0 CRC                   00000000 (0)\n-48C4 Compressed Size       00000000 (0)\n-48C8 Uncompressed Size     00000000 (0)\n-48CC Filename Length       0023 (35)\n-48CE Extra Length          0000 (0)\n-48D0 Comment Length        0000 (0)\n-48D2 Disk Start            0000 (0)\n-48D4 Int File Attributes   0000 (0)\n+4858 CENTRAL HEADER #7     02014B50 (33639248)\n+485C Created Zip Spec      14 (20) '2.0'\n+485D Created OS            03 (3) 'Unix'\n+485E Extract Zip Spec      0A (10) '1.0'\n+485F Extract OS            00 (0) 'MS-DOS'\n+4860 General Purpose Flag  0000 (0)\n+4862 Compression Method    0000 (0) 'Stored'\n+4864 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4868 CRC                   00000000 (0)\n+486C Compressed Size       00000000 (0)\n+4870 Uncompressed Size     00000000 (0)\n+4874 Filename Length       0023 (35)\n+4876 Extra Length          0000 (0)\n+4878 Comment Length        0000 (0)\n+487A Disk Start            0000 (0)\n+487C Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-48D6 Ext File Attributes   41ED0010 (1106051088)\n+487E Ext File Attributes   41FD0010 (1107099664)\n      [Bit 4]               Directory\n-     [Bits 16-24]          01ED (493) 'Unix attrib: rwxr-xr-x'\n+     [Bits 16-24]          01FD (509) 'Unix attrib: rwxrwxr-x'\n      [Bits 28-31]          04 (4) 'Directory'\n-48DA Local Header Offset   00000186 (390)\n-48DE Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4882 Local Header Offset   00000186 (390)\n+4886 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x48DE: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4886: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x48DE: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x4886: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x48B6: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x485E: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n \n-4901 CENTRAL HEADER #8     02014B50 (33639248)\n-4905 Created Zip Spec      14 (20) '2.0'\n-4906 Created OS            03 (3) 'Unix'\n-4907 Extract Zip Spec      0A (10) '1.0'\n-4908 Extract OS            00 (0) 'MS-DOS'\n-4909 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-490B Compression Method    0008 (8) 'Deflated'\n-490D Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4911 CRC                   00BC64EA (12346602)\n-4915 Compressed Size       00000219 (537)\n-4919 Uncompressed Size     000003C2 (962)\n-491D Filename Length       0039 (57)\n-491F Extra Length          0000 (0)\n-4921 Comment Length        0000 (0)\n-4923 Disk Start            0000 (0)\n-4925 Int File Attributes   0000 (0)\n+48A9 CENTRAL HEADER #8     02014B50 (33639248)\n+48AD Created Zip Spec      14 (20) '2.0'\n+48AE Created OS            03 (3) 'Unix'\n+48AF Extract Zip Spec      0A (10) '1.0'\n+48B0 Extract OS            00 (0) 'MS-DOS'\n+48B1 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+48B3 Compression Method    0008 (8) 'Deflated'\n+48B5 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+48B9 CRC                   0CE36CE4 (216231140)\n+48BD Compressed Size       0000021D (541)\n+48C1 Uncompressed Size     000003BF (959)\n+48C5 Filename Length       0039 (57)\n+48C7 Extra Length          0000 (0)\n+48C9 Comment Length        0000 (0)\n+48CB Disk Start            0000 (0)\n+48CD Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4927 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+48CF Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-492B Local Header Offset   000001C7 (455)\n-492F Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+48D3 Local Header Offset   000001C7 (455)\n+48D7 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x492F: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x48D7: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4968 CENTRAL HEADER #9     02014B50 (33639248)\n-496C Created Zip Spec      14 (20) '2.0'\n-496D Created OS            03 (3) 'Unix'\n-496E Extract Zip Spec      0A (10) '1.0'\n-496F Extract OS            00 (0) 'MS-DOS'\n-4970 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4972 Compression Method    0008 (8) 'Deflated'\n-4974 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4978 CRC                   225743FA (576144378)\n-497C Compressed Size       0000025F (607)\n-4980 Uncompressed Size     00000489 (1161)\n-4984 Filename Length       002F (47)\n-4986 Extra Length          0000 (0)\n-4988 Comment Length        0000 (0)\n-498A Disk Start            0000 (0)\n-498C Int File Attributes   0000 (0)\n+4910 CENTRAL HEADER #9     02014B50 (33639248)\n+4914 Created Zip Spec      14 (20) '2.0'\n+4915 Created OS            03 (3) 'Unix'\n+4916 Extract Zip Spec      0A (10) '1.0'\n+4917 Extract OS            00 (0) 'MS-DOS'\n+4918 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+491A Compression Method    0008 (8) 'Deflated'\n+491C Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4920 CRC                   2ABFFD7E (717225342)\n+4924 Compressed Size       000009B1 (2481)\n+4928 Uncompressed Size     00001A96 (6806)\n+492C Filename Length       0045 (69)\n+492E Extra Length          0000 (0)\n+4930 Comment Length        0000 (0)\n+4932 Disk Start            0000 (0)\n+4934 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-498E Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4936 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4992 Local Header Offset   00000437 (1079)\n-4996 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+493A Local Header Offset   0000043B (1083)\n+493E Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4996: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x493E: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-49C5 CENTRAL HEADER #10    02014B50 (33639248)\n-49C9 Created Zip Spec      14 (20) '2.0'\n-49CA Created OS            03 (3) 'Unix'\n-49CB Extract Zip Spec      0A (10) '1.0'\n-49CC Extract OS            00 (0) 'MS-DOS'\n-49CD General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-49CF Compression Method    0008 (8) 'Deflated'\n-49D1 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-49D5 CRC                   FDBDE50E (4257080590)\n-49D9 Compressed Size       00000233 (563)\n-49DD Uncompressed Size     00000490 (1168)\n-49E1 Filename Length       0037 (55)\n-49E3 Extra Length          0000 (0)\n-49E5 Comment Length        0000 (0)\n-49E7 Disk Start            0000 (0)\n-49E9 Int File Attributes   0000 (0)\n+4983 CENTRAL HEADER #10    02014B50 (33639248)\n+4987 Created Zip Spec      14 (20) '2.0'\n+4988 Created OS            03 (3) 'Unix'\n+4989 Extract Zip Spec      0A (10) '1.0'\n+498A Extract OS            00 (0) 'MS-DOS'\n+498B General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+498D Compression Method    0008 (8) 'Deflated'\n+498F Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4993 CRC                   AAE861B2 (2867356082)\n+4997 Compressed Size       000001D7 (471)\n+499B Uncompressed Size     0000030C (780)\n+499F Filename Length       0031 (49)\n+49A1 Extra Length          0000 (0)\n+49A3 Comment Length        0000 (0)\n+49A5 Disk Start            0000 (0)\n+49A7 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-49EB Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+49A9 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-49EF Local Header Offset   000006E3 (1763)\n-49F3 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+49AD Local Header Offset   00000E4F (3663)\n+49B1 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x49F3: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x49B1: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4A2A CENTRAL HEADER #11    02014B50 (33639248)\n-4A2E Created Zip Spec      14 (20) '2.0'\n-4A2F Created OS            03 (3) 'Unix'\n-4A30 Extract Zip Spec      0A (10) '1.0'\n-4A31 Extract OS            00 (0) 'MS-DOS'\n-4A32 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4A34 Compression Method    0008 (8) 'Deflated'\n-4A36 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4A3A CRC                   703AE577 (1882908023)\n-4A3E Compressed Size       000009EB (2539)\n-4A42 Uncompressed Size     00001B40 (6976)\n-4A46 Filename Length       0045 (69)\n-4A48 Extra Length          0000 (0)\n-4A4A Comment Length        0000 (0)\n-4A4C Disk Start            0000 (0)\n-4A4E Int File Attributes   0000 (0)\n+49E2 CENTRAL HEADER #11    02014B50 (33639248)\n+49E6 Created Zip Spec      14 (20) '2.0'\n+49E7 Created OS            03 (3) 'Unix'\n+49E8 Extract Zip Spec      0A (10) '1.0'\n+49E9 Extract OS            00 (0) 'MS-DOS'\n+49EA General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+49EC Compression Method    0008 (8) 'Deflated'\n+49EE Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+49F2 CRC                   C10AB7D3 (3238705107)\n+49F6 Compressed Size       00000261 (609)\n+49FA Uncompressed Size     00000489 (1161)\n+49FE Filename Length       002F (47)\n+4A00 Extra Length          0000 (0)\n+4A02 Comment Length        0000 (0)\n+4A04 Disk Start            0000 (0)\n+4A06 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4A50 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4A08 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4A54 Local Header Offset   0000096B (2411)\n-4A58 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4A0C Local Header Offset   00001075 (4213)\n+4A10 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4A58: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4A10: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4A9D CENTRAL HEADER #12    02014B50 (33639248)\n-4AA1 Created Zip Spec      14 (20) '2.0'\n-4AA2 Created OS            03 (3) 'Unix'\n-4AA3 Extract Zip Spec      0A (10) '1.0'\n-4AA4 Extract OS            00 (0) 'MS-DOS'\n-4AA5 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4AA7 Compression Method    0008 (8) 'Deflated'\n-4AA9 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4AAD CRC                   C4552B1C (3293915932)\n-4AB1 Compressed Size       00000A2A (2602)\n-4AB5 Uncompressed Size     0000179D (6045)\n-4AB9 Filename Length       0030 (48)\n-4ABB Extra Length          0000 (0)\n-4ABD Comment Length        0000 (0)\n-4ABF Disk Start            0000 (0)\n-4AC1 Int File Attributes   0000 (0)\n+4A3F CENTRAL HEADER #12    02014B50 (33639248)\n+4A43 Created Zip Spec      14 (20) '2.0'\n+4A44 Created OS            03 (3) 'Unix'\n+4A45 Extract Zip Spec      0A (10) '1.0'\n+4A46 Extract OS            00 (0) 'MS-DOS'\n+4A47 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4A49 Compression Method    0008 (8) 'Deflated'\n+4A4B Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4A4F CRC                   E726BE19 (3878075929)\n+4A53 Compressed Size       00000104 (260)\n+4A57 Uncompressed Size     0000029F (671)\n+4A5B Filename Length       0057 (87)\n+4A5D Extra Length          0000 (0)\n+4A5F Comment Length        0000 (0)\n+4A61 Disk Start            0000 (0)\n+4A63 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4AC3 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4A65 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4AC7 Local Header Offset   000013B9 (5049)\n-4ACB Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4A69 Local Header Offset   00001323 (4899)\n+4A6D Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4ACB: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4A6D: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4AFB CENTRAL HEADER #13    02014B50 (33639248)\n-4AFF Created Zip Spec      14 (20) '2.0'\n-4B00 Created OS            03 (3) 'Unix'\n-4B01 Extract Zip Spec      0A (10) '1.0'\n-4B02 Extract OS            00 (0) 'MS-DOS'\n-4B03 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4B05 Compression Method    0008 (8) 'Deflated'\n-4B07 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4B0B CRC                   84DC8C8B (2229046411)\n-4B0F Compressed Size       000001DA (474)\n-4B13 Uncompressed Size     0000030F (783)\n-4B17 Filename Length       0031 (49)\n-4B19 Extra Length          0000 (0)\n-4B1B Comment Length        0000 (0)\n-4B1D Disk Start            0000 (0)\n-4B1F Int File Attributes   0000 (0)\n+4AC4 CENTRAL HEADER #13    02014B50 (33639248)\n+4AC8 Created Zip Spec      14 (20) '2.0'\n+4AC9 Created OS            03 (3) 'Unix'\n+4ACA Extract Zip Spec      0A (10) '1.0'\n+4ACB Extract OS            00 (0) 'MS-DOS'\n+4ACC General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4ACE Compression Method    0008 (8) 'Deflated'\n+4AD0 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4AD4 CRC                   B1104081 (2970632321)\n+4AD8 Compressed Size       000000FF (255)\n+4ADC Uncompressed Size     00000257 (599)\n+4AE0 Filename Length       004E (78)\n+4AE2 Extra Length          0000 (0)\n+4AE4 Comment Length        0000 (0)\n+4AE6 Disk Start            0000 (0)\n+4AE8 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4B21 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4AEA Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4B25 Local Header Offset   00001E31 (7729)\n-4B29 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4AEE Local Header Offset   0000149C (5276)\n+4AF2 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4B29: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4AF2: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4B5A CENTRAL HEADER #14    02014B50 (33639248)\n-4B5E Created Zip Spec      14 (20) '2.0'\n-4B5F Created OS            03 (3) 'Unix'\n-4B60 Extract Zip Spec      0A (10) '1.0'\n-4B61 Extract OS            00 (0) 'MS-DOS'\n-4B62 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4B64 Compression Method    0008 (8) 'Deflated'\n-4B66 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4B6A CRC                   7D72ECB2 (2104683698)\n-4B6E Compressed Size       000000FE (254)\n-4B72 Uncompressed Size     00000257 (599)\n-4B76 Filename Length       004E (78)\n-4B78 Extra Length          0000 (0)\n-4B7A Comment Length        0000 (0)\n-4B7C Disk Start            0000 (0)\n-4B7E Int File Attributes   0000 (0)\n+4B40 CENTRAL HEADER #14    02014B50 (33639248)\n+4B44 Created Zip Spec      14 (20) '2.0'\n+4B45 Created OS            03 (3) 'Unix'\n+4B46 Extract Zip Spec      0A (10) '1.0'\n+4B47 Extract OS            00 (0) 'MS-DOS'\n+4B48 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4B4A Compression Method    0008 (8) 'Deflated'\n+4B4C Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4B50 CRC                   01E44F98 (31739800)\n+4B54 Compressed Size       00000A26 (2598)\n+4B58 Uncompressed Size     00001D25 (7461)\n+4B5C Filename Length       003C (60)\n+4B5E Extra Length          0000 (0)\n+4B60 Comment Length        0000 (0)\n+4B62 Disk Start            0000 (0)\n+4B64 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4B80 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4B66 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4B84 Local Header Offset   0000205A (8282)\n-4B88 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4B6A Local Header Offset   00001607 (5639)\n+4B6E Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4B88: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4B6E: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4BD6 CENTRAL HEADER #15    02014B50 (33639248)\n-4BDA Created Zip Spec      14 (20) '2.0'\n-4BDB Created OS            03 (3) 'Unix'\n-4BDC Extract Zip Spec      0A (10) '1.0'\n-4BDD Extract OS            00 (0) 'MS-DOS'\n-4BDE General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4BE0 Compression Method    0008 (8) 'Deflated'\n-4BE2 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4BE6 CRC                   3467BDF1 (879214065)\n-4BEA Compressed Size       00000102 (258)\n-4BEE Uncompressed Size     0000029F (671)\n-4BF2 Filename Length       0057 (87)\n-4BF4 Extra Length          0000 (0)\n-4BF6 Comment Length        0000 (0)\n-4BF8 Disk Start            0000 (0)\n-4BFA Int File Attributes   0000 (0)\n+4BAA CENTRAL HEADER #15    02014B50 (33639248)\n+4BAE Created Zip Spec      14 (20) '2.0'\n+4BAF Created OS            03 (3) 'Unix'\n+4BB0 Extract Zip Spec      0A (10) '1.0'\n+4BB1 Extract OS            00 (0) 'MS-DOS'\n+4BB2 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4BB4 Compression Method    0008 (8) 'Deflated'\n+4BB6 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4BBA CRC                   25969D07 (630627591)\n+4BBE Compressed Size       00000A2D (2605)\n+4BC2 Uncompressed Size     00001797 (6039)\n+4BC6 Filename Length       0030 (48)\n+4BC8 Extra Length          0000 (0)\n+4BCA Comment Length        0000 (0)\n+4BCC Disk Start            0000 (0)\n+4BCE Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4BFC Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4BD0 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4C00 Local Header Offset   000021C4 (8644)\n-4C04 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4BD4 Local Header Offset   00002087 (8327)\n+4BD8 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4C04: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4BD8: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4C5B CENTRAL HEADER #16    02014B50 (33639248)\n-4C5F Created Zip Spec      14 (20) '2.0'\n-4C60 Created OS            03 (3) 'Unix'\n-4C61 Extract Zip Spec      0A (10) '1.0'\n-4C62 Extract OS            00 (0) 'MS-DOS'\n-4C63 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4C65 Compression Method    0008 (8) 'Deflated'\n-4C67 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4C6B CRC                   E4AF4B93 (3836693395)\n-4C6F Compressed Size       00000476 (1142)\n-4C73 Uncompressed Size     00000C39 (3129)\n-4C77 Filename Length       0041 (65)\n-4C79 Extra Length          0000 (0)\n-4C7B Comment Length        0000 (0)\n-4C7D Disk Start            0000 (0)\n-4C7F Int File Attributes   0000 (0)\n+4C08 CENTRAL HEADER #16    02014B50 (33639248)\n+4C0C Created Zip Spec      14 (20) '2.0'\n+4C0D Created OS            03 (3) 'Unix'\n+4C0E Extract Zip Spec      0A (10) '1.0'\n+4C0F Extract OS            00 (0) 'MS-DOS'\n+4C10 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4C12 Compression Method    0008 (8) 'Deflated'\n+4C14 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4C18 CRC                   0D3B0B2E (221973294)\n+4C1C Compressed Size       00000349 (841)\n+4C20 Uncompressed Size     00000A52 (2642)\n+4C24 Filename Length       006D (109)\n+4C26 Extra Length          0000 (0)\n+4C28 Comment Length        0000 (0)\n+4C2A Disk Start            0000 (0)\n+4C2C Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4C81 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4C2E Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4C85 Local Header Offset   0000233B (9019)\n-4C89 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4C32 Local Header Offset   00002B02 (11010)\n+4C36 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4C89: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4C36: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4CCA CENTRAL HEADER #17    02014B50 (33639248)\n-4CCE Created Zip Spec      14 (20) '2.0'\n-4CCF Created OS            03 (3) 'Unix'\n-4CD0 Extract Zip Spec      0A (10) '1.0'\n-4CD1 Extract OS            00 (0) 'MS-DOS'\n-4CD2 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4CD4 Compression Method    0008 (8) 'Deflated'\n-4CD6 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4CDA CRC                   FAC23816 (4207032342)\n-4CDE Compressed Size       00000A5B (2651)\n-4CE2 Uncompressed Size     00001DC9 (7625)\n-4CE6 Filename Length       003C (60)\n-4CE8 Extra Length          0000 (0)\n-4CEA Comment Length        0000 (0)\n-4CEC Disk Start            0000 (0)\n-4CEE Int File Attributes   0000 (0)\n+4CA3 CENTRAL HEADER #17    02014B50 (33639248)\n+4CA7 Created Zip Spec      14 (20) '2.0'\n+4CA8 Created OS            03 (3) 'Unix'\n+4CA9 Extract Zip Spec      0A (10) '1.0'\n+4CAA Extract OS            00 (0) 'MS-DOS'\n+4CAB General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4CAD Compression Method    0008 (8) 'Deflated'\n+4CAF Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4CB3 CRC                   C587F7B7 (3314022327)\n+4CB7 Compressed Size       0000047A (1146)\n+4CBB Uncompressed Size     00000C33 (3123)\n+4CBF Filename Length       0041 (65)\n+4CC1 Extra Length          0000 (0)\n+4CC3 Comment Length        0000 (0)\n+4CC5 Disk Start            0000 (0)\n+4CC7 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4CF0 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4CC9 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4CF4 Local Header Offset   00002810 (10256)\n-4CF8 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4CCD Local Header Offset   00002ED6 (11990)\n+4CD1 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4CF8: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4CD1: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4D34 CENTRAL HEADER #18    02014B50 (33639248)\n-4D38 Created Zip Spec      14 (20) '2.0'\n-4D39 Created OS            03 (3) 'Unix'\n-4D3A Extract Zip Spec      0A (10) '1.0'\n-4D3B Extract OS            00 (0) 'MS-DOS'\n-4D3C General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4D3E Compression Method    0008 (8) 'Deflated'\n-4D40 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4D44 CRC                   AC63F368 (2892231528)\n-4D48 Compressed Size       0000036A (874)\n-4D4C Uncompressed Size     00000A60 (2656)\n-4D50 Filename Length       005B (91)\n-4D52 Extra Length          0000 (0)\n-4D54 Comment Length        0000 (0)\n-4D56 Disk Start            0000 (0)\n-4D58 Int File Attributes   0000 (0)\n+4D12 CENTRAL HEADER #18    02014B50 (33639248)\n+4D16 Created Zip Spec      14 (20) '2.0'\n+4D17 Created OS            03 (3) 'Unix'\n+4D18 Extract Zip Spec      0A (10) '1.0'\n+4D19 Extract OS            00 (0) 'MS-DOS'\n+4D1A General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4D1C Compression Method    0008 (8) 'Deflated'\n+4D1E Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4D22 CRC                   E41F637E (3827262334)\n+4D26 Compressed Size       00000238 (568)\n+4D2A Uncompressed Size     00000490 (1168)\n+4D2E Filename Length       0037 (55)\n+4D30 Extra Length          0000 (0)\n+4D32 Comment Length        0000 (0)\n+4D34 Disk Start            0000 (0)\n+4D36 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4D5A Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4D38 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4D5E Local Header Offset   000032C5 (12997)\n-4D62 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4D3C Local Header Offset   000033AF (13231)\n+4D40 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4D62: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4D40: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4DBD CENTRAL HEADER #19    02014B50 (33639248)\n-4DC1 Created Zip Spec      14 (20) '2.0'\n-4DC2 Created OS            03 (3) 'Unix'\n-4DC3 Extract Zip Spec      0A (10) '1.0'\n-4DC4 Extract OS            00 (0) 'MS-DOS'\n-4DC5 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4DC7 Compression Method    0008 (8) 'Deflated'\n-4DC9 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4DCD CRC                   75E7B253 (1978118739)\n-4DD1 Compressed Size       00000349 (841)\n-4DD5 Uncompressed Size     00000A52 (2642)\n-4DD9 Filename Length       006D (109)\n-4DDB Extra Length          0000 (0)\n-4DDD Comment Length        0000 (0)\n-4DDF Disk Start            0000 (0)\n-4DE1 Int File Attributes   0000 (0)\n+4D77 CENTRAL HEADER #19    02014B50 (33639248)\n+4D7B Created Zip Spec      14 (20) '2.0'\n+4D7C Created OS            03 (3) 'Unix'\n+4D7D Extract Zip Spec      0A (10) '1.0'\n+4D7E Extract OS            00 (0) 'MS-DOS'\n+4D7F General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4D81 Compression Method    0008 (8) 'Deflated'\n+4D83 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4D87 CRC                   C2494E95 (3259584149)\n+4D8B Compressed Size       000004D2 (1234)\n+4D8F Uncompressed Size     00000C88 (3208)\n+4D93 Filename Length       0033 (51)\n+4D95 Extra Length          0000 (0)\n+4D97 Comment Length        0000 (0)\n+4D99 Disk Start            0000 (0)\n+4D9B Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4DE3 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4D9D Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4DE7 Local Header Offset   000036A8 (13992)\n-4DEB Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4DA1 Local Header Offset   0000363C (13884)\n+4DA5 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4DEB: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4DA5: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4E58 CENTRAL HEADER #20    02014B50 (33639248)\n-4E5C Created Zip Spec      14 (20) '2.0'\n-4E5D Created OS            03 (3) 'Unix'\n-4E5E Extract Zip Spec      0A (10) '1.0'\n-4E5F Extract OS            00 (0) 'MS-DOS'\n-4E60 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4E62 Compression Method    0008 (8) 'Deflated'\n-4E64 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4E68 CRC                   28C91432 (684266546)\n-4E6C Compressed Size       00000206 (518)\n-4E70 Uncompressed Size     0000045B (1115)\n-4E74 Filename Length       0035 (53)\n-4E76 Extra Length          0000 (0)\n-4E78 Comment Length        0000 (0)\n-4E7A Disk Start            0000 (0)\n-4E7C Int File Attributes   0000 (0)\n+4DD8 CENTRAL HEADER #20    02014B50 (33639248)\n+4DDC Created Zip Spec      14 (20) '2.0'\n+4DDD Created OS            03 (3) 'Unix'\n+4DDE Extract Zip Spec      0A (10) '1.0'\n+4DDF Extract OS            00 (0) 'MS-DOS'\n+4DE0 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4DE2 Compression Method    0008 (8) 'Deflated'\n+4DE4 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4DE8 CRC                   6418A2C1 (1679336129)\n+4DEC Compressed Size       00000209 (521)\n+4DF0 Uncompressed Size     0000045B (1115)\n+4DF4 Filename Length       0035 (53)\n+4DF6 Extra Length          0000 (0)\n+4DF8 Comment Length        0000 (0)\n+4DFA Disk Start            0000 (0)\n+4DFC Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4E7E Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4DFE Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4E82 Local Header Offset   00003A7C (14972)\n-4E86 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4E02 Local Header Offset   00003B5F (15199)\n+4E06 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4E86: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4E06: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4EBB CENTRAL HEADER #21    02014B50 (33639248)\n-4EBF Created Zip Spec      14 (20) '2.0'\n-4EC0 Created OS            03 (3) 'Unix'\n-4EC1 Extract Zip Spec      0A (10) '1.0'\n-4EC2 Extract OS            00 (0) 'MS-DOS'\n-4EC3 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-4EC5 Compression Method    0008 (8) 'Deflated'\n-4EC7 Modification Time     583E2BC9 (1480469449) 'Tue Jan 30 05:30:18 2024'\n-4ECB CRC                   24E9B92B (619297067)\n-4ECF Compressed Size       000004D5 (1237)\n-4ED3 Uncompressed Size     00000C88 (3208)\n-4ED7 Filename Length       0033 (51)\n-4ED9 Extra Length          0000 (0)\n-4EDB Comment Length        0000 (0)\n-4EDD Disk Start            0000 (0)\n-4EDF Int File Attributes   0000 (0)\n+4E3B CENTRAL HEADER #21    02014B50 (33639248)\n+4E3F Created Zip Spec      14 (20) '2.0'\n+4E40 Created OS            03 (3) 'Unix'\n+4E41 Extract Zip Spec      0A (10) '1.0'\n+4E42 Extract OS            00 (0) 'MS-DOS'\n+4E43 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4E45 Compression Method    0008 (8) 'Deflated'\n+4E47 Modification Time     5A3D4718 (1513965336) 'Wed Jan 29 08:56:48 2025'\n+4E4B CRC                   241FCCC5 (606063813)\n+4E4F Compressed Size       00000374 (884)\n+4E53 Uncompressed Size     00000A60 (2656)\n+4E57 Filename Length       005B (91)\n+4E59 Extra Length          0000 (0)\n+4E5B Comment Length        0000 (0)\n+4E5D Disk Start            0000 (0)\n+4E5F Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4EE1 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4E61 Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-4EE5 Local Header Offset   00003CD5 (15573)\n-4EE9 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4E65 Local Header Offset   00003DBB (15803)\n+4E69 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4EE9: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4E69: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-4F1C CENTRAL HEADER #22    02014B50 (33639248)\n-4F20 Created Zip Spec      14 (20) '2.0'\n-4F21 Created OS            03 (3) 'Unix'\n-4F22 Extract Zip Spec      0A (10) '1.0'\n-4F23 Extract OS            00 (0) 'MS-DOS'\n-4F24 General Purpose Flag  0000 (0)\n-4F26 Compression Method    0000 (0) 'Stored'\n-4F28 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4F2C CRC                   00000000 (0)\n-4F30 Compressed Size       00000000 (0)\n-4F34 Uncompressed Size     00000000 (0)\n-4F38 Filename Length       000F (15)\n-4F3A Extra Length          0000 (0)\n-4F3C Comment Length        0000 (0)\n-4F3E Disk Start            0000 (0)\n-4F40 Int File Attributes   0000 (0)\n+4EC4 CENTRAL HEADER #22    02014B50 (33639248)\n+4EC8 Created Zip Spec      14 (20) '2.0'\n+4EC9 Created OS            03 (3) 'Unix'\n+4ECA Extract Zip Spec      0A (10) '1.0'\n+4ECB Extract OS            00 (0) 'MS-DOS'\n+4ECC General Purpose Flag  0000 (0)\n+4ECE Compression Method    0000 (0) 'Stored'\n+4ED0 Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+4ED4 CRC                   00000000 (0)\n+4ED8 Compressed Size       00000000 (0)\n+4EDC Uncompressed Size     00000000 (0)\n+4EE0 Filename Length       000F (15)\n+4EE2 Extra Length          0000 (0)\n+4EE4 Comment Length        0000 (0)\n+4EE6 Disk Start            0000 (0)\n+4EE8 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4F42 Ext File Attributes   FFFF0010 (4294901776)\n+4EEA Ext File Attributes   FFFF0010 (4294901776)\n      [Bit 4]               Directory\n      [Bits 16-24]          01FF (511) 'Unix attrib: rwxrwxrwx'\n      [Bits 28-31]          0F (15) 'Unknown Unix attrib'\n-4F46 Local Header Offset   000041FB (16891)\n-4F4A Filename              'XXXXXXXXXXXXXXX'\n+4EEE Local Header Offset   000041A8 (16808)\n+4EF2 Filename              'XXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4F4A: Filename 'XXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4EF2: Filename 'XXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x4F4A: Directory 'XXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x4EF2: Directory 'XXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x4F22: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4ECA: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXX'\n #\n \n-4F59 CENTRAL HEADER #23    02014B50 (33639248)\n-4F5D Created Zip Spec      14 (20) '2.0'\n-4F5E Created OS            03 (3) 'Unix'\n-4F5F Extract Zip Spec      0A (10) '1.0'\n-4F60 Extract OS            00 (0) 'MS-DOS'\n-4F61 General Purpose Flag  0000 (0)\n-4F63 Compression Method    0000 (0) 'Stored'\n-4F65 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4F69 CRC                   00000000 (0)\n-4F6D Compressed Size       00000000 (0)\n-4F71 Uncompressed Size     00000000 (0)\n-4F75 Filename Length       001F (31)\n-4F77 Extra Length          0000 (0)\n-4F79 Comment Length        0000 (0)\n-4F7B Disk Start            0000 (0)\n-4F7D Int File Attributes   0000 (0)\n+4F01 CENTRAL HEADER #23    02014B50 (33639248)\n+4F05 Created Zip Spec      14 (20) '2.0'\n+4F06 Created OS            03 (3) 'Unix'\n+4F07 Extract Zip Spec      0A (10) '1.0'\n+4F08 Extract OS            00 (0) 'MS-DOS'\n+4F09 General Purpose Flag  0000 (0)\n+4F0B Compression Method    0000 (0) 'Stored'\n+4F0D Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+4F11 CRC                   00000000 (0)\n+4F15 Compressed Size       00000000 (0)\n+4F19 Uncompressed Size     00000000 (0)\n+4F1D Filename Length       001F (31)\n+4F1F Extra Length          0000 (0)\n+4F21 Comment Length        0000 (0)\n+4F23 Disk Start            0000 (0)\n+4F25 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4F7F Ext File Attributes   FFFF0010 (4294901776)\n+4F27 Ext File Attributes   FFFF0010 (4294901776)\n      [Bit 4]               Directory\n      [Bits 16-24]          01FF (511) 'Unix attrib: rwxrwxrwx'\n      [Bits 28-31]          0F (15) 'Unknown Unix attrib'\n-4F83 Local Header Offset   00004228 (16936)\n-4F87 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4F2B Local Header Offset   000041D5 (16853)\n+4F2F Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4F87: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4F2F: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x4F87: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x4F2F: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x4F5F: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4F07: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n \n-4FA6 CENTRAL HEADER #24    02014B50 (33639248)\n-4FAA Created Zip Spec      14 (20) '2.0'\n-4FAB Created OS            03 (3) 'Unix'\n-4FAC Extract Zip Spec      0A (10) '1.0'\n-4FAD Extract OS            00 (0) 'MS-DOS'\n-4FAE General Purpose Flag  0000 (0)\n-4FB0 Compression Method    0000 (0) 'Stored'\n-4FB2 Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-4FB6 CRC                   00000000 (0)\n-4FBA Compressed Size       00000000 (0)\n-4FBE Uncompressed Size     00000000 (0)\n-4FC2 Filename Length       003C (60)\n-4FC4 Extra Length          0000 (0)\n-4FC6 Comment Length        0000 (0)\n-4FC8 Disk Start            0000 (0)\n-4FCA Int File Attributes   0000 (0)\n+4F4E CENTRAL HEADER #24    02014B50 (33639248)\n+4F52 Created Zip Spec      14 (20) '2.0'\n+4F53 Created OS            03 (3) 'Unix'\n+4F54 Extract Zip Spec      0A (10) '1.0'\n+4F55 Extract OS            00 (0) 'MS-DOS'\n+4F56 General Purpose Flag  0000 (0)\n+4F58 Compression Method    0000 (0) 'Stored'\n+4F5A Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+4F5E CRC                   00000000 (0)\n+4F62 Compressed Size       00000000 (0)\n+4F66 Uncompressed Size     00000000 (0)\n+4F6A Filename Length       003C (60)\n+4F6C Extra Length          0000 (0)\n+4F6E Comment Length        0000 (0)\n+4F70 Disk Start            0000 (0)\n+4F72 Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-4FCC Ext File Attributes   FFFF0010 (4294901776)\n+4F74 Ext File Attributes   FFFF0010 (4294901776)\n      [Bit 4]               Directory\n      [Bits 16-24]          01FF (511) 'Unix attrib: rwxrwxrwx'\n      [Bits 28-31]          0F (15) 'Unknown Unix attrib'\n-4FD0 Local Header Offset   00004265 (16997)\n-4FD4 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4F78 Local Header Offset   00004212 (16914)\n+4F7C Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x4FD4: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4F7C: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n-# ERROR: Offset 0x4FD4: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n+# ERROR: Offset 0x4F7C: Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' must end in a '/'\n #        'External Attributes' flag this as a directory\n #\n-# WARNING: Offset 0x4FAC: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4F54: 'Extract Zip Spec' is '1.0'. Need value >= '2.0' for Directory 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n \n-5010 CENTRAL HEADER #25    02014B50 (33639248)\n-5014 Created Zip Spec      14 (20) '2.0'\n-5015 Created OS            03 (3) 'Unix'\n-5016 Extract Zip Spec      0A (10) '1.0'\n-5017 Extract OS            00 (0) 'MS-DOS'\n-5018 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-501A Compression Method    0008 (8) 'Deflated'\n-501C Modification Time     583E2B59 (1480469337) 'Tue Jan 30 05:26:50 2024'\n-5020 CRC                   81635872 (2170771570)\n-5024 Compressed Size       00000338 (824)\n-5028 Uncompressed Size     00000C36 (3126)\n-502C Filename Length       0043 (67)\n-502E Extra Length          0000 (0)\n-5030 Comment Length        0000 (0)\n-5032 Disk Start            0000 (0)\n-5034 Int File Attributes   0000 (0)\n+4FB8 CENTRAL HEADER #25    02014B50 (33639248)\n+4FBC Created Zip Spec      14 (20) '2.0'\n+4FBD Created OS            03 (3) 'Unix'\n+4FBE Extract Zip Spec      0A (10) '1.0'\n+4FBF Extract OS            00 (0) 'MS-DOS'\n+4FC0 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+4FC2 Compression Method    0008 (8) 'Deflated'\n+4FC4 Modification Time     5A3D470B (1513965323) 'Wed Jan 29 08:56:22 2025'\n+4FC8 CRC                   3C99DEF2 (1016717042)\n+4FCC Compressed Size       00000335 (821)\n+4FD0 Uncompressed Size     00000C2D (3117)\n+4FD4 Filename Length       0043 (67)\n+4FD6 Extra Length          0000 (0)\n+4FD8 Comment Length        0000 (0)\n+4FDA Disk Start            0000 (0)\n+4FDC Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-5036 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+4FDE Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-503A Local Header Offset   000042BF (17087)\n-503E Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+4FE2 Local Header Offset   0000426C (17004)\n+4FE6 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x503E: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x4FE6: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-5081 CENTRAL HEADER #26    02014B50 (33639248)\n-5085 Created Zip Spec      14 (20) '2.0'\n-5086 Created OS            03 (3) 'Unix'\n-5087 Extract Zip Spec      0A (10) '1.0'\n-5088 Extract OS            00 (0) 'MS-DOS'\n-5089 General Purpose Flag  0000 (0)\n-     [Bits 1-2]            0 'Normal Compression'\n-508B Compression Method    0008 (8) 'Deflated'\n-508D Modification Time     583E2BCA (1480469450) 'Tue Jan 30 05:30:20 2024'\n-5091 CRC                   BCC981B4 (3167322548)\n-5095 Compressed Size       00000076 (118)\n-5099 Uncompressed Size     00000081 (129)\n-509D Filename Length       004A (74)\n-509F Extra Length          0000 (0)\n-50A1 Comment Length        0000 (0)\n-50A3 Disk Start            0000 (0)\n-50A5 Int File Attributes   0000 (0)\n+5029 CENTRAL HEADER #26    02014B50 (33639248)\n+502D Created Zip Spec      14 (20) '2.0'\n+502E Created OS            03 (3) 'Unix'\n+502F Extract Zip Spec      0A (10) '1.0'\n+5030 Extract OS            00 (0) 'MS-DOS'\n+5031 General Purpose Flag  0000 (0)\n+     [Bits 1-2]            0 'Normal Compression'\n+5033 Compression Method    0008 (8) 'Deflated'\n+5035 Modification Time     5A3D4719 (1513965337) 'Wed Jan 29 08:56:50 2025'\n+5039 CRC                   C786CB6D (3347499885)\n+503D Compressed Size       00000074 (116)\n+5041 Uncompressed Size     00000081 (129)\n+5045 Filename Length       004A (74)\n+5047 Extra Length          0000 (0)\n+5049 Comment Length        0000 (0)\n+504B Disk Start            0000 (0)\n+504D Int File Attributes   0000 (0)\n      [Bit 0]               0 'Binary Data'\n-50A7 Ext File Attributes   81A40000 (2175008768)\n-     [Bits 16-24]          01A4 (420) 'Unix attrib: rw-r--r--'\n+504F Ext File Attributes   81B40000 (2176057344)\n+     [Bits 16-24]          01B4 (436) 'Unix attrib: rw-rw-r--'\n      [Bits 28-31]          08 (8) 'Regular File'\n-50AB Local Header Offset   00004658 (18008)\n-50AF Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+5053 Local Header Offset   00004602 (17922)\n+5057 Filename              'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #\n-# WARNING: Offset 0x50AF: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n+# WARNING: Offset 0x5057: Filename 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'\n #          Zero length filename\n #\n \n-50F9 END CENTRAL HEADER    06054B50 (101010256)\n-50FD Number of this disk   0000 (0)\n-50FF Central Dir Disk no   0000 (0)\n-5101 Entries in this disk  001A (26)\n-5103 Total Entries         001A (26)\n-5105 Size of Central Dir   000009C3 (2499)\n-5109 Offset to Central Dir 00004736 (18230)\n-510D Comment Length        0000 (0)\n+50A1 END CENTRAL HEADER    06054B50 (101010256)\n+50A5 Number of this disk   0000 (0)\n+50A7 Central Dir Disk no   0000 (0)\n+50A9 Entries in this disk  001A (26)\n+50AB Total Entries         001A (26)\n+50AD Size of Central Dir   000009C3 (2499)\n+50B1 Offset to Central Dir 000046DE (18142)\n+50B5 Comment Length        0000 (0)\n #\n # Error Count: 9\n # Warning Count: 61\n #\n # Done\n"}, {"source1": "META-INF/MANIFEST.MF", "source2": "META-INF/MANIFEST.MF", "unified_diff": "@@ -1,6 +1,6 @@\n Manifest-Version: 1.0\r\n Archiver-Version: Plexus Archiver\r\n-Built-By: runner\r\n-Created-By: Apache Maven 3.8.8\r\n-Build-Jdk: 1.8.0_392\r\n+Created-By: Apache Maven 3.6.3\r\n+Built-By: aman\r\n+Build-Jdk: 17.0.8.1\r\n \r\n"}, {"source1": "dev/langchain4j/model/vertexai/FinishReasonMapper$1.class", "source2": "dev/langchain4j/model/vertexai/FinishReasonMapper$1.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,94 +1,93 @@\n-  SHA-256 checksum ba7d2a773a934f39c1bcbe33903f4557913c05f35109492e2354b5314b548016\n+  SHA-256 checksum 5e05cba5abd8b9b8dafa0cf3ad82ea18d674087123d84d400c8c5aec35dfa42f\n   Compiled from \"FinishReasonMapper.java\"\n class dev.langchain4j.model.vertexai.FinishReasonMapper$1\n   minor version: 0\n   major version: 52\n   flags: (0x1020) ACC_SUPER, ACC_SYNTHETIC\n   this_class: #8                          // dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  super_class: #9                         // java/lang/Object\n+  super_class: #29                        // java/lang/Object\n   interfaces: 0, fields: 1, methods: 1, attributes: 3\n Constant pool:\n-   #1 = Methodref          #23.#24        // com/google/cloud/vertexai/api/Candidate$FinishReason.values:()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #2 = Fieldref           #8.#25         // dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-   #3 = Fieldref           #23.#26        // com/google/cloud/vertexai/api/Candidate$FinishReason.STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #4 = Methodref          #23.#27        // com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n-   #5 = Class              #28            // java/lang/NoSuchFieldError\n-   #6 = Fieldref           #23.#29        // com/google/cloud/vertexai/api/Candidate$FinishReason.MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #7 = Fieldref           #23.#30        // com/google/cloud/vertexai/api/Candidate$FinishReason.SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #8 = Class              #31            // dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-   #9 = Class              #33            // java/lang/Object\n-  #10 = Utf8               $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason\n-  #11 = Utf8               [I\n-  #12 = Utf8               <clinit>\n-  #13 = Utf8               ()V\n-  #14 = Utf8               Code\n-  #15 = Utf8               LineNumberTable\n-  #16 = Utf8               LocalVariableTable\n-  #17 = Utf8               StackMapTable\n-  #18 = Class              #28            // java/lang/NoSuchFieldError\n-  #19 = Utf8               SourceFile\n-  #20 = Utf8               FinishReasonMapper.java\n-  #21 = Utf8               EnclosingMethod\n-  #22 = Class              #34            // dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #23 = Class              #36            // com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #24 = NameAndType        #38:#39        // values:()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #25 = NameAndType        #10:#11        // $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-  #26 = NameAndType        #40:#41        // STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #27 = NameAndType        #42:#43        // ordinal:()I\n-  #28 = Utf8               java/lang/NoSuchFieldError\n-  #29 = NameAndType        #44:#41        // MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #30 = NameAndType        #45:#41        // SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #31 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  #32 = Utf8               InnerClasses\n-  #33 = Utf8               java/lang/Object\n-  #34 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #35 = Class              #46            // com/google/cloud/vertexai/api/Candidate\n-  #36 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #37 = Utf8               FinishReason\n-  #38 = Utf8               values\n-  #39 = Utf8               ()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #40 = Utf8               STOP\n-  #41 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #42 = Utf8               ordinal\n-  #43 = Utf8               ()I\n-  #44 = Utf8               MAX_TOKENS\n-  #45 = Utf8               SAFETY\n-  #46 = Utf8               com/google/cloud/vertexai/api/Candidate\n+   #1 = Methodref          #2.#3          // com/google/cloud/vertexai/api/Candidate$FinishReason.values:()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #2 = Class              #4             // com/google/cloud/vertexai/api/Candidate$FinishReason\n+   #3 = NameAndType        #5:#6          // values:()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #4 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n+   #5 = Utf8               values\n+   #6 = Utf8               ()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/FinishReasonMapper$1\n+   #9 = NameAndType        #11:#12        // $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+  #10 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper$1\n+  #11 = Utf8               $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason\n+  #12 = Utf8               [I\n+  #13 = Fieldref           #2.#14         // com/google/cloud/vertexai/api/Candidate$FinishReason.STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #14 = NameAndType        #15:#16        // STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #15 = Utf8               STOP\n+  #16 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #17 = Methodref          #2.#18         // com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+  #18 = NameAndType        #19:#20        // ordinal:()I\n+  #19 = Utf8               ordinal\n+  #20 = Utf8               ()I\n+  #21 = Class              #22            // java/lang/NoSuchFieldError\n+  #22 = Utf8               java/lang/NoSuchFieldError\n+  #23 = Fieldref           #2.#24         // com/google/cloud/vertexai/api/Candidate$FinishReason.MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #24 = NameAndType        #25:#16        // MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #25 = Utf8               MAX_TOKENS\n+  #26 = Fieldref           #2.#27         // com/google/cloud/vertexai/api/Candidate$FinishReason.SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #27 = NameAndType        #28:#16        // SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #28 = Utf8               SAFETY\n+  #29 = Class              #30            // java/lang/Object\n+  #30 = Utf8               java/lang/Object\n+  #31 = Utf8               <clinit>\n+  #32 = Utf8               ()V\n+  #33 = Utf8               Code\n+  #34 = Utf8               LineNumberTable\n+  #35 = Utf8               LocalVariableTable\n+  #36 = Utf8               StackMapTable\n+  #37 = Utf8               SourceFile\n+  #38 = Utf8               FinishReasonMapper.java\n+  #39 = Utf8               EnclosingMethod\n+  #40 = Class              #41            // dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #41 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #42 = Utf8               InnerClasses\n+  #43 = Class              #44            // com/google/cloud/vertexai/api/Candidate\n+  #44 = Utf8               com/google/cloud/vertexai/api/Candidate\n+  #45 = Utf8               FinishReason\n {\n   static final int[] $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason;\n     descriptor: [I\n     flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC\n \n   static {};\n     descriptor: ()V\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=3, locals=1, args_size=0\n          0: invokestatic  #1                  // Method com/google/cloud/vertexai/api/Candidate$FinishReason.values:()[Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n          3: arraylength\n          4: newarray       int\n-         6: putstatic     #2                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-         9: getstatic     #2                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-        12: getstatic     #3                  // Field com/google/cloud/vertexai/api/Candidate$FinishReason.STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-        15: invokevirtual #4                  // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+         6: putstatic     #7                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+         9: getstatic     #7                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+        12: getstatic     #13                 // Field com/google/cloud/vertexai/api/Candidate$FinishReason.STOP:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+        15: invokevirtual #17                 // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n         18: iconst_1\n         19: iastore\n         20: goto          24\n         23: astore_0\n-        24: getstatic     #2                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-        27: getstatic     #6                  // Field com/google/cloud/vertexai/api/Candidate$FinishReason.MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-        30: invokevirtual #4                  // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+        24: getstatic     #7                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+        27: getstatic     #23                 // Field com/google/cloud/vertexai/api/Candidate$FinishReason.MAX_TOKENS:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+        30: invokevirtual #17                 // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n         33: iconst_2\n         34: iastore\n         35: goto          39\n         38: astore_0\n-        39: getstatic     #2                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-        42: getstatic     #7                  // Field com/google/cloud/vertexai/api/Candidate$FinishReason.SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-        45: invokevirtual #4                  // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+        39: getstatic     #7                  // Field $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+        42: getstatic     #26                 // Field com/google/cloud/vertexai/api/Candidate$FinishReason.SAFETY:Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+        45: invokevirtual #17                 // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n         48: iconst_3\n         49: iastore\n         50: goto          54\n         53: astore_0\n         54: return\n       Exception table:\n          from    to  target type\n@@ -107,11 +106,11 @@\n           stack = [ class java/lang/NoSuchFieldError ]\n         frame_type = 0 /* same */\n         frame_type = 77 /* same_locals_1_stack_item */\n           stack = [ class java/lang/NoSuchFieldError ]\n         frame_type = 0 /* same */\n }\n SourceFile: \"FinishReasonMapper.java\"\n-EnclosingMethod: #22.#0                 // dev.langchain4j.model.vertexai.FinishReasonMapper\n+EnclosingMethod: #40.#0                 // dev.langchain4j.model.vertexai.FinishReasonMapper\n InnerClasses:\n+  public static final #45= #2 of #43;     // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n   static #8;                              // class dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  public static final #37= #23 of #35;    // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n"}]}, {"source1": "dev/langchain4j/model/vertexai/RoleMapper.class", "source2": "dev/langchain4j/model/vertexai/RoleMapper.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,75 +1,75 @@\n-  SHA-256 checksum fa9b3a94de046c52cbcb2fa0eb3542400fe6c638f9b1bffb29d5c96ad5ca8a66\n+  SHA-256 checksum 87989b4f077e7d7649f146f05cb8ab709c0bb6ca8ce365c1d022963bfdb5450b\n   Compiled from \"RoleMapper.java\"\n class dev.langchain4j.model.vertexai.RoleMapper\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #14                         // dev/langchain4j/model/vertexai/RoleMapper\n-  super_class: #15                        // java/lang/Object\n+  this_class: #44                         // dev/langchain4j/model/vertexai/RoleMapper\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 0, methods: 2, attributes: 2\n Constant pool:\n-   #1 = Methodref          #15.#32        // java/lang/Object.\"<init>\":()V\n-   #2 = Fieldref           #16.#33        // dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-   #3 = Methodref          #34.#35        // dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n-   #4 = String             #36            // user\n-   #5 = String             #37            // model\n-   #6 = Class              #38            // java/lang/IllegalArgumentException\n-   #7 = Class              #39            // java/lang/StringBuilder\n-   #8 = Methodref          #7.#32         // java/lang/StringBuilder.\"<init>\":()V\n-   #9 = Methodref          #7.#40         // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #10 = String             #41            //  is not allowed.\n-  #11 = Methodref          #7.#42         // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #12 = Methodref          #7.#43         // java/lang/StringBuilder.toString:()Ljava/lang/String;\n-  #13 = Methodref          #6.#44         // java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n-  #14 = Class              #45            // dev/langchain4j/model/vertexai/RoleMapper\n-  #15 = Class              #46            // java/lang/Object\n-  #16 = Class              #47            // dev/langchain4j/model/vertexai/RoleMapper$1\n-  #17 = Utf8               InnerClasses\n-  #18 = Utf8               <init>\n-  #19 = Utf8               ()V\n-  #20 = Utf8               Code\n-  #21 = Utf8               LineNumberTable\n-  #22 = Utf8               LocalVariableTable\n-  #23 = Utf8               this\n-  #24 = Utf8               Ldev/langchain4j/model/vertexai/RoleMapper;\n-  #25 = Utf8               map\n-  #26 = Utf8               (Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n-  #27 = Utf8               type\n-  #28 = Utf8               Ldev/langchain4j/data/message/ChatMessageType;\n-  #29 = Utf8               StackMapTable\n-  #30 = Utf8               SourceFile\n-  #31 = Utf8               RoleMapper.java\n-  #32 = NameAndType        #18:#19        // \"<init>\":()V\n-  #33 = NameAndType        #48:#49        // $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-  #34 = Class              #50            // dev/langchain4j/data/message/ChatMessageType\n-  #35 = NameAndType        #51:#52        // ordinal:()I\n-  #36 = Utf8               user\n-  #37 = Utf8               model\n-  #38 = Utf8               java/lang/IllegalArgumentException\n-  #39 = Utf8               java/lang/StringBuilder\n-  #40 = NameAndType        #53:#54        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #41 = Utf8                is not allowed.\n-  #42 = NameAndType        #53:#55        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #43 = NameAndType        #56:#57        // toString:()Ljava/lang/String;\n-  #44 = NameAndType        #18:#58        // \"<init>\":(Ljava/lang/String;)V\n+   #1 = Methodref          #2.#3          // java/lang/Object.\"<init>\":()V\n+   #2 = Class              #4             // java/lang/Object\n+   #3 = NameAndType        #5:#6          // \"<init>\":()V\n+   #4 = Utf8               java/lang/Object\n+   #5 = Utf8               <init>\n+   #6 = Utf8               ()V\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/RoleMapper$1\n+   #9 = NameAndType        #11:#12        // $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+  #10 = Utf8               dev/langchain4j/model/vertexai/RoleMapper$1\n+  #11 = Utf8               $SwitchMap$dev$langchain4j$data$message$ChatMessageType\n+  #12 = Utf8               [I\n+  #13 = Methodref          #14.#15        // dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n+  #14 = Class              #16            // dev/langchain4j/data/message/ChatMessageType\n+  #15 = NameAndType        #17:#18        // ordinal:()I\n+  #16 = Utf8               dev/langchain4j/data/message/ChatMessageType\n+  #17 = Utf8               ordinal\n+  #18 = Utf8               ()I\n+  #19 = String             #20            // user\n+  #20 = Utf8               user\n+  #21 = String             #22            // model\n+  #22 = Utf8               model\n+  #23 = Class              #24            // java/lang/IllegalArgumentException\n+  #24 = Utf8               java/lang/IllegalArgumentException\n+  #25 = Class              #26            // java/lang/StringBuilder\n+  #26 = Utf8               java/lang/StringBuilder\n+  #27 = Methodref          #25.#3         // java/lang/StringBuilder.\"<init>\":()V\n+  #28 = Methodref          #25.#29        // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #29 = NameAndType        #30:#31        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #30 = Utf8               append\n+  #31 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #32 = String             #33            //  is not allowed.\n+  #33 = Utf8                is not allowed.\n+  #34 = Methodref          #25.#35        // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #35 = NameAndType        #30:#36        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #36 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #37 = Methodref          #25.#38        // java/lang/StringBuilder.toString:()Ljava/lang/String;\n+  #38 = NameAndType        #39:#40        // toString:()Ljava/lang/String;\n+  #39 = Utf8               toString\n+  #40 = Utf8               ()Ljava/lang/String;\n+  #41 = Methodref          #23.#42        // java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n+  #42 = NameAndType        #5:#43         // \"<init>\":(Ljava/lang/String;)V\n+  #43 = Utf8               (Ljava/lang/String;)V\n+  #44 = Class              #45            // dev/langchain4j/model/vertexai/RoleMapper\n   #45 = Utf8               dev/langchain4j/model/vertexai/RoleMapper\n-  #46 = Utf8               java/lang/Object\n-  #47 = Utf8               dev/langchain4j/model/vertexai/RoleMapper$1\n-  #48 = Utf8               $SwitchMap$dev$langchain4j$data$message$ChatMessageType\n-  #49 = Utf8               [I\n-  #50 = Utf8               dev/langchain4j/data/message/ChatMessageType\n-  #51 = Utf8               ordinal\n-  #52 = Utf8               ()I\n-  #53 = Utf8               append\n-  #54 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #55 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #56 = Utf8               toString\n-  #57 = Utf8               ()Ljava/lang/String;\n-  #58 = Utf8               (Ljava/lang/String;)V\n+  #46 = Utf8               Code\n+  #47 = Utf8               LineNumberTable\n+  #48 = Utf8               LocalVariableTable\n+  #49 = Utf8               this\n+  #50 = Utf8               Ldev/langchain4j/model/vertexai/RoleMapper;\n+  #51 = Utf8               map\n+  #52 = Utf8               (Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n+  #53 = Utf8               type\n+  #54 = Utf8               Ldev/langchain4j/data/message/ChatMessageType;\n+  #55 = Utf8               StackMapTable\n+  #56 = Utf8               SourceFile\n+  #57 = Utf8               RoleMapper.java\n+  #58 = Utf8               InnerClasses\n {\n   dev.langchain4j.model.vertexai.RoleMapper();\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n@@ -82,38 +82,38 @@\n             0       5     0  this   Ldev/langchain4j/model/vertexai/RoleMapper;\n \n   static java.lang.String map(dev.langchain4j.data.message.ChatMessageType);\n     descriptor: (Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=4, locals=1, args_size=1\n-         0: getstatic     #2                  // Field dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+         0: getstatic     #7                  // Field dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n          3: aload_0\n-         4: invokevirtual #3                  // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n+         4: invokevirtual #13                 // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n          7: iaload\n          8: lookupswitch  { // 2\n                        1: 36\n                        2: 39\n                  default: 42\n             }\n-        36: ldc           #4                  // String user\n+        36: ldc           #19                 // String user\n         38: areturn\n-        39: ldc           #5                  // String model\n+        39: ldc           #21                 // String model\n         41: areturn\n-        42: new           #6                  // class java/lang/IllegalArgumentException\n+        42: new           #23                 // class java/lang/IllegalArgumentException\n         45: dup\n-        46: new           #7                  // class java/lang/StringBuilder\n+        46: new           #25                 // class java/lang/StringBuilder\n         49: dup\n-        50: invokespecial #8                  // Method java/lang/StringBuilder.\"<init>\":()V\n+        50: invokespecial #27                 // Method java/lang/StringBuilder.\"<init>\":()V\n         53: aload_0\n-        54: invokevirtual #9                  // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        57: ldc           #10                 // String  is not allowed.\n-        59: invokevirtual #11                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        62: invokevirtual #12                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n-        65: invokespecial #13                 // Method java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n+        54: invokevirtual #28                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        57: ldc           #32                 // String  is not allowed.\n+        59: invokevirtual #34                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        62: invokevirtual #37                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n+        65: invokespecial #41                 // Method java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n         68: athrow\n       LineNumberTable:\n         line 8: 0\n         line 10: 36\n         line 12: 39\n         line 14: 42\n       LocalVariableTable:\n@@ -122,8 +122,8 @@\n       StackMapTable: number_of_entries = 3\n         frame_type = 36 /* same */\n         frame_type = 2 /* same */\n         frame_type = 2 /* same */\n }\n SourceFile: \"RoleMapper.java\"\n InnerClasses:\n-  static #16;                             // class dev/langchain4j/model/vertexai/RoleMapper$1\n+  static #8;                              // class dev/langchain4j/model/vertexai/RoleMapper$1\n"}]}, {"source1": "dev/langchain4j/model/vertexai/FinishReasonMapper.class", "source2": "dev/langchain4j/model/vertexai/FinishReasonMapper.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,68 +1,68 @@\n-  SHA-256 checksum 10a626e2f85575ad0b67db890ccf55a90a325bf981c7988a31e47c4d82d1e821\n+  SHA-256 checksum 78175f5cc219eca8f749892b22280d0abb69c0a156411f5b4daf222b6a0bd3f5\n   Compiled from \"FinishReasonMapper.java\"\n class dev.langchain4j.model.vertexai.FinishReasonMapper\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #8                          // dev/langchain4j/model/vertexai/FinishReasonMapper\n-  super_class: #9                         // java/lang/Object\n+  this_class: #34                         // dev/langchain4j/model/vertexai/FinishReasonMapper\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 0, methods: 2, attributes: 2\n Constant pool:\n-   #1 = Methodref          #9.#28         // java/lang/Object.\"<init>\":()V\n-   #2 = Fieldref           #10.#29        // dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-   #3 = Methodref          #20.#30        // com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n-   #4 = Fieldref           #31.#32        // dev/langchain4j/model/output/FinishReason.STOP:Ldev/langchain4j/model/output/FinishReason;\n-   #5 = Fieldref           #31.#33        // dev/langchain4j/model/output/FinishReason.LENGTH:Ldev/langchain4j/model/output/FinishReason;\n-   #6 = Fieldref           #31.#34        // dev/langchain4j/model/output/FinishReason.CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n-   #7 = Fieldref           #31.#35        // dev/langchain4j/model/output/FinishReason.OTHER:Ldev/langchain4j/model/output/FinishReason;\n-   #8 = Class              #36            // dev/langchain4j/model/vertexai/FinishReasonMapper\n-   #9 = Class              #37            // java/lang/Object\n-  #10 = Class              #38            // dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  #11 = Utf8               InnerClasses\n-  #12 = Utf8               <init>\n-  #13 = Utf8               ()V\n-  #14 = Utf8               Code\n-  #15 = Utf8               LineNumberTable\n-  #16 = Utf8               LocalVariableTable\n-  #17 = Utf8               this\n-  #18 = Utf8               Ldev/langchain4j/model/vertexai/FinishReasonMapper;\n-  #19 = Utf8               map\n-  #20 = Class              #40            // com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #21 = Utf8               FinishReason\n-  #22 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-  #23 = Utf8               finishReason\n-  #24 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #25 = Utf8               StackMapTable\n-  #26 = Utf8               SourceFile\n-  #27 = Utf8               FinishReasonMapper.java\n-  #28 = NameAndType        #12:#13        // \"<init>\":()V\n-  #29 = NameAndType        #41:#42        // $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n-  #30 = NameAndType        #43:#44        // ordinal:()I\n-  #31 = Class              #45            // dev/langchain4j/model/output/FinishReason\n-  #32 = NameAndType        #46:#47        // STOP:Ldev/langchain4j/model/output/FinishReason;\n-  #33 = NameAndType        #48:#47        // LENGTH:Ldev/langchain4j/model/output/FinishReason;\n-  #34 = NameAndType        #49:#47        // CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n-  #35 = NameAndType        #50:#47        // OTHER:Ldev/langchain4j/model/output/FinishReason;\n-  #36 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #37 = Utf8               java/lang/Object\n-  #38 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  #39 = Class              #51            // com/google/cloud/vertexai/api/Candidate\n-  #40 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #41 = Utf8               $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason\n-  #42 = Utf8               [I\n-  #43 = Utf8               ordinal\n-  #44 = Utf8               ()I\n-  #45 = Utf8               dev/langchain4j/model/output/FinishReason\n-  #46 = Utf8               STOP\n-  #47 = Utf8               Ldev/langchain4j/model/output/FinishReason;\n-  #48 = Utf8               LENGTH\n-  #49 = Utf8               CONTENT_FILTER\n-  #50 = Utf8               OTHER\n-  #51 = Utf8               com/google/cloud/vertexai/api/Candidate\n+   #1 = Methodref          #2.#3          // java/lang/Object.\"<init>\":()V\n+   #2 = Class              #4             // java/lang/Object\n+   #3 = NameAndType        #5:#6          // \"<init>\":()V\n+   #4 = Utf8               java/lang/Object\n+   #5 = Utf8               <init>\n+   #6 = Utf8               ()V\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/FinishReasonMapper$1\n+   #9 = NameAndType        #11:#12        // $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+  #10 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper$1\n+  #11 = Utf8               $SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason\n+  #12 = Utf8               [I\n+  #13 = Methodref          #14.#15        // com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+  #14 = Class              #16            // com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #15 = NameAndType        #17:#18        // ordinal:()I\n+  #16 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #17 = Utf8               ordinal\n+  #18 = Utf8               ()I\n+  #19 = Fieldref           #20.#21        // dev/langchain4j/model/output/FinishReason.STOP:Ldev/langchain4j/model/output/FinishReason;\n+  #20 = Class              #22            // dev/langchain4j/model/output/FinishReason\n+  #21 = NameAndType        #23:#24        // STOP:Ldev/langchain4j/model/output/FinishReason;\n+  #22 = Utf8               dev/langchain4j/model/output/FinishReason\n+  #23 = Utf8               STOP\n+  #24 = Utf8               Ldev/langchain4j/model/output/FinishReason;\n+  #25 = Fieldref           #20.#26        // dev/langchain4j/model/output/FinishReason.LENGTH:Ldev/langchain4j/model/output/FinishReason;\n+  #26 = NameAndType        #27:#24        // LENGTH:Ldev/langchain4j/model/output/FinishReason;\n+  #27 = Utf8               LENGTH\n+  #28 = Fieldref           #20.#29        // dev/langchain4j/model/output/FinishReason.CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n+  #29 = NameAndType        #30:#24        // CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n+  #30 = Utf8               CONTENT_FILTER\n+  #31 = Fieldref           #20.#32        // dev/langchain4j/model/output/FinishReason.OTHER:Ldev/langchain4j/model/output/FinishReason;\n+  #32 = NameAndType        #33:#24        // OTHER:Ldev/langchain4j/model/output/FinishReason;\n+  #33 = Utf8               OTHER\n+  #34 = Class              #35            // dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #35 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #36 = Utf8               Code\n+  #37 = Utf8               LineNumberTable\n+  #38 = Utf8               LocalVariableTable\n+  #39 = Utf8               this\n+  #40 = Utf8               Ldev/langchain4j/model/vertexai/FinishReasonMapper;\n+  #41 = Utf8               map\n+  #42 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+  #43 = Utf8               finishReason\n+  #44 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #45 = Utf8               StackMapTable\n+  #46 = Utf8               SourceFile\n+  #47 = Utf8               FinishReasonMapper.java\n+  #48 = Utf8               InnerClasses\n+  #49 = Class              #50            // com/google/cloud/vertexai/api/Candidate\n+  #50 = Utf8               com/google/cloud/vertexai/api/Candidate\n+  #51 = Utf8               FinishReason\n {\n   dev.langchain4j.model.vertexai.FinishReasonMapper();\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n@@ -75,31 +75,31 @@\n             0       5     0  this   Ldev/langchain4j/model/vertexai/FinishReasonMapper;\n \n   static dev.langchain4j.model.output.FinishReason map(com.google.cloud.vertexai.api.Candidate$FinishReason);\n     descriptor: (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=2, locals=1, args_size=1\n-         0: getstatic     #2                  // Field dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n+         0: getstatic     #7                  // Field dev/langchain4j/model/vertexai/FinishReasonMapper$1.$SwitchMap$com$google$cloud$vertexai$api$Candidate$FinishReason:[I\n          3: aload_0\n-         4: invokevirtual #3                  // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n+         4: invokevirtual #13                 // Method com/google/cloud/vertexai/api/Candidate$FinishReason.ordinal:()I\n          7: iaload\n          8: tableswitch   { // 1 to 3\n                        1: 36\n                        2: 40\n                        3: 44\n                  default: 48\n             }\n-        36: getstatic     #4                  // Field dev/langchain4j/model/output/FinishReason.STOP:Ldev/langchain4j/model/output/FinishReason;\n+        36: getstatic     #19                 // Field dev/langchain4j/model/output/FinishReason.STOP:Ldev/langchain4j/model/output/FinishReason;\n         39: areturn\n-        40: getstatic     #5                  // Field dev/langchain4j/model/output/FinishReason.LENGTH:Ldev/langchain4j/model/output/FinishReason;\n+        40: getstatic     #25                 // Field dev/langchain4j/model/output/FinishReason.LENGTH:Ldev/langchain4j/model/output/FinishReason;\n         43: areturn\n-        44: getstatic     #6                  // Field dev/langchain4j/model/output/FinishReason.CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n+        44: getstatic     #28                 // Field dev/langchain4j/model/output/FinishReason.CONTENT_FILTER:Ldev/langchain4j/model/output/FinishReason;\n         47: areturn\n-        48: getstatic     #7                  // Field dev/langchain4j/model/output/FinishReason.OTHER:Ldev/langchain4j/model/output/FinishReason;\n+        48: getstatic     #31                 // Field dev/langchain4j/model/output/FinishReason.OTHER:Ldev/langchain4j/model/output/FinishReason;\n         51: areturn\n       LineNumberTable:\n         line 9: 0\n         line 11: 36\n         line 13: 40\n         line 15: 44\n         line 17: 48\n@@ -110,9 +110,9 @@\n         frame_type = 36 /* same */\n         frame_type = 3 /* same */\n         frame_type = 3 /* same */\n         frame_type = 3 /* same */\n }\n SourceFile: \"FinishReasonMapper.java\"\n InnerClasses:\n-  static #10;                             // class dev/langchain4j/model/vertexai/FinishReasonMapper$1\n-  public static final #21= #20 of #39;    // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n+  static #8;                              // class dev/langchain4j/model/vertexai/FinishReasonMapper$1\n+  public static final #51= #14 of #49;    // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n"}]}, {"source1": "dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class", "source2": "dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,459 +1,409 @@\n-  SHA-256 checksum 84c95aaa11b585f69bf136f38879218045230e26a5f57cb33c1dbb8519487d76\n+  SHA-256 checksum 5d8794321367d916ac6d8a0ad682506fe5ad4f991d97118a6dcf696417a39a18\n   Compiled from \"VertexAiGeminiStreamingChatModel.java\"\n public class dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel implements dev.langchain4j.model.chat.StreamingChatLanguageModel\n   minor version: 0\n   major version: 52\n   flags: (0x0021) ACC_PUBLIC, ACC_SUPER\n-  this_class: #49                         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  super_class: #50                        // java/lang/Object\n+  this_class: #32                         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  super_class: #2                         // java/lang/Object\n   interfaces: 1, fields: 2, methods: 5, attributes: 3\n Constant pool:\n-    #1 = Methodref          #50.#122      // java/lang/Object.\"<init>\":()V\n-    #2 = Class              #123          // com/google/cloud/vertexai/VertexAI\n-    #3 = String             #69           // project\n-    #4 = Methodref          #124.#125     // dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-    #5 = String             #71           // location\n-    #6 = Class              #126          // java/lang/String\n-    #7 = Methodref          #2.#127       // com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-    #8 = Class              #128          // com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-    #9 = String             #72           // modelName\n-   #10 = Methodref          #8.#129       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-   #11 = Fieldref           #49.#130      // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-   #12 = Methodref          #2.#131       // com/google/cloud/vertexai/VertexAI.close:()V\n-   #13 = Class              #132          // java/lang/Throwable\n-   #14 = Methodref          #13.#133      // java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-   #15 = Class              #134          // java/io/IOException\n-   #16 = Class              #135          // java/lang/RuntimeException\n-   #17 = Methodref          #16.#136      // java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n-   #18 = Methodref          #30.#137      // com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #19 = Methodref          #138.#139     // java/lang/Float.floatValue:()F\n-   #20 = Methodref          #80.#140      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #21 = Methodref          #141.#142     // java/lang/Integer.intValue:()I\n-   #22 = Methodref          #80.#143      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #23 = Methodref          #80.#144      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #24 = Methodref          #80.#145      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #25 = Methodref          #80.#146      // com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #26 = Fieldref           #49.#147      // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #27 = String             #54           // generativeModel\n-   #28 = Methodref          #124.#148     // dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-   #29 = String             #56           // generationConfig\n-   #30 = Class              #149          // com/google/cloud/vertexai/api/GenerationConfig\n-   #31 = Methodref          #150.#151     // dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n-   #32 = Class              #152          // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-   #33 = Methodref          #32.#122      // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.\"<init>\":()V\n-   #34 = Methodref          #8.#153       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n-   #35 = Methodref          #154.#155     // com/google/cloud/vertexai/generativeai/preview/ResponseStream.stream:()Ljava/util/stream/Stream;\n-   #36 = InvokeDynamic      #0:#161       // #0:accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n-   #37 = InterfaceMethodref #162.#163     // java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V\n-   #38 = Methodref          #32.#164      // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.build:()Ldev/langchain4j/model/output/Response;\n-   #39 = InterfaceMethodref #165.#166     // dev/langchain4j/model/StreamingResponseHandler.onComplete:(Ldev/langchain4j/model/output/Response;)V\n-   #40 = Class              #167          // java/lang/Exception\n-   #41 = InterfaceMethodref #165.#168     // dev/langchain4j/model/StreamingResponseHandler.onError:(Ljava/lang/Throwable;)V\n-   #42 = Class              #169          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-   #43 = InvokeDynamic      #1:#173       // #1:get:()Ljava/util/function/Supplier;\n-   #44 = Methodref          #174.#175     // dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-   #45 = Class              #176          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-   #46 = Methodref          #32.#177      // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-   #47 = Methodref          #178.#179     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-   #48 = InterfaceMethodref #165.#180     // dev/langchain4j/model/StreamingResponseHandler.onNext:(Ljava/lang/String;)V\n-   #49 = Class              #181          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-   #50 = Class              #182          // java/lang/Object\n-   #51 = Class              #183          // dev/langchain4j/model/chat/StreamingChatLanguageModel\n-   #52 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n-   #53 = Utf8               InnerClasses\n-   #54 = Utf8               generativeModel\n-   #55 = Utf8               Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-   #56 = Utf8               generationConfig\n-   #57 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #58 = Utf8               <init>\n-   #59 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n-   #60 = Utf8               Code\n-   #61 = Utf8               LineNumberTable\n-   #62 = Utf8               LocalVariableTable\n-   #63 = Utf8               vertexAI\n-   #64 = Utf8               Lcom/google/cloud/vertexai/VertexAI;\n-   #65 = Utf8               e\n-   #66 = Utf8               Ljava/io/IOException;\n-   #67 = Utf8               this\n-   #68 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n-   #69 = Utf8               project\n-   #70 = Utf8               Ljava/lang/String;\n-   #71 = Utf8               location\n-   #72 = Utf8               modelName\n-   #73 = Utf8               temperature\n-   #74 = Utf8               Ljava/lang/Float;\n-   #75 = Utf8               maxOutputTokens\n-   #76 = Utf8               Ljava/lang/Integer;\n-   #77 = Utf8               topK\n-   #78 = Utf8               topP\n-   #79 = Utf8               generationConfigBuilder\n-   #80 = Class              #184          // com/google/cloud/vertexai/api/GenerationConfig$Builder\n-   #81 = Utf8               Builder\n-   #82 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #83 = Utf8               StackMapTable\n-   #84 = Class              #181          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-   #85 = Class              #126          // java/lang/String\n-   #86 = Class              #185          // java/lang/Float\n-   #87 = Class              #186          // java/lang/Integer\n-   #88 = Class              #123          // com/google/cloud/vertexai/VertexAI\n-   #89 = Class              #132          // java/lang/Throwable\n-   #90 = Class              #134          // java/io/IOException\n-   #91 = Class              #184          // com/google/cloud/vertexai/api/GenerationConfig$Builder\n-   #92 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;)V\n-   #93 = Utf8               generate\n-   #94 = Utf8               (Ljava/util/List;Ldev/langchain4j/model/StreamingResponseHandler;)V\n-   #95 = Utf8               exception\n-   #96 = Utf8               Ljava/lang/Exception;\n-   #97 = Utf8               messages\n-   #98 = Utf8               Ljava/util/List;\n-   #99 = Utf8               handler\n-  #100 = Utf8               Ldev/langchain4j/model/StreamingResponseHandler;\n-  #101 = Utf8               contents\n-  #102 = Utf8               responseBuilder\n-  #103 = Utf8               Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n-  #104 = Utf8               LocalVariableTypeTable\n-  #105 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n-  #106 = Utf8               Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;\n-  #107 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n-  #108 = Class              #187          // java/util/List\n-  #109 = Class              #188          // dev/langchain4j/model/StreamingResponseHandler\n-  #110 = Class              #152          // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-  #111 = Class              #167          // java/lang/Exception\n-  #112 = Utf8               Signature\n-  #113 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;)V\n-  #114 = Utf8               builder\n-  #115 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #116 = Utf8               lambda$generate$0\n-  #117 = Utf8               (Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #118 = Utf8               partialResponse\n-  #119 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #120 = Utf8               SourceFile\n-  #121 = Utf8               VertexAiGeminiStreamingChatModel.java\n-  #122 = NameAndType        #58:#189      // \"<init>\":()V\n-  #123 = Utf8               com/google/cloud/vertexai/VertexAI\n-  #124 = Class              #190          // dev/langchain4j/internal/ValidationUtils\n-  #125 = NameAndType        #191:#192     // ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-  #126 = Utf8               java/lang/String\n-  #127 = NameAndType        #58:#193      // \"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-  #128 = Utf8               com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-  #129 = NameAndType        #58:#194      // \"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-  #130 = NameAndType        #54:#55       // generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-  #131 = NameAndType        #195:#189     // close:()V\n-  #132 = Utf8               java/lang/Throwable\n-  #133 = NameAndType        #196:#197     // addSuppressed:(Ljava/lang/Throwable;)V\n-  #134 = Utf8               java/io/IOException\n-  #135 = Utf8               java/lang/RuntimeException\n-  #136 = NameAndType        #58:#197      // \"<init>\":(Ljava/lang/Throwable;)V\n-  #137 = NameAndType        #198:#199     // newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #138 = Class              #185          // java/lang/Float\n-  #139 = NameAndType        #200:#201     // floatValue:()F\n-  #140 = NameAndType        #202:#203     // setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #141 = Class              #186          // java/lang/Integer\n-  #142 = NameAndType        #204:#205     // intValue:()I\n-  #143 = NameAndType        #206:#207     // setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #144 = NameAndType        #208:#203     // setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #145 = NameAndType        #209:#203     // setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #146 = NameAndType        #210:#211     // build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #147 = NameAndType        #56:#57       // generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #148 = NameAndType        #212:#213     // ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-  #149 = Utf8               com/google/cloud/vertexai/api/GenerationConfig\n-  #150 = Class              #214          // dev/langchain4j/model/vertexai/ContentsMapper\n-  #151 = NameAndType        #215:#216     // map:(Ljava/util/List;)Ljava/util/List;\n-  #152 = Utf8               dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-  #153 = NameAndType        #217:#218     // generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n-  #154 = Class              #219          // com/google/cloud/vertexai/generativeai/preview/ResponseStream\n-  #155 = NameAndType        #220:#221     // stream:()Ljava/util/stream/Stream;\n-  #156 = Utf8               BootstrapMethods\n-  #157 = MethodHandle       6:#222        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #158 = MethodType         #223          //  (Ljava/lang/Object;)V\n-  #159 = MethodHandle       6:#224        // REF_invokeStatic dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #160 = MethodType         #225          //  (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #161 = NameAndType        #226:#227     // accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n-  #162 = Class              #228          // java/util/stream/Stream\n-  #163 = NameAndType        #229:#230     // forEach:(Ljava/util/function/Consumer;)V\n-  #164 = NameAndType        #210:#231     // build:()Ldev/langchain4j/model/output/Response;\n-  #165 = Class              #188          // dev/langchain4j/model/StreamingResponseHandler\n-  #166 = NameAndType        #232:#233     // onComplete:(Ldev/langchain4j/model/output/Response;)V\n-  #167 = Utf8               java/lang/Exception\n-  #168 = NameAndType        #234:#197     // onError:(Ljava/lang/Throwable;)V\n-  #169 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-  #170 = MethodType         #235          //  ()Ljava/lang/Object;\n-  #171 = MethodHandle       8:#236        // REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n-  #172 = MethodType         #115          //  ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #173 = NameAndType        #237:#238     // get:()Ljava/util/function/Supplier;\n-  #174 = Class              #239          // dev/langchain4j/spi/ServiceHelper\n-  #175 = NameAndType        #240:#241     // loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #176 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-  #177 = NameAndType        #242:#225     // append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #178 = Class              #243          // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-  #179 = NameAndType        #244:#245     // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-  #180 = NameAndType        #246:#247     // onNext:(Ljava/lang/String;)V\n-  #181 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  #182 = Utf8               java/lang/Object\n-  #183 = Utf8               dev/langchain4j/model/chat/StreamingChatLanguageModel\n-  #184 = Utf8               com/google/cloud/vertexai/api/GenerationConfig$Builder\n-  #185 = Utf8               java/lang/Float\n-  #186 = Utf8               java/lang/Integer\n-  #187 = Utf8               java/util/List\n-  #188 = Utf8               dev/langchain4j/model/StreamingResponseHandler\n-  #189 = Utf8               ()V\n-  #190 = Utf8               dev/langchain4j/internal/ValidationUtils\n-  #191 = Utf8               ensureNotBlank\n-  #192 = Utf8               (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-  #193 = Utf8               (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-  #194 = Utf8               (Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-  #195 = Utf8               close\n-  #196 = Utf8               addSuppressed\n-  #197 = Utf8               (Ljava/lang/Throwable;)V\n-  #198 = Utf8               newBuilder\n-  #199 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #200 = Utf8               floatValue\n-  #201 = Utf8               ()F\n-  #202 = Utf8               setTemperature\n-  #203 = Utf8               (F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #204 = Utf8               intValue\n-  #205 = Utf8               ()I\n-  #206 = Utf8               setMaxOutputTokens\n-  #207 = Utf8               (I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #208 = Utf8               setTopK\n-  #209 = Utf8               setTopP\n-  #210 = Utf8               build\n-  #211 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #212 = Utf8               ensureNotNull\n-  #213 = Utf8               (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-  #214 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n-  #215 = Utf8               map\n-  #216 = Utf8               (Ljava/util/List;)Ljava/util/List;\n-  #217 = Utf8               generateContentStream\n-  #218 = Utf8               (Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n-  #219 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseStream\n-  #220 = Utf8               stream\n-  #221 = Utf8               ()Ljava/util/stream/Stream;\n-  #222 = Methodref          #248.#249     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #223 = Utf8               (Ljava/lang/Object;)V\n-  #224 = Methodref          #49.#250      // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #225 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #226 = Utf8               accept\n-  #227 = Utf8               (Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n-  #228 = Utf8               java/util/stream/Stream\n-  #229 = Utf8               forEach\n-  #230 = Utf8               (Ljava/util/function/Consumer;)V\n-  #231 = Utf8               ()Ldev/langchain4j/model/output/Response;\n-  #232 = Utf8               onComplete\n-  #233 = Utf8               (Ldev/langchain4j/model/output/Response;)V\n-  #234 = Utf8               onError\n-  #235 = Utf8               ()Ljava/lang/Object;\n-  #236 = Methodref          #45.#122      // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n-  #237 = Utf8               get\n-  #238 = Utf8               ()Ljava/util/function/Supplier;\n-  #239 = Utf8               dev/langchain4j/spi/ServiceHelper\n-  #240 = Utf8               loadFactoryService\n-  #241 = Utf8               (Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #242 = Utf8               append\n-  #243 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-  #244 = Utf8               getText\n-  #245 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-  #246 = Utf8               onNext\n-  #247 = Utf8               (Ljava/lang/String;)V\n-  #248 = Class              #251          // java/lang/invoke/LambdaMetafactory\n-  #249 = NameAndType        #252:#255     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #250 = NameAndType        #116:#117     // lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  #251 = Utf8               java/lang/invoke/LambdaMetafactory\n-  #252 = Utf8               metafactory\n-  #253 = Class              #257          // java/lang/invoke/MethodHandles$Lookup\n-  #254 = Utf8               Lookup\n-  #255 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #256 = Class              #258          // java/lang/invoke/MethodHandles\n-  #257 = Utf8               java/lang/invoke/MethodHandles$Lookup\n-  #258 = Utf8               java/lang/invoke/MethodHandles\n+    #1 = Methodref          #2.#3         // java/lang/Object.\"<init>\":()V\n+    #2 = Class              #4            // java/lang/Object\n+    #3 = NameAndType        #5:#6         // \"<init>\":()V\n+    #4 = Utf8               java/lang/Object\n+    #5 = Utf8               <init>\n+    #6 = Utf8               ()V\n+    #7 = Class              #8            // com/google/cloud/vertexai/VertexAI\n+    #8 = Utf8               com/google/cloud/vertexai/VertexAI\n+    #9 = String             #10           // project\n+   #10 = Utf8               project\n+   #11 = Methodref          #12.#13       // dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #12 = Class              #14           // dev/langchain4j/internal/ValidationUtils\n+   #13 = NameAndType        #15:#16       // ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #14 = Utf8               dev/langchain4j/internal/ValidationUtils\n+   #15 = Utf8               ensureNotBlank\n+   #16 = Utf8               (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #17 = String             #18           // location\n+   #18 = Utf8               location\n+   #19 = Class              #20           // java/lang/String\n+   #20 = Utf8               java/lang/String\n+   #21 = Methodref          #7.#22        // com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #22 = NameAndType        #5:#23        // \"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #23 = Utf8               (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #24 = Class              #25           // com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+   #25 = Utf8               com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+   #26 = String             #27           // modelName\n+   #27 = Utf8               modelName\n+   #28 = Methodref          #24.#29       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #29 = NameAndType        #5:#30        // \"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #30 = Utf8               (Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #31 = Fieldref           #32.#33       // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #32 = Class              #34           // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+   #33 = NameAndType        #35:#36       // generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #34 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+   #35 = Utf8               generativeModel\n+   #36 = Utf8               Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #37 = Methodref          #7.#38        // com/google/cloud/vertexai/VertexAI.close:()V\n+   #38 = NameAndType        #39:#6        // close:()V\n+   #39 = Utf8               close\n+   #40 = Class              #41           // java/lang/Throwable\n+   #41 = Utf8               java/lang/Throwable\n+   #42 = Methodref          #40.#43       // java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n+   #43 = NameAndType        #44:#45       // addSuppressed:(Ljava/lang/Throwable;)V\n+   #44 = Utf8               addSuppressed\n+   #45 = Utf8               (Ljava/lang/Throwable;)V\n+   #46 = Class              #47           // java/io/IOException\n+   #47 = Utf8               java/io/IOException\n+   #48 = Class              #49           // java/lang/RuntimeException\n+   #49 = Utf8               java/lang/RuntimeException\n+   #50 = Methodref          #48.#51       // java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n+   #51 = NameAndType        #5:#45        // \"<init>\":(Ljava/lang/Throwable;)V\n+   #52 = Methodref          #53.#54       // com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #53 = Class              #55           // com/google/cloud/vertexai/api/GenerationConfig\n+   #54 = NameAndType        #56:#57       // newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #55 = Utf8               com/google/cloud/vertexai/api/GenerationConfig\n+   #56 = Utf8               newBuilder\n+   #57 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #58 = Methodref          #59.#60       // java/lang/Float.floatValue:()F\n+   #59 = Class              #61           // java/lang/Float\n+   #60 = NameAndType        #62:#63       // floatValue:()F\n+   #61 = Utf8               java/lang/Float\n+   #62 = Utf8               floatValue\n+   #63 = Utf8               ()F\n+   #64 = Methodref          #65.#66       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #65 = Class              #67           // com/google/cloud/vertexai/api/GenerationConfig$Builder\n+   #66 = NameAndType        #68:#69       // setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #67 = Utf8               com/google/cloud/vertexai/api/GenerationConfig$Builder\n+   #68 = Utf8               setTemperature\n+   #69 = Utf8               (F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #70 = Methodref          #71.#72       // java/lang/Integer.intValue:()I\n+   #71 = Class              #73           // java/lang/Integer\n+   #72 = NameAndType        #74:#75       // intValue:()I\n+   #73 = Utf8               java/lang/Integer\n+   #74 = Utf8               intValue\n+   #75 = Utf8               ()I\n+   #76 = Methodref          #65.#77       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #77 = NameAndType        #78:#79       // setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #78 = Utf8               setMaxOutputTokens\n+   #79 = Utf8               (I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #80 = Methodref          #65.#81       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #81 = NameAndType        #82:#69       // setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #82 = Utf8               setTopK\n+   #83 = Methodref          #65.#84       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #84 = NameAndType        #85:#69       // setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #85 = Utf8               setTopP\n+   #86 = Methodref          #65.#87       // com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #87 = NameAndType        #88:#89       // build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #88 = Utf8               build\n+   #89 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #90 = Fieldref           #32.#91       // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #91 = NameAndType        #92:#93       // generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #92 = Utf8               generationConfig\n+   #93 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #94 = String             #35           // generativeModel\n+   #95 = Methodref          #12.#96       // dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+   #96 = NameAndType        #97:#98       // ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+   #97 = Utf8               ensureNotNull\n+   #98 = Utf8               (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+   #99 = String             #92           // generationConfig\n+  #100 = Methodref          #101.#102     // dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n+  #101 = Class              #103          // dev/langchain4j/model/vertexai/ContentsMapper\n+  #102 = NameAndType        #104:#105     // map:(Ljava/util/List;)Ljava/util/List;\n+  #103 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n+  #104 = Utf8               map\n+  #105 = Utf8               (Ljava/util/List;)Ljava/util/List;\n+  #106 = Class              #107          // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+  #107 = Utf8               dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+  #108 = Methodref          #106.#3       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.\"<init>\":()V\n+  #109 = Methodref          #24.#110      // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n+  #110 = NameAndType        #111:#112     // generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n+  #111 = Utf8               generateContentStream\n+  #112 = Utf8               (Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n+  #113 = Methodref          #114.#115     // com/google/cloud/vertexai/generativeai/preview/ResponseStream.stream:()Ljava/util/stream/Stream;\n+  #114 = Class              #116          // com/google/cloud/vertexai/generativeai/preview/ResponseStream\n+  #115 = NameAndType        #117:#118     // stream:()Ljava/util/stream/Stream;\n+  #116 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseStream\n+  #117 = Utf8               stream\n+  #118 = Utf8               ()Ljava/util/stream/Stream;\n+  #119 = InvokeDynamic      #0:#120       // #0:accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n+  #120 = NameAndType        #121:#122     // accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n+  #121 = Utf8               accept\n+  #122 = Utf8               (Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n+  #123 = InterfaceMethodref #124.#125     // java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V\n+  #124 = Class              #126          // java/util/stream/Stream\n+  #125 = NameAndType        #127:#128     // forEach:(Ljava/util/function/Consumer;)V\n+  #126 = Utf8               java/util/stream/Stream\n+  #127 = Utf8               forEach\n+  #128 = Utf8               (Ljava/util/function/Consumer;)V\n+  #129 = Methodref          #106.#130     // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.build:()Ldev/langchain4j/model/output/Response;\n+  #130 = NameAndType        #88:#131      // build:()Ldev/langchain4j/model/output/Response;\n+  #131 = Utf8               ()Ldev/langchain4j/model/output/Response;\n+  #132 = InterfaceMethodref #133.#134     // dev/langchain4j/model/StreamingResponseHandler.onComplete:(Ldev/langchain4j/model/output/Response;)V\n+  #133 = Class              #135          // dev/langchain4j/model/StreamingResponseHandler\n+  #134 = NameAndType        #136:#137     // onComplete:(Ldev/langchain4j/model/output/Response;)V\n+  #135 = Utf8               dev/langchain4j/model/StreamingResponseHandler\n+  #136 = Utf8               onComplete\n+  #137 = Utf8               (Ldev/langchain4j/model/output/Response;)V\n+  #138 = Class              #139          // java/lang/Exception\n+  #139 = Utf8               java/lang/Exception\n+  #140 = InterfaceMethodref #133.#141     // dev/langchain4j/model/StreamingResponseHandler.onError:(Ljava/lang/Throwable;)V\n+  #141 = NameAndType        #142:#45      // onError:(Ljava/lang/Throwable;)V\n+  #142 = Utf8               onError\n+  #143 = Class              #144          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n+  #144 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n+  #145 = InvokeDynamic      #1:#146       // #1:get:()Ljava/util/function/Supplier;\n+  #146 = NameAndType        #147:#148     // get:()Ljava/util/function/Supplier;\n+  #147 = Utf8               get\n+  #148 = Utf8               ()Ljava/util/function/Supplier;\n+  #149 = Methodref          #150.#151     // dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #150 = Class              #152          // dev/langchain4j/spi/ServiceHelper\n+  #151 = NameAndType        #153:#154     // loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #152 = Utf8               dev/langchain4j/spi/ServiceHelper\n+  #153 = Utf8               loadFactoryService\n+  #154 = Utf8               (Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #155 = Class              #156          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  #156 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  #157 = Methodref          #106.#158     // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #158 = NameAndType        #159:#160     // append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #159 = Utf8               append\n+  #160 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #161 = Methodref          #162.#163     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #162 = Class              #164          // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+  #163 = NameAndType        #165:#166     // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #164 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+  #165 = Utf8               getText\n+  #166 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #167 = InterfaceMethodref #133.#168     // dev/langchain4j/model/StreamingResponseHandler.onNext:(Ljava/lang/String;)V\n+  #168 = NameAndType        #169:#170     // onNext:(Ljava/lang/String;)V\n+  #169 = Utf8               onNext\n+  #170 = Utf8               (Ljava/lang/String;)V\n+  #171 = Class              #172          // dev/langchain4j/model/chat/StreamingChatLanguageModel\n+  #172 = Utf8               dev/langchain4j/model/chat/StreamingChatLanguageModel\n+  #173 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n+  #174 = Utf8               Code\n+  #175 = Utf8               LineNumberTable\n+  #176 = Utf8               LocalVariableTable\n+  #177 = Utf8               vertexAI\n+  #178 = Utf8               Lcom/google/cloud/vertexai/VertexAI;\n+  #179 = Utf8               e\n+  #180 = Utf8               Ljava/io/IOException;\n+  #181 = Utf8               this\n+  #182 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n+  #183 = Utf8               Ljava/lang/String;\n+  #184 = Utf8               temperature\n+  #185 = Utf8               Ljava/lang/Float;\n+  #186 = Utf8               maxOutputTokens\n+  #187 = Utf8               Ljava/lang/Integer;\n+  #188 = Utf8               topK\n+  #189 = Utf8               topP\n+  #190 = Utf8               generationConfigBuilder\n+  #191 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+  #192 = Utf8               StackMapTable\n+  #193 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;)V\n+  #194 = Utf8               generate\n+  #195 = Utf8               (Ljava/util/List;Ldev/langchain4j/model/StreamingResponseHandler;)V\n+  #196 = Utf8               exception\n+  #197 = Utf8               Ljava/lang/Exception;\n+  #198 = Utf8               messages\n+  #199 = Utf8               Ljava/util/List;\n+  #200 = Utf8               handler\n+  #201 = Utf8               Ldev/langchain4j/model/StreamingResponseHandler;\n+  #202 = Utf8               contents\n+  #203 = Utf8               responseBuilder\n+  #204 = Utf8               Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n+  #205 = Utf8               LocalVariableTypeTable\n+  #206 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n+  #207 = Utf8               Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;\n+  #208 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n+  #209 = Class              #210          // java/util/List\n+  #210 = Utf8               java/util/List\n+  #211 = Utf8               Signature\n+  #212 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;)V\n+  #213 = Utf8               builder\n+  #214 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #215 = Utf8               lambda$generate$0\n+  #216 = Utf8               (Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #217 = Utf8               partialResponse\n+  #218 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #219 = Utf8               SourceFile\n+  #220 = Utf8               VertexAiGeminiStreamingChatModel.java\n+  #221 = Utf8               BootstrapMethods\n+  #222 = MethodHandle       6:#223        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #223 = Methodref          #224.#225     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #224 = Class              #226          // java/lang/invoke/LambdaMetafactory\n+  #225 = NameAndType        #227:#228     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #226 = Utf8               java/lang/invoke/LambdaMetafactory\n+  #227 = Utf8               metafactory\n+  #228 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #229 = MethodType         #230          //  (Ljava/lang/Object;)V\n+  #230 = Utf8               (Ljava/lang/Object;)V\n+  #231 = MethodHandle       6:#232        // REF_invokeStatic dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #232 = Methodref          #32.#233      // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #233 = NameAndType        #215:#216     // lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #234 = MethodType         #160          //  (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  #235 = MethodType         #236          //  ()Ljava/lang/Object;\n+  #236 = Utf8               ()Ljava/lang/Object;\n+  #237 = MethodHandle       8:#238        // REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n+  #238 = Methodref          #155.#3       // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n+  #239 = MethodType         #214          //  ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #240 = Utf8               InnerClasses\n+  #241 = Utf8               Builder\n+  #242 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n+  #243 = Class              #244          // java/lang/invoke/MethodHandles$Lookup\n+  #244 = Utf8               java/lang/invoke/MethodHandles$Lookup\n+  #245 = Class              #246          // java/lang/invoke/MethodHandles\n+  #246 = Utf8               java/lang/invoke/MethodHandles\n+  #247 = Utf8               Lookup\n {\n   private final com.google.cloud.vertexai.generativeai.preview.GenerativeModel generativeModel;\n     descriptor: Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n     flags: (0x0012) ACC_PRIVATE, ACC_FINAL\n \n   private final com.google.cloud.vertexai.api.GenerationConfig generationConfig;\n     descriptor: Lcom/google/cloud/vertexai/api/GenerationConfig;\n     flags: (0x0012) ACC_PRIVATE, ACC_FINAL\n \n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel(java.lang.String, java.lang.String, java.lang.String, java.lang.Float, java.lang.Integer, java.lang.Integer, java.lang.Float);\n     descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n-      stack=5, locals=13, args_size=8\n+      stack=5, locals=11, args_size=8\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n-         4: new           #2                  // class com/google/cloud/vertexai/VertexAI\n+         4: new           #7                  // class com/google/cloud/vertexai/VertexAI\n          7: dup\n          8: aload_1\n-         9: ldc           #3                  // String project\n-        11: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+         9: ldc           #9                  // String project\n+        11: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n         14: aload_2\n-        15: ldc           #5                  // String location\n-        17: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+        15: ldc           #17                 // String location\n+        17: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n         20: iconst_0\n-        21: anewarray     #6                  // class java/lang/String\n-        24: invokespecial #7                  // Method com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+        21: anewarray     #19                 // class java/lang/String\n+        24: invokespecial #21                 // Method com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n         27: astore        8\n-        29: aconst_null\n-        30: astore        9\n-        32: aload_0\n-        33: new           #8                  // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-        36: dup\n-        37: aload_3\n-        38: ldc           #9                  // String modelName\n-        40: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-        43: aload         8\n-        45: invokespecial #10                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-        48: putfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-        51: aload         8\n-        53: ifnull        138\n-        56: aload         9\n-        58: ifnull        81\n-        61: aload         8\n-        63: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-        66: goto          138\n-        69: astore        10\n-        71: aload         9\n-        73: aload         10\n-        75: invokevirtual #14                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-        78: goto          138\n-        81: aload         8\n-        83: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-        86: goto          138\n-        89: astore        10\n-        91: aload         10\n-        93: astore        9\n-        95: aload         10\n-        97: athrow\n-        98: astore        11\n-       100: aload         8\n-       102: ifnull        135\n-       105: aload         9\n-       107: ifnull        130\n-       110: aload         8\n-       112: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-       115: goto          135\n-       118: astore        12\n-       120: aload         9\n-       122: aload         12\n-       124: invokevirtual #14                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-       127: goto          135\n-       130: aload         8\n-       132: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-       135: aload         11\n-       137: athrow\n-       138: goto          153\n-       141: astore        8\n-       143: new           #16                 // class java/lang/RuntimeException\n-       146: dup\n-       147: aload         8\n-       149: invokespecial #17                 // Method java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n-       152: athrow\n-       153: invokestatic  #18                 // Method com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       156: astore        8\n-       158: aload         4\n-       160: ifnull        174\n-       163: aload         8\n-       165: aload         4\n-       167: invokevirtual #19                 // Method java/lang/Float.floatValue:()F\n-       170: invokevirtual #20                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       173: pop\n-       174: aload         5\n-       176: ifnull        190\n-       179: aload         8\n-       181: aload         5\n-       183: invokevirtual #21                 // Method java/lang/Integer.intValue:()I\n-       186: invokevirtual #22                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       189: pop\n-       190: aload         6\n-       192: ifnull        207\n-       195: aload         8\n-       197: aload         6\n-       199: invokevirtual #21                 // Method java/lang/Integer.intValue:()I\n-       202: i2f\n-       203: invokevirtual #23                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       206: pop\n-       207: aload         7\n-       209: ifnull        223\n-       212: aload         8\n-       214: aload         7\n-       216: invokevirtual #19                 // Method java/lang/Float.floatValue:()F\n-       219: invokevirtual #24                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       222: pop\n-       223: aload_0\n-       224: aload         8\n-       226: invokevirtual #25                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-       229: putfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-       232: return\n+        29: aload_0\n+        30: new           #24                 // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+        33: dup\n+        34: aload_3\n+        35: ldc           #26                 // String modelName\n+        37: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+        40: aload         8\n+        42: invokespecial #28                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+        45: putfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+        48: aload         8\n+        50: invokevirtual #37                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n+        53: goto          78\n+        56: astore        9\n+        58: aload         8\n+        60: invokevirtual #37                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n+        63: goto          75\n+        66: astore        10\n+        68: aload         9\n+        70: aload         10\n+        72: invokevirtual #42                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n+        75: aload         9\n+        77: athrow\n+        78: goto          93\n+        81: astore        8\n+        83: new           #48                 // class java/lang/RuntimeException\n+        86: dup\n+        87: aload         8\n+        89: invokespecial #50                 // Method java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n+        92: athrow\n+        93: invokestatic  #52                 // Method com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+        96: astore        8\n+        98: aload         4\n+       100: ifnull        114\n+       103: aload         8\n+       105: aload         4\n+       107: invokevirtual #58                 // Method java/lang/Float.floatValue:()F\n+       110: invokevirtual #64                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       113: pop\n+       114: aload         5\n+       116: ifnull        130\n+       119: aload         8\n+       121: aload         5\n+       123: invokevirtual #70                 // Method java/lang/Integer.intValue:()I\n+       126: invokevirtual #76                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       129: pop\n+       130: aload         6\n+       132: ifnull        147\n+       135: aload         8\n+       137: aload         6\n+       139: invokevirtual #70                 // Method java/lang/Integer.intValue:()I\n+       142: i2f\n+       143: invokevirtual #80                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       146: pop\n+       147: aload         7\n+       149: ifnull        163\n+       152: aload         8\n+       154: aload         7\n+       156: invokevirtual #58                 // Method java/lang/Float.floatValue:()F\n+       159: invokevirtual #83                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       162: pop\n+       163: aload_0\n+       164: aload         8\n+       166: invokevirtual #86                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+       169: putfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+       172: return\n       Exception table:\n          from    to  target type\n-            61    66    69   Class java/lang/Throwable\n-            32    51    89   Class java/lang/Throwable\n-            32    51    98   any\n-           110   115   118   Class java/lang/Throwable\n-            89   100    98   any\n-             4   138   141   Class java/io/IOException\n+            29    48    56   Class java/lang/Throwable\n+            58    63    66   Class java/lang/Throwable\n+             4    78    81   Class java/io/IOException\n       LineNumberTable:\n         line 38: 0\n         line 39: 4\n         line 40: 11\n         line 41: 17\n-        line 39: 29\n-        line 43: 32\n-        line 44: 51\n-        line 39: 89\n-        line 44: 98\n-        line 46: 138\n-        line 44: 141\n-        line 45: 143\n-        line 48: 153\n-        line 49: 158\n-        line 50: 163\n-        line 52: 174\n-        line 53: 179\n-        line 55: 190\n-        line 56: 195\n-        line 58: 207\n-        line 59: 212\n-        line 61: 223\n-        line 62: 232\n+        line 43: 29\n+        line 44: 48\n+        line 39: 56\n+        line 46: 78\n+        line 44: 81\n+        line 45: 83\n+        line 48: 93\n+        line 49: 98\n+        line 50: 103\n+        line 52: 114\n+        line 53: 119\n+        line 55: 130\n+        line 56: 135\n+        line 58: 147\n+        line 59: 152\n+        line 61: 163\n+        line 62: 172\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n-           29     109     8 vertexAI   Lcom/google/cloud/vertexai/VertexAI;\n-          143      10     8     e   Ljava/io/IOException;\n-            0     233     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n-            0     233     1 project   Ljava/lang/String;\n-            0     233     2 location   Ljava/lang/String;\n-            0     233     3 modelName   Ljava/lang/String;\n-            0     233     4 temperature   Ljava/lang/Float;\n-            0     233     5 maxOutputTokens   Ljava/lang/Integer;\n-            0     233     6  topK   Ljava/lang/Integer;\n-            0     233     7  topP   Ljava/lang/Float;\n-          158      75     8 generationConfigBuilder   Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-      StackMapTable: number_of_entries = 14\n+           29      49     8 vertexAI   Lcom/google/cloud/vertexai/VertexAI;\n+           83      10     8     e   Ljava/io/IOException;\n+            0     173     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n+            0     173     1 project   Ljava/lang/String;\n+            0     173     2 location   Ljava/lang/String;\n+            0     173     3 modelName   Ljava/lang/String;\n+            0     173     4 temperature   Ljava/lang/Float;\n+            0     173     5 maxOutputTokens   Ljava/lang/Integer;\n+            0     173     6  topK   Ljava/lang/Integer;\n+            0     173     7  topP   Ljava/lang/Float;\n+           98      75     8 generationConfigBuilder   Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+      StackMapTable: number_of_entries = 10\n         frame_type = 255 /* full_frame */\n-          offset_delta = 69\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable ]\n-          stack = [ class java/lang/Throwable ]\n-        frame_type = 11 /* same */\n-        frame_type = 71 /* same_locals_1_stack_item */\n-          stack = [ class java/lang/Throwable ]\n-        frame_type = 72 /* same_locals_1_stack_item */\n+          offset_delta = 56\n+          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class com/google/cloud/vertexai/VertexAI ]\n           stack = [ class java/lang/Throwable ]\n         frame_type = 255 /* full_frame */\n-          offset_delta = 19\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable, top, class java/lang/Throwable ]\n+          offset_delta = 9\n+          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable ]\n           stack = [ class java/lang/Throwable ]\n-        frame_type = 11 /* same */\n-        frame_type = 4 /* same */\n-        frame_type = 255 /* full_frame */\n+        frame_type = 8 /* same */\n+        frame_type = 249 /* chop */\n           offset_delta = 2\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float ]\n-          stack = []\n         frame_type = 66 /* same_locals_1_stack_item */\n           stack = [ class java/io/IOException ]\n         frame_type = 11 /* same */\n         frame_type = 252 /* append */\n           offset_delta = 20\n           locals = [ class com/google/cloud/vertexai/api/GenerationConfig$Builder ]\n         frame_type = 15 /* same */\n@@ -465,24 +415,24 @@\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=3, locals=3, args_size=3\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n          4: aload_0\n          5: aload_1\n-         6: ldc           #27                 // String generativeModel\n-         8: invokestatic  #28                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        11: checkcast     #8                  // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-        14: putfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+         6: ldc           #94                 // String generativeModel\n+         8: invokestatic  #95                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        11: checkcast     #24                 // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+        14: putfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n         17: aload_0\n         18: aload_2\n-        19: ldc           #29                 // String generationConfig\n-        21: invokestatic  #28                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        24: checkcast     #30                 // class com/google/cloud/vertexai/api/GenerationConfig\n-        27: putfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+        19: ldc           #99                 // String generationConfig\n+        21: invokestatic  #95                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        24: checkcast     #53                 // class com/google/cloud/vertexai/api/GenerationConfig\n+        27: putfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n         30: return\n       LineNumberTable:\n         line 65: 0\n         line 66: 4\n         line 67: 17\n         line 68: 30\n       LocalVariableTable:\n@@ -493,40 +443,40 @@\n \n   public void generate(java.util.List<dev.langchain4j.data.message.ChatMessage>, dev.langchain4j.model.StreamingResponseHandler<dev.langchain4j.data.message.AiMessage>);\n     descriptor: (Ljava/util/List;Ldev/langchain4j/model/StreamingResponseHandler;)V\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=3, locals=6, args_size=3\n          0: aload_1\n-         1: invokestatic  #31                 // Method dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n+         1: invokestatic  #100                // Method dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n          4: astore_3\n-         5: new           #32                 // class dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+         5: new           #106                // class dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n          8: dup\n-         9: invokespecial #33                 // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.\"<init>\":()V\n+         9: invokespecial #108                // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.\"<init>\":()V\n         12: astore        4\n         14: aload_0\n-        15: getfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+        15: getfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n         18: aload_3\n         19: aload_0\n-        20: getfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-        23: invokevirtual #34                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n-        26: invokevirtual #35                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseStream.stream:()Ljava/util/stream/Stream;\n+        20: getfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+        23: invokevirtual #109                // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContentStream:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/generativeai/preview/ResponseStream;\n+        26: invokevirtual #113                // Method com/google/cloud/vertexai/generativeai/preview/ResponseStream.stream:()Ljava/util/stream/Stream;\n         29: aload         4\n         31: aload_2\n-        32: invokedynamic #36,  0             // InvokeDynamic #0:accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n-        37: invokeinterface #37,  2           // InterfaceMethod java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V\n+        32: invokedynamic #119,  0            // InvokeDynamic #0:accept:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;)Ljava/util/function/Consumer;\n+        37: invokeinterface #123,  2          // InterfaceMethod java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V\n         42: aload_2\n         43: aload         4\n-        45: invokevirtual #38                 // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.build:()Ldev/langchain4j/model/output/Response;\n-        48: invokeinterface #39,  2           // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onComplete:(Ldev/langchain4j/model/output/Response;)V\n+        45: invokevirtual #129                // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.build:()Ldev/langchain4j/model/output/Response;\n+        48: invokeinterface #132,  2          // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onComplete:(Ldev/langchain4j/model/output/Response;)V\n         53: goto          66\n         56: astore        5\n         58: aload_2\n         59: aload         5\n-        61: invokeinterface #41,  2           // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onError:(Ljava/lang/Throwable;)V\n+        61: invokeinterface #140,  2          // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onError:(Ljava/lang/Throwable;)V\n         66: return\n       Exception table:\n          from    to  target type\n             14    53    56   Class java/lang/Exception\n       LineNumberTable:\n         line 73: 0\n         line 74: 5\n@@ -553,61 +503,61 @@\n             5      62     3 contents   Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n       StackMapTable: number_of_entries = 2\n         frame_type = 255 /* full_frame */\n           offset_delta = 56\n           locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel, class java/util/List, class dev/langchain4j/model/StreamingResponseHandler, class java/util/List, class dev/langchain4j/model/vertexai/StreamingChatResponseBuilder ]\n           stack = [ class java/lang/Exception ]\n         frame_type = 9 /* same */\n-    Signature: #113                         // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;)V\n+    Signature: #212                         // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;Ldev/langchain4j/model/StreamingResponseHandler<Ldev/langchain4j/data/message/AiMessage;>;)V\n \n   public static dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder builder();\n     descriptor: ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0009) ACC_PUBLIC, ACC_STATIC\n     Code:\n       stack=2, locals=0, args_size=0\n-         0: ldc           #42                 // class dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-         2: invokedynamic #43,  0             // InvokeDynamic #1:get:()Ljava/util/function/Supplier;\n-         7: invokestatic  #44                 // Method dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-        10: checkcast     #45                 // class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+         0: ldc           #143                // class dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n+         2: invokedynamic #145,  0            // InvokeDynamic #1:get:()Ljava/util/function/Supplier;\n+         7: invokestatic  #149                // Method dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+        10: checkcast     #155                // class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n         13: areturn\n       LineNumberTable:\n         line 90: 0\n \n   private static void lambda$generate$0(dev.langchain4j.model.vertexai.StreamingChatResponseBuilder, dev.langchain4j.model.StreamingResponseHandler, com.google.cloud.vertexai.api.GenerateContentResponse);\n     descriptor: (Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n     flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC\n     Code:\n       stack=2, locals=3, args_size=3\n          0: aload_0\n          1: aload_2\n-         2: invokevirtual #46                 // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+         2: invokevirtual #157                // Method dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.append:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n          5: aload_1\n          6: aload_2\n-         7: invokestatic  #47                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-        10: invokeinterface #48,  2           // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onNext:(Ljava/lang/String;)V\n+         7: invokestatic  #161                // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+        10: invokeinterface #167,  2          // InterfaceMethod dev/langchain4j/model/StreamingResponseHandler.onNext:(Ljava/lang/String;)V\n         15: return\n       LineNumberTable:\n         line 80: 0\n         line 81: 5\n         line 82: 15\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      16     0 responseBuilder   Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n             0      16     1 handler   Ldev/langchain4j/model/StreamingResponseHandler;\n             0      16     2 partialResponse   Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n }\n SourceFile: \"VertexAiGeminiStreamingChatModel.java\"\n-InnerClasses:\n-  public static #52= #45 of #49;          // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  public static final #81= #80 of #30;    // Builder=class com/google/cloud/vertexai/api/GenerationConfig$Builder of class com/google/cloud/vertexai/api/GenerationConfig\n-  public static final #254= #253 of #256; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n BootstrapMethods:\n-  0: #157 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  0: #222 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #158 (Ljava/lang/Object;)V\n-      #159 REF_invokeStatic dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-      #160 (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-  1: #157 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+      #229 (Ljava/lang/Object;)V\n+      #231 REF_invokeStatic dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.lambda$generate$0:(Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;Ldev/langchain4j/model/StreamingResponseHandler;Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+      #234 (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+  1: #222 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #170 ()Ljava/lang/Object;\n-      #171 REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n-      #172 ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+      #235 ()Ljava/lang/Object;\n+      #237 REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.\"<init>\":()V\n+      #239 ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+InnerClasses:\n+  public static final #241= #65 of #53;   // Builder=class com/google/cloud/vertexai/api/GenerationConfig$Builder of class com/google/cloud/vertexai/api/GenerationConfig\n+  public static #242= #155 of #32;        // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  public static final #247= #243 of #245; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n"}]}, {"source1": "dev/langchain4j/model/vertexai/PartsMapper.class", "source2": "dev/langchain4j/model/vertexai/PartsMapper.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,321 +1,319 @@\n-  SHA-256 checksum 5840d5b50c9ff380d24c871e598aef94f5ef5b6058c004fc27c0e2b4f0389922\n+  SHA-256 checksum e12ee5c756ceb05fdb0c60ea64d87c4de2a8ea4f70c2f75db57f4e22758c0afa\n   Compiled from \"PartsMapper.java\"\n class dev.langchain4j.model.vertexai.PartsMapper\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #76                         // dev/langchain4j/model/vertexai/PartsMapper\n-  super_class: #23                        // java/lang/Object\n+  this_class: #97                         // dev/langchain4j/model/vertexai/PartsMapper\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 1, methods: 8, attributes: 3\n Constant pool:\n-    #1 = Methodref          #23.#120      // java/lang/Object.\"<init>\":()V\n-    #2 = Class              #121          // dev/langchain4j/data/message/UserMessage\n-    #3 = Methodref          #2.#122       // dev/langchain4j/data/message/UserMessage.contents:()Ljava/util/List;\n-    #4 = InterfaceMethodref #9.#123       // java/util/List.stream:()Ljava/util/stream/Stream;\n-    #5 = InvokeDynamic      #0:#129       // #0:apply:()Ljava/util/function/Function;\n-    #6 = InterfaceMethodref #130.#131     // java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-    #7 = Methodref          #132.#133     // java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n-    #8 = InterfaceMethodref #130.#134     // java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-    #9 = Class              #135          // java/util/List\n-   #10 = Class              #136          // dev/langchain4j/data/message/AiMessage\n-   #11 = Methodref          #137.#138     // com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n-   #12 = Methodref          #10.#139      // dev/langchain4j/data/message/AiMessage.text:()Ljava/lang/String;\n-   #13 = Methodref          #140.#141     // com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n-   #14 = Methodref          #140.#142     // com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n-   #15 = Methodref          #143.#144     // java/util/Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;\n-   #16 = Class              #145          // java/lang/StringBuilder\n-   #17 = Methodref          #16.#120      // java/lang/StringBuilder.\"<init>\":()V\n-   #18 = InterfaceMethodref #146.#147     // dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n-   #19 = Methodref          #16.#148      // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-   #20 = String             #149          //  message is not supported by Gemini\n-   #21 = Methodref          #16.#150      // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-   #22 = Methodref          #16.#151      // java/lang/StringBuilder.toString:()Ljava/lang/String;\n-   #23 = Class              #152          // java/lang/Object\n-   #24 = Methodref          #153.#154     // dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n-   #25 = Class              #155          // dev/langchain4j/data/message/TextContent\n-   #26 = Methodref          #76.#156      // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n-   #27 = Class              #157          // dev/langchain4j/data/message/ImageContent\n-   #28 = Methodref          #76.#158      // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n-   #29 = String             #159          // Unknown content type:\n-   #30 = Methodref          #25.#139      // dev/langchain4j/data/message/TextContent.text:()Ljava/lang/String;\n-   #31 = Methodref          #27.#160      // dev/langchain4j/data/message/ImageContent.image:()Ldev/langchain4j/data/image/Image;\n-   #32 = Methodref          #161.#162     // dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n-   #33 = Methodref          #161.#163     // dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n-   #34 = InvokeDynamic      #1:#167       // #1:get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n-   #35 = Methodref          #168.#169     // dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-   #36 = Class              #170          // java/lang/String\n-   #37 = Methodref          #171.#172     // java/net/URI.getScheme:()Ljava/lang/String;\n-   #38 = String             #173          // gs\n-   #39 = Methodref          #36.#174      // java/lang/String.equals:(Ljava/lang/Object;)Z\n-   #40 = Methodref          #175.#176     // com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n-   #41 = Methodref          #171.#151     // java/net/URI.toString:()Ljava/lang/String;\n-   #42 = Methodref          #168.#177     // dev/langchain4j/internal/Utils.readBytes:(Ljava/lang/String;)[B\n-   #43 = Methodref          #178.#179     // java/util/Base64.getDecoder:()Ljava/util/Base64$Decoder;\n-   #44 = Methodref          #161.#180     // dev/langchain4j/data/image/Image.base64Data:()Ljava/lang/String;\n-   #45 = Methodref          #181.#182     // java/util/Base64$Decoder.decode:(Ljava/lang/String;)[B\n-   #46 = Methodref          #171.#183     // java/net/URI.getPath:()Ljava/lang/String;\n-   #47 = String             #184          // \\\\.\n-   #48 = Methodref          #36.#185      // java/lang/String.split:(Ljava/lang/String;)[Ljava/lang/String;\n-   #49 = Methodref          #36.#186      // java/lang/String.toLowerCase:()Ljava/lang/String;\n-   #50 = Fieldref           #76.#187      // dev/langchain4j/model/vertexai/PartsMapper.EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-   #51 = InterfaceMethodref #188.#189     // java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object;\n-   #52 = String             #190          // Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n-   #53 = Methodref          #76.#191      // dev/langchain4j/model/vertexai/PartsMapper.detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n-   #54 = Class              #192          // java/util/HashMap\n-   #55 = Methodref          #54.#120      // java/util/HashMap.\"<init>\":()V\n-   #56 = String             #193          // avif\n-   #57 = String             #194          // image/avif\n-   #58 = InterfaceMethodref #188.#195     // java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-   #59 = String             #196          // bmp\n-   #60 = String             #197          // image/bmp\n-   #61 = String             #198          // gif\n-   #62 = String             #199          // image/gif\n-   #63 = String             #200          // jpe\n-   #64 = String             #201          // image/jpeg\n-   #65 = String             #202          // jpeg\n-   #66 = String             #203          // jpg\n-   #67 = String             #204          // png\n-   #68 = String             #205          // image/png\n-   #69 = String             #206          // svg\n-   #70 = String             #207          // image/svg+xml\n-   #71 = String             #208          // tif\n-   #72 = String             #209          // image/tiff\n-   #73 = String             #210          // tiff\n-   #74 = String             #211          // webp\n-   #75 = String             #212          // image/webp\n-   #76 = Class              #213          // dev/langchain4j/model/vertexai/PartsMapper\n-   #77 = Utf8               EXTENSION_TO_MIME_TYPE\n-   #78 = Utf8               Ljava/util/Map;\n-   #79 = Utf8               Signature\n-   #80 = Utf8               Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;\n-   #81 = Utf8               <init>\n-   #82 = Utf8               ()V\n-   #83 = Utf8               Code\n-   #84 = Utf8               LineNumberTable\n-   #85 = Utf8               LocalVariableTable\n-   #86 = Utf8               this\n-   #87 = Utf8               Ldev/langchain4j/model/vertexai/PartsMapper;\n-   #88 = Utf8               map\n-   #89 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n-   #90 = Utf8               message\n-   #91 = Utf8               Ldev/langchain4j/data/message/ChatMessage;\n-   #92 = Utf8               StackMapTable\n-   #93 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Part;>;\n-   #94 = Utf8               (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-   #95 = Utf8               content\n-   #96 = Utf8               Ldev/langchain4j/data/message/Content;\n-   #97 = Utf8               (Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n-   #98 = Utf8               Ldev/langchain4j/data/message/TextContent;\n-   #99 = Utf8               (Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n-  #100 = Utf8               mimeType\n-  #101 = Utf8               Ljava/lang/String;\n-  #102 = Utf8               Ldev/langchain4j/data/message/ImageContent;\n-  #103 = Utf8               image\n-  #104 = Utf8               Ldev/langchain4j/data/image/Image;\n-  #105 = Class              #214          // dev/langchain4j/data/image/Image\n-  #106 = Class              #170          // java/lang/String\n-  #107 = Utf8               detectMimeType\n-  #108 = Utf8               (Ljava/net/URI;)Ljava/lang/String;\n-  #109 = Utf8               extension\n-  #110 = Utf8               url\n-  #111 = Utf8               Ljava/net/URI;\n-  #112 = Utf8               pathParts\n-  #113 = Utf8               [Ljava/lang/String;\n-  #114 = Class              #113          // \"[Ljava/lang/String;\"\n-  #115 = Utf8               lambda$map$0\n-  #116 = Utf8               (Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n-  #117 = Utf8               <clinit>\n-  #118 = Utf8               SourceFile\n-  #119 = Utf8               PartsMapper.java\n-  #120 = NameAndType        #81:#82       // \"<init>\":()V\n-  #121 = Utf8               dev/langchain4j/data/message/UserMessage\n-  #122 = NameAndType        #215:#216     // contents:()Ljava/util/List;\n-  #123 = NameAndType        #217:#218     // stream:()Ljava/util/stream/Stream;\n-  #124 = Utf8               BootstrapMethods\n-  #125 = MethodHandle       6:#219        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #126 = MethodType         #220          //  (Ljava/lang/Object;)Ljava/lang/Object;\n-  #127 = MethodHandle       6:#221        // REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-  #128 = MethodType         #94           //  (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-  #129 = NameAndType        #222:#223     // apply:()Ljava/util/function/Function;\n-  #130 = Class              #224          // java/util/stream/Stream\n-  #131 = NameAndType        #88:#225      // map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-  #132 = Class              #226          // java/util/stream/Collectors\n-  #133 = NameAndType        #227:#228     // toList:()Ljava/util/stream/Collector;\n-  #134 = NameAndType        #229:#230     // collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-  #135 = Utf8               java/util/List\n-  #136 = Utf8               dev/langchain4j/data/message/AiMessage\n-  #137 = Class              #231          // com/google/cloud/vertexai/api/Part\n-  #138 = NameAndType        #232:#235     // newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n-  #139 = NameAndType        #236:#237     // text:()Ljava/lang/String;\n-  #140 = Class              #238          // com/google/cloud/vertexai/api/Part$Builder\n-  #141 = NameAndType        #239:#240     // setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n-  #142 = NameAndType        #241:#242     // build:()Lcom/google/cloud/vertexai/api/Part;\n-  #143 = Class              #243          // java/util/Collections\n-  #144 = NameAndType        #244:#245     // singletonList:(Ljava/lang/Object;)Ljava/util/List;\n-  #145 = Utf8               java/lang/StringBuilder\n-  #146 = Class              #246          // dev/langchain4j/data/message/ChatMessage\n-  #147 = NameAndType        #247:#248     // type:()Ldev/langchain4j/data/message/ChatMessageType;\n-  #148 = NameAndType        #249:#250     // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #149 = Utf8                message is not supported by Gemini\n-  #150 = NameAndType        #249:#251     // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #151 = NameAndType        #252:#237     // toString:()Ljava/lang/String;\n-  #152 = Utf8               java/lang/Object\n-  #153 = Class              #253          // dev/langchain4j/internal/Exceptions\n-  #154 = NameAndType        #254:#255     // illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n-  #155 = Utf8               dev/langchain4j/data/message/TextContent\n-  #156 = NameAndType        #88:#97       // map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n-  #157 = Utf8               dev/langchain4j/data/message/ImageContent\n-  #158 = NameAndType        #88:#99       // map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n-  #159 = Utf8               Unknown content type:\n-  #160 = NameAndType        #103:#256     // image:()Ldev/langchain4j/data/image/Image;\n-  #161 = Class              #214          // dev/langchain4j/data/image/Image\n-  #162 = NameAndType        #110:#257     // url:()Ljava/net/URI;\n-  #163 = NameAndType        #100:#237     // mimeType:()Ljava/lang/String;\n-  #164 = MethodType         #258          //  ()Ljava/lang/Object;\n-  #165 = MethodHandle       6:#259        // REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n-  #166 = MethodType         #237          //  ()Ljava/lang/String;\n-  #167 = NameAndType        #260:#261     // get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n-  #168 = Class              #262          // dev/langchain4j/internal/Utils\n-  #169 = NameAndType        #263:#264     // getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #170 = Utf8               java/lang/String\n-  #171 = Class              #265          // java/net/URI\n-  #172 = NameAndType        #266:#237     // getScheme:()Ljava/lang/String;\n-  #173 = Utf8               gs\n-  #174 = NameAndType        #267:#268     // equals:(Ljava/lang/Object;)Z\n-  #175 = Class              #269          // com/google/cloud/vertexai/generativeai/preview/PartMaker\n-  #176 = NameAndType        #270:#271     // fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n-  #177 = NameAndType        #272:#273     // readBytes:(Ljava/lang/String;)[B\n-  #178 = Class              #274          // java/util/Base64\n-  #179 = NameAndType        #275:#277     // getDecoder:()Ljava/util/Base64$Decoder;\n-  #180 = NameAndType        #278:#237     // base64Data:()Ljava/lang/String;\n-  #181 = Class              #279          // java/util/Base64$Decoder\n-  #182 = NameAndType        #280:#273     // decode:(Ljava/lang/String;)[B\n-  #183 = NameAndType        #281:#237     // getPath:()Ljava/lang/String;\n-  #184 = Utf8               \\\\.\n-  #185 = NameAndType        #282:#283     // split:(Ljava/lang/String;)[Ljava/lang/String;\n-  #186 = NameAndType        #284:#237     // toLowerCase:()Ljava/lang/String;\n-  #187 = NameAndType        #77:#78       // EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-  #188 = Class              #285          // java/util/Map\n-  #189 = NameAndType        #260:#220     // get:(Ljava/lang/Object;)Ljava/lang/Object;\n-  #190 = Utf8               Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n-  #191 = NameAndType        #107:#108     // detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n-  #192 = Utf8               java/util/HashMap\n-  #193 = Utf8               avif\n-  #194 = Utf8               image/avif\n-  #195 = NameAndType        #286:#287     // put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-  #196 = Utf8               bmp\n-  #197 = Utf8               image/bmp\n-  #198 = Utf8               gif\n-  #199 = Utf8               image/gif\n-  #200 = Utf8               jpe\n-  #201 = Utf8               image/jpeg\n-  #202 = Utf8               jpeg\n-  #203 = Utf8               jpg\n-  #204 = Utf8               png\n-  #205 = Utf8               image/png\n-  #206 = Utf8               svg\n-  #207 = Utf8               image/svg+xml\n-  #208 = Utf8               tif\n-  #209 = Utf8               image/tiff\n-  #210 = Utf8               tiff\n-  #211 = Utf8               webp\n-  #212 = Utf8               image/webp\n-  #213 = Utf8               dev/langchain4j/model/vertexai/PartsMapper\n-  #214 = Utf8               dev/langchain4j/data/image/Image\n-  #215 = Utf8               contents\n-  #216 = Utf8               ()Ljava/util/List;\n-  #217 = Utf8               stream\n-  #218 = Utf8               ()Ljava/util/stream/Stream;\n-  #219 = Methodref          #288.#289     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #220 = Utf8               (Ljava/lang/Object;)Ljava/lang/Object;\n-  #221 = Methodref          #76.#290      // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-  #222 = Utf8               apply\n-  #223 = Utf8               ()Ljava/util/function/Function;\n-  #224 = Utf8               java/util/stream/Stream\n-  #225 = Utf8               (Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-  #226 = Utf8               java/util/stream/Collectors\n-  #227 = Utf8               toList\n-  #228 = Utf8               ()Ljava/util/stream/Collector;\n-  #229 = Utf8               collect\n-  #230 = Utf8               (Ljava/util/stream/Collector;)Ljava/lang/Object;\n-  #231 = Utf8               com/google/cloud/vertexai/api/Part\n-  #232 = Utf8               newBuilder\n-  #233 = Utf8               Builder\n-  #234 = Utf8               InnerClasses\n-  #235 = Utf8               ()Lcom/google/cloud/vertexai/api/Part$Builder;\n-  #236 = Utf8               text\n-  #237 = Utf8               ()Ljava/lang/String;\n-  #238 = Utf8               com/google/cloud/vertexai/api/Part$Builder\n-  #239 = Utf8               setText\n-  #240 = Utf8               (Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n-  #241 = Utf8               build\n-  #242 = Utf8               ()Lcom/google/cloud/vertexai/api/Part;\n-  #243 = Utf8               java/util/Collections\n-  #244 = Utf8               singletonList\n-  #245 = Utf8               (Ljava/lang/Object;)Ljava/util/List;\n-  #246 = Utf8               dev/langchain4j/data/message/ChatMessage\n-  #247 = Utf8               type\n-  #248 = Utf8               ()Ldev/langchain4j/data/message/ChatMessageType;\n-  #249 = Utf8               append\n-  #250 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #251 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #252 = Utf8               toString\n-  #253 = Utf8               dev/langchain4j/internal/Exceptions\n-  #254 = Utf8               illegalArgument\n-  #255 = Utf8               (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n-  #256 = Utf8               ()Ldev/langchain4j/data/image/Image;\n-  #257 = Utf8               ()Ljava/net/URI;\n-  #258 = Utf8               ()Ljava/lang/Object;\n-  #259 = Methodref          #76.#291      // dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n-  #260 = Utf8               get\n-  #261 = Utf8               (Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n-  #262 = Utf8               dev/langchain4j/internal/Utils\n-  #263 = Utf8               getOrDefault\n-  #264 = Utf8               (Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #265 = Utf8               java/net/URI\n-  #266 = Utf8               getScheme\n-  #267 = Utf8               equals\n-  #268 = Utf8               (Ljava/lang/Object;)Z\n-  #269 = Utf8               com/google/cloud/vertexai/generativeai/preview/PartMaker\n-  #270 = Utf8               fromMimeTypeAndData\n-  #271 = Utf8               (Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n-  #272 = Utf8               readBytes\n-  #273 = Utf8               (Ljava/lang/String;)[B\n-  #274 = Utf8               java/util/Base64\n-  #275 = Utf8               getDecoder\n-  #276 = Utf8               Decoder\n-  #277 = Utf8               ()Ljava/util/Base64$Decoder;\n-  #278 = Utf8               base64Data\n-  #279 = Utf8               java/util/Base64$Decoder\n-  #280 = Utf8               decode\n-  #281 = Utf8               getPath\n-  #282 = Utf8               split\n-  #283 = Utf8               (Ljava/lang/String;)[Ljava/lang/String;\n-  #284 = Utf8               toLowerCase\n-  #285 = Utf8               java/util/Map\n-  #286 = Utf8               put\n-  #287 = Utf8               (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-  #288 = Class              #292          // java/lang/invoke/LambdaMetafactory\n-  #289 = NameAndType        #293:#296     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #290 = NameAndType        #88:#94       // map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-  #291 = NameAndType        #115:#116     // lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n-  #292 = Utf8               java/lang/invoke/LambdaMetafactory\n-  #293 = Utf8               metafactory\n-  #294 = Class              #298          // java/lang/invoke/MethodHandles$Lookup\n-  #295 = Utf8               Lookup\n-  #296 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #297 = Class              #299          // java/lang/invoke/MethodHandles\n-  #298 = Utf8               java/lang/invoke/MethodHandles$Lookup\n-  #299 = Utf8               java/lang/invoke/MethodHandles\n+    #1 = Methodref          #2.#3         // java/lang/Object.\"<init>\":()V\n+    #2 = Class              #4            // java/lang/Object\n+    #3 = NameAndType        #5:#6         // \"<init>\":()V\n+    #4 = Utf8               java/lang/Object\n+    #5 = Utf8               <init>\n+    #6 = Utf8               ()V\n+    #7 = Class              #8            // dev/langchain4j/data/message/UserMessage\n+    #8 = Utf8               dev/langchain4j/data/message/UserMessage\n+    #9 = Methodref          #7.#10        // dev/langchain4j/data/message/UserMessage.contents:()Ljava/util/List;\n+   #10 = NameAndType        #11:#12       // contents:()Ljava/util/List;\n+   #11 = Utf8               contents\n+   #12 = Utf8               ()Ljava/util/List;\n+   #13 = InterfaceMethodref #14.#15       // java/util/List.stream:()Ljava/util/stream/Stream;\n+   #14 = Class              #16           // java/util/List\n+   #15 = NameAndType        #17:#18       // stream:()Ljava/util/stream/Stream;\n+   #16 = Utf8               java/util/List\n+   #17 = Utf8               stream\n+   #18 = Utf8               ()Ljava/util/stream/Stream;\n+   #19 = InvokeDynamic      #0:#20        // #0:apply:()Ljava/util/function/Function;\n+   #20 = NameAndType        #21:#22       // apply:()Ljava/util/function/Function;\n+   #21 = Utf8               apply\n+   #22 = Utf8               ()Ljava/util/function/Function;\n+   #23 = InterfaceMethodref #24.#25       // java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #24 = Class              #26           // java/util/stream/Stream\n+   #25 = NameAndType        #27:#28       // map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #26 = Utf8               java/util/stream/Stream\n+   #27 = Utf8               map\n+   #28 = Utf8               (Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #29 = Methodref          #30.#31       // java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n+   #30 = Class              #32           // java/util/stream/Collectors\n+   #31 = NameAndType        #33:#34       // toList:()Ljava/util/stream/Collector;\n+   #32 = Utf8               java/util/stream/Collectors\n+   #33 = Utf8               toList\n+   #34 = Utf8               ()Ljava/util/stream/Collector;\n+   #35 = InterfaceMethodref #24.#36       // java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #36 = NameAndType        #37:#38       // collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #37 = Utf8               collect\n+   #38 = Utf8               (Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #39 = Class              #40           // dev/langchain4j/data/message/AiMessage\n+   #40 = Utf8               dev/langchain4j/data/message/AiMessage\n+   #41 = Methodref          #42.#43       // com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #42 = Class              #44           // com/google/cloud/vertexai/api/Part\n+   #43 = NameAndType        #45:#46       // newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #44 = Utf8               com/google/cloud/vertexai/api/Part\n+   #45 = Utf8               newBuilder\n+   #46 = Utf8               ()Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #47 = Methodref          #39.#48       // dev/langchain4j/data/message/AiMessage.text:()Ljava/lang/String;\n+   #48 = NameAndType        #49:#50       // text:()Ljava/lang/String;\n+   #49 = Utf8               text\n+   #50 = Utf8               ()Ljava/lang/String;\n+   #51 = Methodref          #52.#53       // com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #52 = Class              #54           // com/google/cloud/vertexai/api/Part$Builder\n+   #53 = NameAndType        #55:#56       // setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #54 = Utf8               com/google/cloud/vertexai/api/Part$Builder\n+   #55 = Utf8               setText\n+   #56 = Utf8               (Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n+   #57 = Methodref          #52.#58       // com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n+   #58 = NameAndType        #59:#60       // build:()Lcom/google/cloud/vertexai/api/Part;\n+   #59 = Utf8               build\n+   #60 = Utf8               ()Lcom/google/cloud/vertexai/api/Part;\n+   #61 = Methodref          #62.#63       // java/util/Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;\n+   #62 = Class              #64           // java/util/Collections\n+   #63 = NameAndType        #65:#66       // singletonList:(Ljava/lang/Object;)Ljava/util/List;\n+   #64 = Utf8               java/util/Collections\n+   #65 = Utf8               singletonList\n+   #66 = Utf8               (Ljava/lang/Object;)Ljava/util/List;\n+   #67 = Class              #68           // java/lang/StringBuilder\n+   #68 = Utf8               java/lang/StringBuilder\n+   #69 = Methodref          #67.#3        // java/lang/StringBuilder.\"<init>\":()V\n+   #70 = InterfaceMethodref #71.#72       // dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n+   #71 = Class              #73           // dev/langchain4j/data/message/ChatMessage\n+   #72 = NameAndType        #74:#75       // type:()Ldev/langchain4j/data/message/ChatMessageType;\n+   #73 = Utf8               dev/langchain4j/data/message/ChatMessage\n+   #74 = Utf8               type\n+   #75 = Utf8               ()Ldev/langchain4j/data/message/ChatMessageType;\n+   #76 = Methodref          #67.#77       // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+   #77 = NameAndType        #78:#79       // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+   #78 = Utf8               append\n+   #79 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+   #80 = String             #81           //  message is not supported by Gemini\n+   #81 = Utf8                message is not supported by Gemini\n+   #82 = Methodref          #67.#83       // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+   #83 = NameAndType        #78:#84       // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+   #84 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n+   #85 = Methodref          #67.#86       // java/lang/StringBuilder.toString:()Ljava/lang/String;\n+   #86 = NameAndType        #87:#50       // toString:()Ljava/lang/String;\n+   #87 = Utf8               toString\n+   #88 = Methodref          #89.#90       // dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+   #89 = Class              #91           // dev/langchain4j/internal/Exceptions\n+   #90 = NameAndType        #92:#93       // illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+   #91 = Utf8               dev/langchain4j/internal/Exceptions\n+   #92 = Utf8               illegalArgument\n+   #93 = Utf8               (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+   #94 = Class              #95           // dev/langchain4j/data/message/TextContent\n+   #95 = Utf8               dev/langchain4j/data/message/TextContent\n+   #96 = Methodref          #97.#98       // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n+   #97 = Class              #99           // dev/langchain4j/model/vertexai/PartsMapper\n+   #98 = NameAndType        #27:#100      // map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n+   #99 = Utf8               dev/langchain4j/model/vertexai/PartsMapper\n+  #100 = Utf8               (Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n+  #101 = Class              #102          // dev/langchain4j/data/message/ImageContent\n+  #102 = Utf8               dev/langchain4j/data/message/ImageContent\n+  #103 = Methodref          #97.#104      // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n+  #104 = NameAndType        #27:#105      // map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n+  #105 = Utf8               (Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n+  #106 = String             #107          // Unknown content type:\n+  #107 = Utf8               Unknown content type:\n+  #108 = Methodref          #94.#48       // dev/langchain4j/data/message/TextContent.text:()Ljava/lang/String;\n+  #109 = Methodref          #101.#110     // dev/langchain4j/data/message/ImageContent.image:()Ldev/langchain4j/data/image/Image;\n+  #110 = NameAndType        #111:#112     // image:()Ldev/langchain4j/data/image/Image;\n+  #111 = Utf8               image\n+  #112 = Utf8               ()Ldev/langchain4j/data/image/Image;\n+  #113 = Methodref          #114.#115     // dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+  #114 = Class              #116          // dev/langchain4j/data/image/Image\n+  #115 = NameAndType        #117:#118     // url:()Ljava/net/URI;\n+  #116 = Utf8               dev/langchain4j/data/image/Image\n+  #117 = Utf8               url\n+  #118 = Utf8               ()Ljava/net/URI;\n+  #119 = Methodref          #114.#120     // dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n+  #120 = NameAndType        #121:#50      // mimeType:()Ljava/lang/String;\n+  #121 = Utf8               mimeType\n+  #122 = InvokeDynamic      #1:#123       // #1:get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n+  #123 = NameAndType        #124:#125     // get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n+  #124 = Utf8               get\n+  #125 = Utf8               (Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n+  #126 = Methodref          #127.#128     // dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #127 = Class              #129          // dev/langchain4j/internal/Utils\n+  #128 = NameAndType        #130:#131     // getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #129 = Utf8               dev/langchain4j/internal/Utils\n+  #130 = Utf8               getOrDefault\n+  #131 = Utf8               (Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #132 = Class              #133          // java/lang/String\n+  #133 = Utf8               java/lang/String\n+  #134 = Methodref          #135.#136     // java/net/URI.getScheme:()Ljava/lang/String;\n+  #135 = Class              #137          // java/net/URI\n+  #136 = NameAndType        #138:#50      // getScheme:()Ljava/lang/String;\n+  #137 = Utf8               java/net/URI\n+  #138 = Utf8               getScheme\n+  #139 = String             #140          // gs\n+  #140 = Utf8               gs\n+  #141 = Methodref          #132.#142     // java/lang/String.equals:(Ljava/lang/Object;)Z\n+  #142 = NameAndType        #143:#144     // equals:(Ljava/lang/Object;)Z\n+  #143 = Utf8               equals\n+  #144 = Utf8               (Ljava/lang/Object;)Z\n+  #145 = Methodref          #146.#147     // com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+  #146 = Class              #148          // com/google/cloud/vertexai/generativeai/preview/PartMaker\n+  #147 = NameAndType        #149:#150     // fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+  #148 = Utf8               com/google/cloud/vertexai/generativeai/preview/PartMaker\n+  #149 = Utf8               fromMimeTypeAndData\n+  #150 = Utf8               (Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+  #151 = Methodref          #135.#86      // java/net/URI.toString:()Ljava/lang/String;\n+  #152 = Methodref          #127.#153     // dev/langchain4j/internal/Utils.readBytes:(Ljava/lang/String;)[B\n+  #153 = NameAndType        #154:#155     // readBytes:(Ljava/lang/String;)[B\n+  #154 = Utf8               readBytes\n+  #155 = Utf8               (Ljava/lang/String;)[B\n+  #156 = Methodref          #157.#158     // java/util/Base64.getDecoder:()Ljava/util/Base64$Decoder;\n+  #157 = Class              #159          // java/util/Base64\n+  #158 = NameAndType        #160:#161     // getDecoder:()Ljava/util/Base64$Decoder;\n+  #159 = Utf8               java/util/Base64\n+  #160 = Utf8               getDecoder\n+  #161 = Utf8               ()Ljava/util/Base64$Decoder;\n+  #162 = Methodref          #114.#163     // dev/langchain4j/data/image/Image.base64Data:()Ljava/lang/String;\n+  #163 = NameAndType        #164:#50      // base64Data:()Ljava/lang/String;\n+  #164 = Utf8               base64Data\n+  #165 = Methodref          #166.#167     // java/util/Base64$Decoder.decode:(Ljava/lang/String;)[B\n+  #166 = Class              #168          // java/util/Base64$Decoder\n+  #167 = NameAndType        #169:#155     // decode:(Ljava/lang/String;)[B\n+  #168 = Utf8               java/util/Base64$Decoder\n+  #169 = Utf8               decode\n+  #170 = Methodref          #135.#171     // java/net/URI.getPath:()Ljava/lang/String;\n+  #171 = NameAndType        #172:#50      // getPath:()Ljava/lang/String;\n+  #172 = Utf8               getPath\n+  #173 = String             #174          // \\\\.\n+  #174 = Utf8               \\\\.\n+  #175 = Methodref          #132.#176     // java/lang/String.split:(Ljava/lang/String;)[Ljava/lang/String;\n+  #176 = NameAndType        #177:#178     // split:(Ljava/lang/String;)[Ljava/lang/String;\n+  #177 = Utf8               split\n+  #178 = Utf8               (Ljava/lang/String;)[Ljava/lang/String;\n+  #179 = Methodref          #132.#180     // java/lang/String.toLowerCase:()Ljava/lang/String;\n+  #180 = NameAndType        #181:#50      // toLowerCase:()Ljava/lang/String;\n+  #181 = Utf8               toLowerCase\n+  #182 = Fieldref           #97.#183      // dev/langchain4j/model/vertexai/PartsMapper.EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+  #183 = NameAndType        #184:#185     // EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+  #184 = Utf8               EXTENSION_TO_MIME_TYPE\n+  #185 = Utf8               Ljava/util/Map;\n+  #186 = InterfaceMethodref #187.#188     // java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object;\n+  #187 = Class              #189          // java/util/Map\n+  #188 = NameAndType        #124:#190     // get:(Ljava/lang/Object;)Ljava/lang/Object;\n+  #189 = Utf8               java/util/Map\n+  #190 = Utf8               (Ljava/lang/Object;)Ljava/lang/Object;\n+  #191 = String             #192          // Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n+  #192 = Utf8               Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n+  #193 = Methodref          #97.#194      // dev/langchain4j/model/vertexai/PartsMapper.detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n+  #194 = NameAndType        #195:#196     // detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n+  #195 = Utf8               detectMimeType\n+  #196 = Utf8               (Ljava/net/URI;)Ljava/lang/String;\n+  #197 = Class              #198          // java/util/HashMap\n+  #198 = Utf8               java/util/HashMap\n+  #199 = Methodref          #197.#3       // java/util/HashMap.\"<init>\":()V\n+  #200 = String             #201          // avif\n+  #201 = Utf8               avif\n+  #202 = String             #203          // image/avif\n+  #203 = Utf8               image/avif\n+  #204 = InterfaceMethodref #187.#205     // java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+  #205 = NameAndType        #206:#207     // put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+  #206 = Utf8               put\n+  #207 = Utf8               (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+  #208 = String             #209          // bmp\n+  #209 = Utf8               bmp\n+  #210 = String             #211          // image/bmp\n+  #211 = Utf8               image/bmp\n+  #212 = String             #213          // gif\n+  #213 = Utf8               gif\n+  #214 = String             #215          // image/gif\n+  #215 = Utf8               image/gif\n+  #216 = String             #217          // jpe\n+  #217 = Utf8               jpe\n+  #218 = String             #219          // image/jpeg\n+  #219 = Utf8               image/jpeg\n+  #220 = String             #221          // jpeg\n+  #221 = Utf8               jpeg\n+  #222 = String             #223          // jpg\n+  #223 = Utf8               jpg\n+  #224 = String             #225          // png\n+  #225 = Utf8               png\n+  #226 = String             #227          // image/png\n+  #227 = Utf8               image/png\n+  #228 = String             #229          // svg\n+  #229 = Utf8               svg\n+  #230 = String             #231          // image/svg+xml\n+  #231 = Utf8               image/svg+xml\n+  #232 = String             #233          // tif\n+  #233 = Utf8               tif\n+  #234 = String             #235          // image/tiff\n+  #235 = Utf8               image/tiff\n+  #236 = String             #237          // tiff\n+  #237 = Utf8               tiff\n+  #238 = String             #239          // webp\n+  #239 = Utf8               webp\n+  #240 = String             #241          // image/webp\n+  #241 = Utf8               image/webp\n+  #242 = Utf8               Signature\n+  #243 = Utf8               Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;\n+  #244 = Utf8               Code\n+  #245 = Utf8               LineNumberTable\n+  #246 = Utf8               LocalVariableTable\n+  #247 = Utf8               this\n+  #248 = Utf8               Ldev/langchain4j/model/vertexai/PartsMapper;\n+  #249 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n+  #250 = Utf8               message\n+  #251 = Utf8               Ldev/langchain4j/data/message/ChatMessage;\n+  #252 = Utf8               StackMapTable\n+  #253 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Part;>;\n+  #254 = Utf8               (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  #255 = Utf8               content\n+  #256 = Utf8               Ldev/langchain4j/data/message/Content;\n+  #257 = Utf8               Ldev/langchain4j/data/message/TextContent;\n+  #258 = Utf8               Ljava/lang/String;\n+  #259 = Utf8               Ldev/langchain4j/data/message/ImageContent;\n+  #260 = Utf8               Ldev/langchain4j/data/image/Image;\n+  #261 = Utf8               extension\n+  #262 = Utf8               Ljava/net/URI;\n+  #263 = Utf8               pathParts\n+  #264 = Utf8               [Ljava/lang/String;\n+  #265 = Class              #264          // \"[Ljava/lang/String;\"\n+  #266 = Utf8               lambda$map$0\n+  #267 = Utf8               (Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n+  #268 = Utf8               <clinit>\n+  #269 = Utf8               SourceFile\n+  #270 = Utf8               PartsMapper.java\n+  #271 = Utf8               BootstrapMethods\n+  #272 = MethodHandle       6:#273        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #273 = Methodref          #274.#275     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #274 = Class              #276          // java/lang/invoke/LambdaMetafactory\n+  #275 = NameAndType        #277:#278     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #276 = Utf8               java/lang/invoke/LambdaMetafactory\n+  #277 = Utf8               metafactory\n+  #278 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #279 = MethodType         #190          //  (Ljava/lang/Object;)Ljava/lang/Object;\n+  #280 = MethodHandle       6:#281        // REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  #281 = Methodref          #97.#282      // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  #282 = NameAndType        #27:#254      // map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  #283 = MethodType         #254          //  (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  #284 = MethodType         #285          //  ()Ljava/lang/Object;\n+  #285 = Utf8               ()Ljava/lang/Object;\n+  #286 = MethodHandle       6:#287        // REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n+  #287 = Methodref          #97.#288      // dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n+  #288 = NameAndType        #266:#267     // lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n+  #289 = MethodType         #50           //  ()Ljava/lang/String;\n+  #290 = Utf8               InnerClasses\n+  #291 = Utf8               Builder\n+  #292 = Utf8               Decoder\n+  #293 = Class              #294          // java/lang/invoke/MethodHandles$Lookup\n+  #294 = Utf8               java/lang/invoke/MethodHandles$Lookup\n+  #295 = Class              #296          // java/lang/invoke/MethodHandles\n+  #296 = Utf8               java/lang/invoke/MethodHandles\n+  #297 = Utf8               Lookup\n {\n   private static final java.util.Map<java.lang.String, java.lang.String> EXTENSION_TO_MIME_TYPE;\n     descriptor: Ljava/util/Map;\n     flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL\n-    Signature: #80                          // Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;\n+    Signature: #243                         // Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;\n \n   dev.langchain4j.model.vertexai.PartsMapper();\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n@@ -329,49 +327,49 @@\n \n   static java.util.List<com.google.cloud.vertexai.api.Part> map(dev.langchain4j.data.message.ChatMessage);\n     descriptor: (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=2, locals=1, args_size=1\n          0: aload_0\n-         1: instanceof    #2                  // class dev/langchain4j/data/message/UserMessage\n+         1: instanceof    #7                  // class dev/langchain4j/data/message/UserMessage\n          4: ifeq          41\n          7: aload_0\n-         8: checkcast     #2                  // class dev/langchain4j/data/message/UserMessage\n-        11: invokevirtual #3                  // Method dev/langchain4j/data/message/UserMessage.contents:()Ljava/util/List;\n-        14: invokeinterface #4,  1            // InterfaceMethod java/util/List.stream:()Ljava/util/stream/Stream;\n-        19: invokedynamic #5,  0              // InvokeDynamic #0:apply:()Ljava/util/function/Function;\n-        24: invokeinterface #6,  2            // InterfaceMethod java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-        29: invokestatic  #7                  // Method java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n-        32: invokeinterface #8,  2            // InterfaceMethod java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-        37: checkcast     #9                  // class java/util/List\n+         8: checkcast     #7                  // class dev/langchain4j/data/message/UserMessage\n+        11: invokevirtual #9                  // Method dev/langchain4j/data/message/UserMessage.contents:()Ljava/util/List;\n+        14: invokeinterface #13,  1           // InterfaceMethod java/util/List.stream:()Ljava/util/stream/Stream;\n+        19: invokedynamic #19,  0             // InvokeDynamic #0:apply:()Ljava/util/function/Function;\n+        24: invokeinterface #23,  2           // InterfaceMethod java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+        29: invokestatic  #29                 // Method java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n+        32: invokeinterface #35,  2           // InterfaceMethod java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+        37: checkcast     #14                 // class java/util/List\n         40: areturn\n         41: aload_0\n-        42: instanceof    #10                 // class dev/langchain4j/data/message/AiMessage\n+        42: instanceof    #39                 // class dev/langchain4j/data/message/AiMessage\n         45: ifeq          68\n-        48: invokestatic  #11                 // Method com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n+        48: invokestatic  #41                 // Method com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n         51: aload_0\n-        52: checkcast     #10                 // class dev/langchain4j/data/message/AiMessage\n-        55: invokevirtual #12                 // Method dev/langchain4j/data/message/AiMessage.text:()Ljava/lang/String;\n-        58: invokevirtual #13                 // Method com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n-        61: invokevirtual #14                 // Method com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n-        64: invokestatic  #15                 // Method java/util/Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;\n+        52: checkcast     #39                 // class dev/langchain4j/data/message/AiMessage\n+        55: invokevirtual #47                 // Method dev/langchain4j/data/message/AiMessage.text:()Ljava/lang/String;\n+        58: invokevirtual #51                 // Method com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n+        61: invokevirtual #57                 // Method com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n+        64: invokestatic  #61                 // Method java/util/Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;\n         67: areturn\n-        68: new           #16                 // class java/lang/StringBuilder\n+        68: new           #67                 // class java/lang/StringBuilder\n         71: dup\n-        72: invokespecial #17                 // Method java/lang/StringBuilder.\"<init>\":()V\n+        72: invokespecial #69                 // Method java/lang/StringBuilder.\"<init>\":()V\n         75: aload_0\n-        76: invokeinterface #18,  1           // InterfaceMethod dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n-        81: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        84: ldc           #20                 // String  message is not supported by Gemini\n-        86: invokevirtual #21                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        89: invokevirtual #22                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n+        76: invokeinterface #70,  1           // InterfaceMethod dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n+        81: invokevirtual #76                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        84: ldc           #80                 // String  message is not supported by Gemini\n+        86: invokevirtual #82                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        89: invokevirtual #85                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n         92: iconst_0\n-        93: anewarray     #23                 // class java/lang/Object\n-        96: invokestatic  #24                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+        93: anewarray     #2                  // class java/lang/Object\n+        96: invokestatic  #88                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n         99: athrow\n       LineNumberTable:\n         line 39: 0\n         line 40: 7\n         line 41: 24\n         line 42: 29\n         line 40: 40\n@@ -383,46 +381,46 @@\n         line 48: 68\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0     100     0 message   Ldev/langchain4j/data/message/ChatMessage;\n       StackMapTable: number_of_entries = 2\n         frame_type = 41 /* same */\n         frame_type = 26 /* same */\n-    Signature: #93                          // (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Part;>;\n+    Signature: #253                         // (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Part;>;\n \n   private static com.google.cloud.vertexai.api.Part map(dev.langchain4j.data.message.Content);\n     descriptor: (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n     flags: (0x000a) ACC_PRIVATE, ACC_STATIC\n     Code:\n       stack=2, locals=1, args_size=1\n          0: aload_0\n-         1: instanceof    #25                 // class dev/langchain4j/data/message/TextContent\n+         1: instanceof    #94                 // class dev/langchain4j/data/message/TextContent\n          4: ifeq          15\n          7: aload_0\n-         8: checkcast     #25                 // class dev/langchain4j/data/message/TextContent\n-        11: invokestatic  #26                 // Method map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n+         8: checkcast     #94                 // class dev/langchain4j/data/message/TextContent\n+        11: invokestatic  #96                 // Method map:(Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n         14: areturn\n         15: aload_0\n-        16: instanceof    #27                 // class dev/langchain4j/data/message/ImageContent\n+        16: instanceof    #101                // class dev/langchain4j/data/message/ImageContent\n         19: ifeq          30\n         22: aload_0\n-        23: checkcast     #27                 // class dev/langchain4j/data/message/ImageContent\n-        26: invokestatic  #28                 // Method map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n+        23: checkcast     #101                // class dev/langchain4j/data/message/ImageContent\n+        26: invokestatic  #103                // Method map:(Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n         29: areturn\n-        30: new           #16                 // class java/lang/StringBuilder\n+        30: new           #67                 // class java/lang/StringBuilder\n         33: dup\n-        34: invokespecial #17                 // Method java/lang/StringBuilder.\"<init>\":()V\n-        37: ldc           #29                 // String Unknown content type:\n-        39: invokevirtual #21                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        34: invokespecial #69                 // Method java/lang/StringBuilder.\"<init>\":()V\n+        37: ldc           #106                // String Unknown content type:\n+        39: invokevirtual #82                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         42: aload_0\n-        43: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        46: invokevirtual #22                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n+        43: invokevirtual #76                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        46: invokevirtual #85                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n         49: iconst_0\n-        50: anewarray     #23                 // class java/lang/Object\n-        53: invokestatic  #24                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+        50: anewarray     #2                  // class java/lang/Object\n+        53: invokestatic  #88                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n         56: athrow\n       LineNumberTable:\n         line 53: 0\n         line 54: 7\n         line 55: 15\n         line 56: 22\n         line 58: 30\n@@ -434,19 +432,19 @@\n         frame_type = 14 /* same */\n \n   private static com.google.cloud.vertexai.api.Part map(dev.langchain4j.data.message.TextContent);\n     descriptor: (Ldev/langchain4j/data/message/TextContent;)Lcom/google/cloud/vertexai/api/Part;\n     flags: (0x000a) ACC_PRIVATE, ACC_STATIC\n     Code:\n       stack=2, locals=1, args_size=1\n-         0: invokestatic  #11                 // Method com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n+         0: invokestatic  #41                 // Method com/google/cloud/vertexai/api/Part.newBuilder:()Lcom/google/cloud/vertexai/api/Part$Builder;\n          3: aload_0\n-         4: invokevirtual #30                 // Method dev/langchain4j/data/message/TextContent.text:()Ljava/lang/String;\n-         7: invokevirtual #13                 // Method com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n-        10: invokevirtual #14                 // Method com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n+         4: invokevirtual #108                // Method dev/langchain4j/data/message/TextContent.text:()Ljava/lang/String;\n+         7: invokevirtual #51                 // Method com/google/cloud/vertexai/api/Part$Builder.setText:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Part$Builder;\n+        10: invokevirtual #57                 // Method com/google/cloud/vertexai/api/Part$Builder.build:()Lcom/google/cloud/vertexai/api/Part;\n         13: areturn\n       LineNumberTable:\n         line 63: 0\n         line 64: 4\n         line 65: 10\n         line 63: 13\n       LocalVariableTable:\n@@ -455,51 +453,51 @@\n \n   static com.google.cloud.vertexai.api.Part map(dev.langchain4j.data.message.ImageContent);\n     descriptor: (Ldev/langchain4j/data/message/ImageContent;)Lcom/google/cloud/vertexai/api/Part;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=3, locals=3, args_size=1\n          0: aload_0\n-         1: invokevirtual #31                 // Method dev/langchain4j/data/message/ImageContent.image:()Ldev/langchain4j/data/image/Image;\n+         1: invokevirtual #109                // Method dev/langchain4j/data/message/ImageContent.image:()Ldev/langchain4j/data/image/Image;\n          4: astore_1\n          5: aload_1\n-         6: invokevirtual #32                 // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+         6: invokevirtual #113                // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n          9: ifnull        68\n         12: aload_1\n-        13: invokevirtual #33                 // Method dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n+        13: invokevirtual #119                // Method dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n         16: aload_1\n-        17: invokedynamic #34,  0             // InvokeDynamic #1:get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n-        22: invokestatic  #35                 // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-        25: checkcast     #36                 // class java/lang/String\n+        17: invokedynamic #122,  0            // InvokeDynamic #1:get:(Ldev/langchain4j/data/image/Image;)Ljava/util/function/Supplier;\n+        22: invokestatic  #126                // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+        25: checkcast     #132                // class java/lang/String\n         28: astore_2\n         29: aload_1\n-        30: invokevirtual #32                 // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n-        33: invokevirtual #37                 // Method java/net/URI.getScheme:()Ljava/lang/String;\n-        36: ldc           #38                 // String gs\n-        38: invokevirtual #39                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z\n+        30: invokevirtual #113                // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+        33: invokevirtual #134                // Method java/net/URI.getScheme:()Ljava/lang/String;\n+        36: ldc           #139                // String gs\n+        38: invokevirtual #141                // Method java/lang/String.equals:(Ljava/lang/Object;)Z\n         41: ifeq          53\n         44: aload_2\n         45: aload_1\n-        46: invokevirtual #32                 // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n-        49: invokestatic  #40                 // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+        46: invokevirtual #113                // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+        49: invokestatic  #145                // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n         52: areturn\n         53: aload_2\n         54: aload_1\n-        55: invokevirtual #32                 // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n-        58: invokevirtual #41                 // Method java/net/URI.toString:()Ljava/lang/String;\n-        61: invokestatic  #42                 // Method dev/langchain4j/internal/Utils.readBytes:(Ljava/lang/String;)[B\n-        64: invokestatic  #40                 // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+        55: invokevirtual #113                // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+        58: invokevirtual #151                // Method java/net/URI.toString:()Ljava/lang/String;\n+        61: invokestatic  #152                // Method dev/langchain4j/internal/Utils.readBytes:(Ljava/lang/String;)[B\n+        64: invokestatic  #145                // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n         67: areturn\n         68: aload_1\n-        69: invokevirtual #33                 // Method dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n-        72: invokestatic  #43                 // Method java/util/Base64.getDecoder:()Ljava/util/Base64$Decoder;\n+        69: invokevirtual #119                // Method dev/langchain4j/data/image/Image.mimeType:()Ljava/lang/String;\n+        72: invokestatic  #156                // Method java/util/Base64.getDecoder:()Ljava/util/Base64$Decoder;\n         75: aload_1\n-        76: invokevirtual #44                 // Method dev/langchain4j/data/image/Image.base64Data:()Ljava/lang/String;\n-        79: invokevirtual #45                 // Method java/util/Base64$Decoder.decode:(Ljava/lang/String;)[B\n-        82: invokestatic  #40                 // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n+        76: invokevirtual #162                // Method dev/langchain4j/data/image/Image.base64Data:()Ljava/lang/String;\n+        79: invokevirtual #165                // Method java/util/Base64$Decoder.decode:(Ljava/lang/String;)[B\n+        82: invokestatic  #145                // Method com/google/cloud/vertexai/generativeai/preview/PartMaker.fromMimeTypeAndData:(Ljava/lang/String;Ljava/lang/Object;)Lcom/google/cloud/vertexai/api/Part;\n         85: areturn\n       LineNumberTable:\n         line 69: 0\n         line 70: 5\n         line 71: 12\n         line 72: 29\n         line 73: 44\n@@ -519,47 +517,47 @@\n \n   static java.lang.String detectMimeType(java.net.URI);\n     descriptor: (Ljava/net/URI;)Ljava/lang/String;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=5, locals=4, args_size=1\n          0: aload_0\n-         1: invokevirtual #46                 // Method java/net/URI.getPath:()Ljava/lang/String;\n-         4: ldc           #47                 // String \\\\.\n-         6: invokevirtual #48                 // Method java/lang/String.split:(Ljava/lang/String;)[Ljava/lang/String;\n+         1: invokevirtual #170                // Method java/net/URI.getPath:()Ljava/lang/String;\n+         4: ldc           #173                // String \\\\.\n+         6: invokevirtual #175                // Method java/lang/String.split:(Ljava/lang/String;)[Ljava/lang/String;\n          9: astore_1\n         10: aload_1\n         11: arraylength\n         12: iconst_1\n         13: if_icmple     45\n         16: aload_1\n         17: aload_1\n         18: arraylength\n         19: iconst_1\n         20: isub\n         21: aaload\n-        22: invokevirtual #49                 // Method java/lang/String.toLowerCase:()Ljava/lang/String;\n+        22: invokevirtual #179                // Method java/lang/String.toLowerCase:()Ljava/lang/String;\n         25: astore_2\n-        26: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        26: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n         29: aload_2\n-        30: invokeinterface #51,  2           // InterfaceMethod java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object;\n-        35: checkcast     #36                 // class java/lang/String\n+        30: invokeinterface #186,  2          // InterfaceMethod java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object;\n+        35: checkcast     #132                // class java/lang/String\n         38: astore_3\n         39: aload_3\n         40: ifnull        45\n         43: aload_3\n         44: areturn\n-        45: ldc           #52                 // String Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n+        45: ldc           #191                // String Unable to detect the MIME type of \\'%s\\'. Please provide it explicitly.\n         47: iconst_1\n-        48: anewarray     #23                 // class java/lang/Object\n+        48: anewarray     #2                  // class java/lang/Object\n         51: dup\n         52: iconst_0\n         53: aload_0\n         54: aastore\n-        55: invokestatic  #24                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n+        55: invokestatic  #88                 // Method dev/langchain4j/internal/Exceptions.illegalArgument:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;\n         58: athrow\n       LineNumberTable:\n         line 82: 0\n         line 83: 10\n         line 84: 16\n         line 85: 26\n         line 86: 39\n@@ -578,86 +576,86 @@\n \n   private static java.lang.String lambda$map$0(dev.langchain4j.data.image.Image);\n     descriptor: (Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n     flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n-         1: invokevirtual #32                 // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n-         4: invokestatic  #53                 // Method detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n+         1: invokevirtual #113                // Method dev/langchain4j/data/image/Image.url:()Ljava/net/URI;\n+         4: invokestatic  #193                // Method detectMimeType:(Ljava/net/URI;)Ljava/lang/String;\n          7: areturn\n       LineNumberTable:\n         line 71: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       8     0 image   Ldev/langchain4j/data/image/Image;\n \n   static {};\n     descriptor: ()V\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=3, locals=0, args_size=0\n-         0: new           #54                 // class java/util/HashMap\n+         0: new           #197                // class java/util/HashMap\n          3: dup\n-         4: invokespecial #55                 // Method java/util/HashMap.\"<init>\":()V\n-         7: putstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        10: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        13: ldc           #56                 // String avif\n-        15: ldc           #57                 // String image/avif\n-        17: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+         4: invokespecial #199                // Method java/util/HashMap.\"<init>\":()V\n+         7: putstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        10: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        13: ldc           #200                // String avif\n+        15: ldc           #202                // String image/avif\n+        17: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         22: pop\n-        23: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        26: ldc           #59                 // String bmp\n-        28: ldc           #60                 // String image/bmp\n-        30: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        23: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        26: ldc           #208                // String bmp\n+        28: ldc           #210                // String image/bmp\n+        30: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         35: pop\n-        36: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        39: ldc           #61                 // String gif\n-        41: ldc           #62                 // String image/gif\n-        43: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        36: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        39: ldc           #212                // String gif\n+        41: ldc           #214                // String image/gif\n+        43: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         48: pop\n-        49: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        52: ldc           #63                 // String jpe\n-        54: ldc           #64                 // String image/jpeg\n-        56: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        49: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        52: ldc           #216                // String jpe\n+        54: ldc           #218                // String image/jpeg\n+        56: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         61: pop\n-        62: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        65: ldc           #65                 // String jpeg\n-        67: ldc           #64                 // String image/jpeg\n-        69: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        62: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        65: ldc           #220                // String jpeg\n+        67: ldc           #218                // String image/jpeg\n+        69: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         74: pop\n-        75: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        78: ldc           #66                 // String jpg\n-        80: ldc           #64                 // String image/jpeg\n-        82: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        75: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        78: ldc           #222                // String jpg\n+        80: ldc           #218                // String image/jpeg\n+        82: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n         87: pop\n-        88: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-        91: ldc           #67                 // String png\n-        93: ldc           #68                 // String image/png\n-        95: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        88: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+        91: ldc           #224                // String png\n+        93: ldc           #226                // String image/png\n+        95: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n        100: pop\n-       101: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-       104: ldc           #69                 // String svg\n-       106: ldc           #70                 // String image/svg+xml\n-       108: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+       101: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+       104: ldc           #228                // String svg\n+       106: ldc           #230                // String image/svg+xml\n+       108: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n        113: pop\n-       114: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-       117: ldc           #71                 // String tif\n-       119: ldc           #72                 // String image/tiff\n-       121: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+       114: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+       117: ldc           #232                // String tif\n+       119: ldc           #234                // String image/tiff\n+       121: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n        126: pop\n-       127: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-       130: ldc           #73                 // String tiff\n-       132: ldc           #72                 // String image/tiff\n-       134: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+       127: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+       130: ldc           #236                // String tiff\n+       132: ldc           #234                // String image/tiff\n+       134: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n        139: pop\n-       140: getstatic     #50                 // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n-       143: ldc           #74                 // String webp\n-       145: ldc           #75                 // String image/webp\n-       147: invokeinterface #58,  3           // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+       140: getstatic     #182                // Field EXTENSION_TO_MIME_TYPE:Ljava/util/Map;\n+       143: ldc           #238                // String webp\n+       145: ldc           #240                // String image/webp\n+       147: invokeinterface #204,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n        152: pop\n        153: return\n       LineNumberTable:\n         line 22: 0\n         line 25: 10\n         line 26: 23\n         line 27: 36\n@@ -668,22 +666,22 @@\n         line 32: 101\n         line 33: 114\n         line 34: 127\n         line 35: 140\n         line 36: 153\n }\n SourceFile: \"PartsMapper.java\"\n-InnerClasses:\n-  public static final #233= #140 of #137; // Builder=class com/google/cloud/vertexai/api/Part$Builder of class com/google/cloud/vertexai/api/Part\n-  public static #276= #181 of #178;       // Decoder=class java/util/Base64$Decoder of class java/util/Base64\n-  public static final #295= #294 of #297; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n BootstrapMethods:\n-  0: #125 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  0: #272 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #126 (Ljava/lang/Object;)Ljava/lang/Object;\n-      #127 REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-      #128 (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n-  1: #125 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+      #279 (Ljava/lang/Object;)Ljava/lang/Object;\n+      #280 REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+      #283 (Ldev/langchain4j/data/message/Content;)Lcom/google/cloud/vertexai/api/Part;\n+  1: #272 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #164 ()Ljava/lang/Object;\n-      #165 REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n-      #166 ()Ljava/lang/String;\n+      #284 ()Ljava/lang/Object;\n+      #286 REF_invokeStatic dev/langchain4j/model/vertexai/PartsMapper.lambda$map$0:(Ldev/langchain4j/data/image/Image;)Ljava/lang/String;\n+      #289 ()Ljava/lang/String;\n+InnerClasses:\n+  public static final #291= #52 of #42;   // Builder=class com/google/cloud/vertexai/api/Part$Builder of class com/google/cloud/vertexai/api/Part\n+  public static #292= #166 of #157;       // Decoder=class java/util/Base64$Decoder of class java/util/Base64\n+  public static final #297= #293 of #295; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n"}]}, {"source1": "dev/langchain4j/model/vertexai/RoleMapper$1.class", "source2": "dev/langchain4j/model/vertexai/RoleMapper$1.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,81 +1,80 @@\n-  SHA-256 checksum 04bd6849b3fedcd28c9caadf67b1f33285c0cdb8559ecfdc6df0ed9a8e0c55e8\n+  SHA-256 checksum 2815088fa95e8deff391e21a2f8e2e45140ee28587c4d3ec9efc4f64db82bd26\n   Compiled from \"RoleMapper.java\"\n class dev.langchain4j.model.vertexai.RoleMapper$1\n   minor version: 0\n   major version: 52\n   flags: (0x1020) ACC_SUPER, ACC_SYNTHETIC\n-  this_class: #7                          // dev/langchain4j/model/vertexai/RoleMapper$1\n-  super_class: #8                         // java/lang/Object\n+  this_class: #8                          // dev/langchain4j/model/vertexai/RoleMapper$1\n+  super_class: #26                        // java/lang/Object\n   interfaces: 0, fields: 1, methods: 1, attributes: 3\n Constant pool:\n-   #1 = Methodref          #22.#23        // dev/langchain4j/data/message/ChatMessageType.values:()[Ldev/langchain4j/data/message/ChatMessageType;\n-   #2 = Fieldref           #7.#24         // dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-   #3 = Fieldref           #22.#25        // dev/langchain4j/data/message/ChatMessageType.USER:Ldev/langchain4j/data/message/ChatMessageType;\n-   #4 = Methodref          #22.#26        // dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n-   #5 = Class              #27            // java/lang/NoSuchFieldError\n-   #6 = Fieldref           #22.#28        // dev/langchain4j/data/message/ChatMessageType.AI:Ldev/langchain4j/data/message/ChatMessageType;\n-   #7 = Class              #29            // dev/langchain4j/model/vertexai/RoleMapper$1\n-   #8 = Class              #31            // java/lang/Object\n-   #9 = Utf8               $SwitchMap$dev$langchain4j$data$message$ChatMessageType\n-  #10 = Utf8               [I\n-  #11 = Utf8               <clinit>\n-  #12 = Utf8               ()V\n-  #13 = Utf8               Code\n-  #14 = Utf8               LineNumberTable\n-  #15 = Utf8               LocalVariableTable\n-  #16 = Utf8               StackMapTable\n-  #17 = Class              #27            // java/lang/NoSuchFieldError\n-  #18 = Utf8               SourceFile\n-  #19 = Utf8               RoleMapper.java\n-  #20 = Utf8               EnclosingMethod\n-  #21 = Class              #32            // dev/langchain4j/model/vertexai/RoleMapper\n-  #22 = Class              #33            // dev/langchain4j/data/message/ChatMessageType\n-  #23 = NameAndType        #34:#35        // values:()[Ldev/langchain4j/data/message/ChatMessageType;\n-  #24 = NameAndType        #9:#10         // $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-  #25 = NameAndType        #36:#37        // USER:Ldev/langchain4j/data/message/ChatMessageType;\n-  #26 = NameAndType        #38:#39        // ordinal:()I\n-  #27 = Utf8               java/lang/NoSuchFieldError\n-  #28 = NameAndType        #40:#37        // AI:Ldev/langchain4j/data/message/ChatMessageType;\n-  #29 = Utf8               dev/langchain4j/model/vertexai/RoleMapper$1\n-  #30 = Utf8               InnerClasses\n-  #31 = Utf8               java/lang/Object\n-  #32 = Utf8               dev/langchain4j/model/vertexai/RoleMapper\n-  #33 = Utf8               dev/langchain4j/data/message/ChatMessageType\n-  #34 = Utf8               values\n-  #35 = Utf8               ()[Ldev/langchain4j/data/message/ChatMessageType;\n-  #36 = Utf8               USER\n-  #37 = Utf8               Ldev/langchain4j/data/message/ChatMessageType;\n-  #38 = Utf8               ordinal\n-  #39 = Utf8               ()I\n-  #40 = Utf8               AI\n+   #1 = Methodref          #2.#3          // dev/langchain4j/data/message/ChatMessageType.values:()[Ldev/langchain4j/data/message/ChatMessageType;\n+   #2 = Class              #4             // dev/langchain4j/data/message/ChatMessageType\n+   #3 = NameAndType        #5:#6          // values:()[Ldev/langchain4j/data/message/ChatMessageType;\n+   #4 = Utf8               dev/langchain4j/data/message/ChatMessageType\n+   #5 = Utf8               values\n+   #6 = Utf8               ()[Ldev/langchain4j/data/message/ChatMessageType;\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/RoleMapper$1.$SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/RoleMapper$1\n+   #9 = NameAndType        #11:#12        // $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+  #10 = Utf8               dev/langchain4j/model/vertexai/RoleMapper$1\n+  #11 = Utf8               $SwitchMap$dev$langchain4j$data$message$ChatMessageType\n+  #12 = Utf8               [I\n+  #13 = Fieldref           #2.#14         // dev/langchain4j/data/message/ChatMessageType.USER:Ldev/langchain4j/data/message/ChatMessageType;\n+  #14 = NameAndType        #15:#16        // USER:Ldev/langchain4j/data/message/ChatMessageType;\n+  #15 = Utf8               USER\n+  #16 = Utf8               Ldev/langchain4j/data/message/ChatMessageType;\n+  #17 = Methodref          #2.#18         // dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n+  #18 = NameAndType        #19:#20        // ordinal:()I\n+  #19 = Utf8               ordinal\n+  #20 = Utf8               ()I\n+  #21 = Class              #22            // java/lang/NoSuchFieldError\n+  #22 = Utf8               java/lang/NoSuchFieldError\n+  #23 = Fieldref           #2.#24         // dev/langchain4j/data/message/ChatMessageType.AI:Ldev/langchain4j/data/message/ChatMessageType;\n+  #24 = NameAndType        #25:#16        // AI:Ldev/langchain4j/data/message/ChatMessageType;\n+  #25 = Utf8               AI\n+  #26 = Class              #27            // java/lang/Object\n+  #27 = Utf8               java/lang/Object\n+  #28 = Utf8               <clinit>\n+  #29 = Utf8               ()V\n+  #30 = Utf8               Code\n+  #31 = Utf8               LineNumberTable\n+  #32 = Utf8               LocalVariableTable\n+  #33 = Utf8               StackMapTable\n+  #34 = Utf8               SourceFile\n+  #35 = Utf8               RoleMapper.java\n+  #36 = Utf8               EnclosingMethod\n+  #37 = Class              #38            // dev/langchain4j/model/vertexai/RoleMapper\n+  #38 = Utf8               dev/langchain4j/model/vertexai/RoleMapper\n+  #39 = Utf8               InnerClasses\n {\n   static final int[] $SwitchMap$dev$langchain4j$data$message$ChatMessageType;\n     descriptor: [I\n     flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC\n \n   static {};\n     descriptor: ()V\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=3, locals=1, args_size=0\n          0: invokestatic  #1                  // Method dev/langchain4j/data/message/ChatMessageType.values:()[Ldev/langchain4j/data/message/ChatMessageType;\n          3: arraylength\n          4: newarray       int\n-         6: putstatic     #2                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-         9: getstatic     #2                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-        12: getstatic     #3                  // Field dev/langchain4j/data/message/ChatMessageType.USER:Ldev/langchain4j/data/message/ChatMessageType;\n-        15: invokevirtual #4                  // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n+         6: putstatic     #7                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+         9: getstatic     #7                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+        12: getstatic     #13                 // Field dev/langchain4j/data/message/ChatMessageType.USER:Ldev/langchain4j/data/message/ChatMessageType;\n+        15: invokevirtual #17                 // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n         18: iconst_1\n         19: iastore\n         20: goto          24\n         23: astore_0\n-        24: getstatic     #2                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n-        27: getstatic     #6                  // Field dev/langchain4j/data/message/ChatMessageType.AI:Ldev/langchain4j/data/message/ChatMessageType;\n-        30: invokevirtual #4                  // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n+        24: getstatic     #7                  // Field $SwitchMap$dev$langchain4j$data$message$ChatMessageType:[I\n+        27: getstatic     #23                 // Field dev/langchain4j/data/message/ChatMessageType.AI:Ldev/langchain4j/data/message/ChatMessageType;\n+        30: invokevirtual #17                 // Method dev/langchain4j/data/message/ChatMessageType.ordinal:()I\n         33: iconst_2\n         34: iastore\n         35: goto          39\n         38: astore_0\n         39: return\n       Exception table:\n          from    to  target type\n@@ -90,10 +89,10 @@\n           stack = [ class java/lang/NoSuchFieldError ]\n         frame_type = 0 /* same */\n         frame_type = 77 /* same_locals_1_stack_item */\n           stack = [ class java/lang/NoSuchFieldError ]\n         frame_type = 0 /* same */\n }\n SourceFile: \"RoleMapper.java\"\n-EnclosingMethod: #21.#0                 // dev.langchain4j.model.vertexai.RoleMapper\n+EnclosingMethod: #37.#0                 // dev.langchain4j.model.vertexai.RoleMapper\n InnerClasses:\n-  static #7;                              // class dev/langchain4j/model/vertexai/RoleMapper$1\n+  static #8;                              // class dev/langchain4j/model/vertexai/RoleMapper$1\n"}]}, {"source1": "dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class", "source2": "dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,32 +1,32 @@\n-  SHA-256 checksum bdcc1abc7beed6cb65eb5ca61c15d97c748875c72426699f64f77f299c068320\n+  SHA-256 checksum 2aac227fb7c64e575858aa3b2b397b757a42067f3feb55886516a5e038369214\n   Compiled from \"VertexAiGeminiChatModelBuilderFactory.java\"\n public interface dev.langchain4j.model.vertexai.spi.VertexAiGeminiChatModelBuilderFactory extends java.util.function.Supplier<dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder>\n   minor version: 0\n   major version: 52\n   flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT\n   this_class: #1                          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-  super_class: #2                         // java/lang/Object\n+  super_class: #3                         // java/lang/Object\n   interfaces: 1, fields: 0, methods: 0, attributes: 3\n Constant pool:\n-   #1 = Class              #11            // dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-   #2 = Class              #12            // java/lang/Object\n-   #3 = Class              #13            // java/util/function/Supplier\n-   #4 = Utf8               Signature\n-   #5 = Class              #15            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-   #6 = Utf8               VertexAiGeminiChatModelBuilder\n-   #7 = Utf8               InnerClasses\n+   #1 = Class              #2             // dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n+   #2 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n+   #3 = Class              #4             // java/lang/Object\n+   #4 = Utf8               java/lang/Object\n+   #5 = Class              #6             // java/util/function/Supplier\n+   #6 = Utf8               java/util/function/Supplier\n+   #7 = Utf8               Signature\n    #8 = Utf8               Ljava/lang/Object;Ljava/util/function/Supplier<Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;>;\n    #9 = Utf8               SourceFile\n   #10 = Utf8               VertexAiGeminiChatModelBuilderFactory.java\n-  #11 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-  #12 = Utf8               java/lang/Object\n-  #13 = Utf8               java/util/function/Supplier\n-  #14 = Class              #16            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  #15 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-  #16 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  #11 = Utf8               InnerClasses\n+  #12 = Class              #13            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  #13 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  #14 = Class              #15            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  #15 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  #16 = Utf8               VertexAiGeminiChatModelBuilder\n {\n }\n Signature: #8                           // Ljava/lang/Object;Ljava/util/function/Supplier<Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;>;\n SourceFile: \"VertexAiGeminiChatModelBuilderFactory.java\"\n InnerClasses:\n-  public static #6= #5 of #14;            // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  public static #16= #12 of #14;          // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n"}]}, {"source1": "dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class", "source2": "dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,32 +1,32 @@\n-  SHA-256 checksum 98c9d07971c090e3948db9c8fc6807a707abdf4fbed424e591dca0e7dd548d8c\n+  SHA-256 checksum 142e5f78e41862bdba64de761a951fbc3761515c5b6fd3c3f8e546939dd4fbb3\n   Compiled from \"VertexAiGeminiStreamingChatModelBuilderFactory.java\"\n public interface dev.langchain4j.model.vertexai.spi.VertexAiGeminiStreamingChatModelBuilderFactory extends java.util.function.Supplier<dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder>\n   minor version: 0\n   major version: 52\n   flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT\n   this_class: #1                          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-  super_class: #2                         // java/lang/Object\n+  super_class: #3                         // java/lang/Object\n   interfaces: 1, fields: 0, methods: 0, attributes: 3\n Constant pool:\n-   #1 = Class              #11            // dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-   #2 = Class              #12            // java/lang/Object\n-   #3 = Class              #13            // java/util/function/Supplier\n-   #4 = Utf8               Signature\n-   #5 = Class              #15            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-   #6 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n-   #7 = Utf8               InnerClasses\n+   #1 = Class              #2             // dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n+   #2 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n+   #3 = Class              #4             // java/lang/Object\n+   #4 = Utf8               java/lang/Object\n+   #5 = Class              #6             // java/util/function/Supplier\n+   #6 = Utf8               java/util/function/Supplier\n+   #7 = Utf8               Signature\n    #8 = Utf8               Ljava/lang/Object;Ljava/util/function/Supplier<Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;>;\n    #9 = Utf8               SourceFile\n   #10 = Utf8               VertexAiGeminiStreamingChatModelBuilderFactory.java\n-  #11 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiStreamingChatModelBuilderFactory\n-  #12 = Utf8               java/lang/Object\n-  #13 = Utf8               java/util/function/Supplier\n-  #14 = Class              #16            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  #15 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-  #16 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  #11 = Utf8               InnerClasses\n+  #12 = Class              #13            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  #13 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  #14 = Class              #15            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  #15 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  #16 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n {\n }\n Signature: #8                           // Ljava/lang/Object;Ljava/util/function/Supplier<Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;>;\n SourceFile: \"VertexAiGeminiStreamingChatModelBuilderFactory.java\"\n InnerClasses:\n-  public static #6= #5 of #14;            // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  public static #16= #12 of #14;          // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n"}]}, {"source1": "dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class", "source2": "dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,134 +1,132 @@\n-  SHA-256 checksum 5cb8799751ea9e988d8506941b64d1293ab0fc7ea0fa7b7456d1345510a4ca49\n+  SHA-256 checksum dc4ababee5231013877dc8c3a5c658e10afb5865341f61153fa85230490236c6\n   Compiled from \"StreamingChatResponseBuilder.java\"\n class dev.langchain4j.model.vertexai.StreamingChatResponseBuilder\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #20                         // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-  super_class: #21                        // java/lang/Object\n+  this_class: #11                         // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 3, methods: 3, attributes: 2\n Constant pool:\n-    #1 = Methodref          #21.#56       // java/lang/Object.\"<init>\":()V\n-    #2 = Class              #57           // java/lang/StringBuffer\n-    #3 = Methodref          #2.#56        // java/lang/StringBuffer.\"<init>\":()V\n-    #4 = Fieldref           #20.#58       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.contentBuilder:Ljava/lang/StringBuffer;\n-    #5 = Methodref          #59.#60       // com/google/cloud/vertexai/api/GenerateContentResponse.getCandidatesList:()Ljava/util/List;\n-    #6 = InterfaceMethodref #61.#62       // java/util/List.isEmpty:()Z\n-    #7 = InterfaceMethodref #61.#63       // java/util/List.get:(I)Ljava/lang/Object;\n-    #8 = Methodref          #64.#65       // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-    #9 = Methodref          #2.#66        // java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n-   #10 = Methodref          #59.#67       // com/google/cloud/vertexai/api/GenerateContentResponse.hasUsageMetadata:()Z\n-   #11 = Methodref          #59.#68       // com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-   #12 = Methodref          #69.#70       // dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-   #13 = Fieldref           #20.#71       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n-   #14 = Methodref          #64.#72       // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #15 = Methodref          #73.#74       // dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-   #16 = Fieldref           #20.#75       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.finishReason:Ldev/langchain4j/model/output/FinishReason;\n-   #17 = Methodref          #2.#76        // java/lang/StringBuffer.toString:()Ljava/lang/String;\n-   #18 = Methodref          #77.#78       // dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-   #19 = Methodref          #79.#80       // dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-   #20 = Class              #81           // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-   #21 = Class              #82           // java/lang/Object\n-   #22 = Utf8               contentBuilder\n-   #23 = Utf8               Ljava/lang/StringBuffer;\n-   #24 = Utf8               tokenUsage\n-   #25 = Utf8               Ldev/langchain4j/model/output/TokenUsage;\n-   #26 = Utf8               finishReason\n-   #27 = Utf8               Ldev/langchain4j/model/output/FinishReason;\n-   #28 = Utf8               <init>\n-   #29 = Utf8               ()V\n-   #30 = Utf8               Code\n-   #31 = Utf8               LineNumberTable\n-   #32 = Utf8               LocalVariableTable\n-   #33 = Utf8               this\n-   #34 = Utf8               Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n-   #35 = Utf8               append\n-   #36 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n-   #37 = Utf8               partialResponse\n-   #38 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-   #39 = Utf8               candidates\n-   #40 = Utf8               Ljava/util/List;\n-   #41 = Class              #84           // com/google/cloud/vertexai/api/Candidate$FinishReason\n-   #42 = Utf8               FinishReason\n-   #43 = Utf8               InnerClasses\n-   #44 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #45 = Utf8               LocalVariableTypeTable\n-   #46 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Candidate;>;\n-   #47 = Utf8               StackMapTable\n-   #48 = Class              #85           // java/util/List\n-   #49 = Class              #84           // com/google/cloud/vertexai/api/Candidate$FinishReason\n-   #50 = Utf8               build\n-   #51 = Utf8               ()Ldev/langchain4j/model/output/Response;\n-   #52 = Utf8               Signature\n-   #53 = Utf8               ()Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n-   #54 = Utf8               SourceFile\n-   #55 = Utf8               StreamingChatResponseBuilder.java\n-   #56 = NameAndType        #28:#29       // \"<init>\":()V\n-   #57 = Utf8               java/lang/StringBuffer\n-   #58 = NameAndType        #22:#23       // contentBuilder:Ljava/lang/StringBuffer;\n-   #59 = Class              #86           // com/google/cloud/vertexai/api/GenerateContentResponse\n-   #60 = NameAndType        #87:#88       // getCandidatesList:()Ljava/util/List;\n-   #61 = Class              #85           // java/util/List\n-   #62 = NameAndType        #89:#90       // isEmpty:()Z\n-   #63 = NameAndType        #91:#92       // get:(I)Ljava/lang/Object;\n-   #64 = Class              #93           // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-   #65 = NameAndType        #94:#95       // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-   #66 = NameAndType        #35:#96       // append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n-   #67 = NameAndType        #97:#90       // hasUsageMetadata:()Z\n-   #68 = NameAndType        #98:#101      // getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-   #69 = Class              #102          // dev/langchain4j/model/vertexai/TokenUsageMapper\n-   #70 = NameAndType        #103:#104     // map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-   #71 = NameAndType        #24:#25       // tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n-   #72 = NameAndType        #105:#106     // getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #73 = Class              #107          // dev/langchain4j/model/vertexai/FinishReasonMapper\n-   #74 = NameAndType        #103:#108     // map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-   #75 = NameAndType        #26:#27       // finishReason:Ldev/langchain4j/model/output/FinishReason;\n-   #76 = NameAndType        #109:#110     // toString:()Ljava/lang/String;\n-   #77 = Class              #111          // dev/langchain4j/data/message/AiMessage\n-   #78 = NameAndType        #112:#113     // from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-   #79 = Class              #114          // dev/langchain4j/model/output/Response\n-   #80 = NameAndType        #112:#115     // from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-   #81 = Utf8               dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n-   #82 = Utf8               java/lang/Object\n-   #83 = Class              #116          // com/google/cloud/vertexai/api/Candidate\n-   #84 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n-   #85 = Utf8               java/util/List\n-   #86 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n-   #87 = Utf8               getCandidatesList\n-   #88 = Utf8               ()Ljava/util/List;\n-   #89 = Utf8               isEmpty\n-   #90 = Utf8               ()Z\n-   #91 = Utf8               get\n-   #92 = Utf8               (I)Ljava/lang/Object;\n-   #93 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-   #94 = Utf8               getText\n-   #95 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-   #96 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuffer;\n-   #97 = Utf8               hasUsageMetadata\n-   #98 = Utf8               getUsageMetadata\n-   #99 = Class              #117          // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n-  #100 = Utf8               UsageMetadata\n-  #101 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-  #102 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n-  #103 = Utf8               map\n-  #104 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-  #105 = Utf8               getFinishReason\n-  #106 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #107 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #108 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-  #109 = Utf8               toString\n-  #110 = Utf8               ()Ljava/lang/String;\n-  #111 = Utf8               dev/langchain4j/data/message/AiMessage\n-  #112 = Utf8               from\n-  #113 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-  #114 = Utf8               dev/langchain4j/model/output/Response\n-  #115 = Utf8               (Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-  #116 = Utf8               com/google/cloud/vertexai/api/Candidate\n-  #117 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+    #1 = Methodref          #2.#3         // java/lang/Object.\"<init>\":()V\n+    #2 = Class              #4            // java/lang/Object\n+    #3 = NameAndType        #5:#6         // \"<init>\":()V\n+    #4 = Utf8               java/lang/Object\n+    #5 = Utf8               <init>\n+    #6 = Utf8               ()V\n+    #7 = Class              #8            // java/lang/StringBuffer\n+    #8 = Utf8               java/lang/StringBuffer\n+    #9 = Methodref          #7.#3         // java/lang/StringBuffer.\"<init>\":()V\n+   #10 = Fieldref           #11.#12       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.contentBuilder:Ljava/lang/StringBuffer;\n+   #11 = Class              #13           // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+   #12 = NameAndType        #14:#15       // contentBuilder:Ljava/lang/StringBuffer;\n+   #13 = Utf8               dev/langchain4j/model/vertexai/StreamingChatResponseBuilder\n+   #14 = Utf8               contentBuilder\n+   #15 = Utf8               Ljava/lang/StringBuffer;\n+   #16 = Methodref          #17.#18       // com/google/cloud/vertexai/api/GenerateContentResponse.getCandidatesList:()Ljava/util/List;\n+   #17 = Class              #19           // com/google/cloud/vertexai/api/GenerateContentResponse\n+   #18 = NameAndType        #20:#21       // getCandidatesList:()Ljava/util/List;\n+   #19 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n+   #20 = Utf8               getCandidatesList\n+   #21 = Utf8               ()Ljava/util/List;\n+   #22 = InterfaceMethodref #23.#24       // java/util/List.isEmpty:()Z\n+   #23 = Class              #25           // java/util/List\n+   #24 = NameAndType        #26:#27       // isEmpty:()Z\n+   #25 = Utf8               java/util/List\n+   #26 = Utf8               isEmpty\n+   #27 = Utf8               ()Z\n+   #28 = InterfaceMethodref #23.#29       // java/util/List.get:(I)Ljava/lang/Object;\n+   #29 = NameAndType        #30:#31       // get:(I)Ljava/lang/Object;\n+   #30 = Utf8               get\n+   #31 = Utf8               (I)Ljava/lang/Object;\n+   #32 = Methodref          #33.#34       // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+   #33 = Class              #35           // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+   #34 = NameAndType        #36:#37       // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+   #35 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+   #36 = Utf8               getText\n+   #37 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+   #38 = Methodref          #7.#39        // java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n+   #39 = NameAndType        #40:#41       // append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n+   #40 = Utf8               append\n+   #41 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuffer;\n+   #42 = Methodref          #17.#43       // com/google/cloud/vertexai/api/GenerateContentResponse.hasUsageMetadata:()Z\n+   #43 = NameAndType        #44:#27       // hasUsageMetadata:()Z\n+   #44 = Utf8               hasUsageMetadata\n+   #45 = Methodref          #17.#46       // com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+   #46 = NameAndType        #47:#48       // getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+   #47 = Utf8               getUsageMetadata\n+   #48 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+   #49 = Methodref          #50.#51       // dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+   #50 = Class              #52           // dev/langchain4j/model/vertexai/TokenUsageMapper\n+   #51 = NameAndType        #53:#54       // map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+   #52 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n+   #53 = Utf8               map\n+   #54 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+   #55 = Fieldref           #11.#56       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n+   #56 = NameAndType        #57:#58       // tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n+   #57 = Utf8               tokenUsage\n+   #58 = Utf8               Ldev/langchain4j/model/output/TokenUsage;\n+   #59 = Methodref          #33.#60       // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #60 = NameAndType        #61:#62       // getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #61 = Utf8               getFinishReason\n+   #62 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #63 = Methodref          #64.#65       // dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+   #64 = Class              #66           // dev/langchain4j/model/vertexai/FinishReasonMapper\n+   #65 = NameAndType        #53:#67       // map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+   #66 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n+   #67 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+   #68 = Fieldref           #11.#69       // dev/langchain4j/model/vertexai/StreamingChatResponseBuilder.finishReason:Ldev/langchain4j/model/output/FinishReason;\n+   #69 = NameAndType        #70:#71       // finishReason:Ldev/langchain4j/model/output/FinishReason;\n+   #70 = Utf8               finishReason\n+   #71 = Utf8               Ldev/langchain4j/model/output/FinishReason;\n+   #72 = Methodref          #7.#73        // java/lang/StringBuffer.toString:()Ljava/lang/String;\n+   #73 = NameAndType        #74:#75       // toString:()Ljava/lang/String;\n+   #74 = Utf8               toString\n+   #75 = Utf8               ()Ljava/lang/String;\n+   #76 = Methodref          #77.#78       // dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+   #77 = Class              #79           // dev/langchain4j/data/message/AiMessage\n+   #78 = NameAndType        #80:#81       // from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+   #79 = Utf8               dev/langchain4j/data/message/AiMessage\n+   #80 = Utf8               from\n+   #81 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+   #82 = Methodref          #83.#84       // dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+   #83 = Class              #85           // dev/langchain4j/model/output/Response\n+   #84 = NameAndType        #80:#86       // from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+   #85 = Utf8               dev/langchain4j/model/output/Response\n+   #86 = Utf8               (Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+   #87 = Utf8               Code\n+   #88 = Utf8               LineNumberTable\n+   #89 = Utf8               LocalVariableTable\n+   #90 = Utf8               this\n+   #91 = Utf8               Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n+   #92 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)V\n+   #93 = Utf8               partialResponse\n+   #94 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+   #95 = Utf8               candidates\n+   #96 = Utf8               Ljava/util/List;\n+   #97 = Utf8               Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+   #98 = Utf8               LocalVariableTypeTable\n+   #99 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Candidate;>;\n+  #100 = Utf8               StackMapTable\n+  #101 = Class              #102          // com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #102 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #103 = Utf8               build\n+  #104 = Utf8               ()Ldev/langchain4j/model/output/Response;\n+  #105 = Utf8               Signature\n+  #106 = Utf8               ()Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n+  #107 = Utf8               SourceFile\n+  #108 = Utf8               StreamingChatResponseBuilder.java\n+  #109 = Utf8               InnerClasses\n+  #110 = Class              #111          // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #111 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #112 = Utf8               UsageMetadata\n+  #113 = Class              #114          // com/google/cloud/vertexai/api/Candidate\n+  #114 = Utf8               com/google/cloud/vertexai/api/Candidate\n+  #115 = Utf8               FinishReason\n {\n   private final java.lang.StringBuffer contentBuilder;\n     descriptor: Ljava/lang/StringBuffer;\n     flags: (0x0012) ACC_PRIVATE, ACC_FINAL\n \n   private volatile dev.langchain4j.model.output.TokenUsage tokenUsage;\n     descriptor: Ldev/langchain4j/model/output/TokenUsage;\n@@ -142,18 +140,18 @@\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=3, locals=1, args_size=1\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n          4: aload_0\n-         5: new           #2                  // class java/lang/StringBuffer\n+         5: new           #7                  // class java/lang/StringBuffer\n          8: dup\n-         9: invokespecial #3                  // Method java/lang/StringBuffer.\"<init>\":()V\n-        12: putfield      #4                  // Field contentBuilder:Ljava/lang/StringBuffer;\n+         9: invokespecial #9                  // Method java/lang/StringBuffer.\"<init>\":()V\n+        12: putfield      #10                 // Field contentBuilder:Ljava/lang/StringBuffer;\n         15: return\n       LineNumberTable:\n         line 13: 0\n         line 15: 4\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      16     0  this   Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n@@ -163,47 +161,47 @@\n     flags: (0x0000)\n     Code:\n       stack=2, locals=4, args_size=2\n          0: aload_1\n          1: ifnonnull     5\n          4: return\n          5: aload_1\n-         6: invokevirtual #5                  // Method com/google/cloud/vertexai/api/GenerateContentResponse.getCandidatesList:()Ljava/util/List;\n+         6: invokevirtual #16                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.getCandidatesList:()Ljava/util/List;\n          9: astore_2\n         10: aload_2\n-        11: invokeinterface #6,  1            // InterfaceMethod java/util/List.isEmpty:()Z\n+        11: invokeinterface #22,  1           // InterfaceMethod java/util/List.isEmpty:()Z\n         16: ifne          29\n         19: aload_2\n         20: iconst_0\n-        21: invokeinterface #7,  2            // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;\n+        21: invokeinterface #28,  2           // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;\n         26: ifnonnull     30\n         29: return\n         30: aload_0\n-        31: getfield      #4                  // Field contentBuilder:Ljava/lang/StringBuffer;\n+        31: getfield      #10                 // Field contentBuilder:Ljava/lang/StringBuffer;\n         34: aload_1\n-        35: invokestatic  #8                  // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-        38: invokevirtual #9                  // Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n+        35: invokestatic  #32                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+        38: invokevirtual #38                 // Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;\n         41: pop\n         42: aload_1\n-        43: invokevirtual #10                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.hasUsageMetadata:()Z\n+        43: invokevirtual #42                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.hasUsageMetadata:()Z\n         46: ifeq          60\n         49: aload_0\n         50: aload_1\n-        51: invokevirtual #11                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-        54: invokestatic  #12                 // Method dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-        57: putfield      #13                 // Field tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n+        51: invokevirtual #45                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+        54: invokestatic  #49                 // Method dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+        57: putfield      #55                 // Field tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n         60: aload_1\n-        61: invokestatic  #14                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+        61: invokestatic  #59                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n         64: astore_3\n         65: aload_3\n         66: ifnull        77\n         69: aload_0\n         70: aload_3\n-        71: invokestatic  #15                 // Method dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-        74: putfield      #16                 // Field finishReason:Ldev/langchain4j/model/output/FinishReason;\n+        71: invokestatic  #63                 // Method dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+        74: putfield      #68                 // Field finishReason:Ldev/langchain4j/model/output/FinishReason;\n         77: return\n       LineNumberTable:\n         line 20: 0\n         line 21: 4\n         line 24: 5\n         line 25: 10\n         line 26: 29\n@@ -236,29 +234,29 @@\n \n   dev.langchain4j.model.output.Response<dev.langchain4j.data.message.AiMessage> build();\n     descriptor: ()Ldev/langchain4j/model/output/Response;\n     flags: (0x0000)\n     Code:\n       stack=3, locals=1, args_size=1\n          0: aload_0\n-         1: getfield      #4                  // Field contentBuilder:Ljava/lang/StringBuffer;\n-         4: invokevirtual #17                 // Method java/lang/StringBuffer.toString:()Ljava/lang/String;\n-         7: invokestatic  #18                 // Method dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+         1: getfield      #10                 // Field contentBuilder:Ljava/lang/StringBuffer;\n+         4: invokevirtual #72                 // Method java/lang/StringBuffer.toString:()Ljava/lang/String;\n+         7: invokestatic  #76                 // Method dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n         10: aload_0\n-        11: getfield      #13                 // Field tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n+        11: getfield      #55                 // Field tokenUsage:Ldev/langchain4j/model/output/TokenUsage;\n         14: aload_0\n-        15: getfield      #16                 // Field finishReason:Ldev/langchain4j/model/output/FinishReason;\n-        18: invokestatic  #19                 // Method dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+        15: getfield      #68                 // Field finishReason:Ldev/langchain4j/model/output/FinishReason;\n+        18: invokestatic  #82                 // Method dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n         21: areturn\n       LineNumberTable:\n         line 42: 0\n         line 43: 4\n         line 42: 18\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      22     0  this   Ldev/langchain4j/model/vertexai/StreamingChatResponseBuilder;\n-    Signature: #53                          // ()Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n+    Signature: #106                         // ()Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n }\n SourceFile: \"StreamingChatResponseBuilder.java\"\n InnerClasses:\n-  public static final #42= #41 of #83;    // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n-  public static final #100= #99 of #59;   // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n+  public static final #112= #110 of #17;  // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n+  public static final #115= #101 of #113; // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n"}]}, {"source1": "dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class", "source2": "dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,287 +1,279 @@\n-  SHA-256 checksum 6b164cb3b35bea4db74973312dab2e2462049eb8d4d5b33514f413d9959b903b\n+  SHA-256 checksum e648f7a8482c13ef17bb66a6ee684e2fe89e487a9b28f87c652a350de9fe2033\n   Compiled from \"VertexAiGeminiChatModel.java\"\n public class dev.langchain4j.model.vertexai.VertexAiGeminiChatModel implements dev.langchain4j.model.chat.ChatLanguageModel\n   minor version: 0\n   major version: 52\n   flags: (0x0021) ACC_PUBLIC, ACC_SUPER\n-  this_class: #51                         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  super_class: #52                        // java/lang/Object\n+  this_class: #32                         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  super_class: #2                         // java/lang/Object\n   interfaces: 1, fields: 3, methods: 6, attributes: 3\n Constant pool:\n-    #1 = Methodref          #52.#117      // java/lang/Object.\"<init>\":()V\n-    #2 = Class              #118          // com/google/cloud/vertexai/VertexAI\n-    #3 = String             #73           // project\n-    #4 = Methodref          #119.#120     // dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-    #5 = String             #75           // location\n-    #6 = Class              #121          // java/lang/String\n-    #7 = Methodref          #2.#122       // com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-    #8 = Class              #123          // com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-    #9 = String             #76           // modelName\n-   #10 = Methodref          #8.#124       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-   #11 = Fieldref           #51.#125      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-   #12 = Methodref          #2.#126       // com/google/cloud/vertexai/VertexAI.close:()V\n-   #13 = Class              #127          // java/lang/Throwable\n-   #14 = Methodref          #13.#128      // java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-   #15 = Class              #129          // java/io/IOException\n-   #16 = Class              #130          // java/lang/RuntimeException\n-   #17 = Methodref          #16.#131      // java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n-   #18 = Methodref          #34.#132      // com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #19 = Methodref          #133.#134     // java/lang/Float.floatValue:()F\n-   #20 = Methodref          #83.#135      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #21 = Methodref          #29.#136      // java/lang/Integer.intValue:()I\n-   #22 = Methodref          #83.#137      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #23 = Methodref          #83.#138      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #24 = Methodref          #83.#139      // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #25 = Methodref          #83.#140      // com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #26 = Fieldref           #51.#141      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #27 = Methodref          #29.#142      // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-   #28 = Methodref          #143.#144     // dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-   #29 = Class              #145          // java/lang/Integer\n-   #30 = Fieldref           #51.#146      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.maxRetries:Ljava/lang/Integer;\n-   #31 = String             #56           // generativeModel\n-   #32 = Methodref          #119.#147     // dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-   #33 = String             #58           // generationConfig\n-   #34 = Class              #148          // com/google/cloud/vertexai/api/GenerationConfig\n-   #35 = Methodref          #149.#150     // dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n-   #36 = InvokeDynamic      #0:#156       // #0:call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n-   #37 = Methodref          #157.#158     // dev/langchain4j/internal/RetryUtils.withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n-   #38 = Class              #159          // com/google/cloud/vertexai/api/GenerateContentResponse\n-   #39 = Methodref          #160.#161     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-   #40 = Methodref          #162.#163     // dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-   #41 = Methodref          #38.#164      // com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-   #42 = Methodref          #165.#166     // dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-   #43 = Methodref          #160.#167     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-   #44 = Methodref          #168.#169     // dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-   #45 = Methodref          #170.#171     // dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-   #46 = Class              #172          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-   #47 = InvokeDynamic      #1:#175       // #1:get:()Ljava/util/function/Supplier;\n-   #48 = Methodref          #176.#177     // dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-   #49 = Class              #178          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-   #50 = Methodref          #8.#179       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-   #51 = Class              #180          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-   #52 = Class              #181          // java/lang/Object\n-   #53 = Class              #182          // dev/langchain4j/model/chat/ChatLanguageModel\n-   #54 = Utf8               VertexAiGeminiChatModelBuilder\n-   #55 = Utf8               InnerClasses\n-   #56 = Utf8               generativeModel\n-   #57 = Utf8               Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-   #58 = Utf8               generationConfig\n-   #59 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig;\n-   #60 = Utf8               maxRetries\n-   #61 = Utf8               Ljava/lang/Integer;\n-   #62 = Utf8               <init>\n-   #63 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n-   #64 = Utf8               Code\n-   #65 = Utf8               LineNumberTable\n-   #66 = Utf8               LocalVariableTable\n-   #67 = Utf8               vertexAI\n-   #68 = Utf8               Lcom/google/cloud/vertexai/VertexAI;\n-   #69 = Utf8               e\n-   #70 = Utf8               Ljava/io/IOException;\n-   #71 = Utf8               this\n-   #72 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n-   #73 = Utf8               project\n-   #74 = Utf8               Ljava/lang/String;\n-   #75 = Utf8               location\n-   #76 = Utf8               modelName\n-   #77 = Utf8               temperature\n-   #78 = Utf8               Ljava/lang/Float;\n-   #79 = Utf8               maxOutputTokens\n-   #80 = Utf8               topK\n-   #81 = Utf8               topP\n-   #82 = Utf8               generationConfigBuilder\n-   #83 = Class              #183          // com/google/cloud/vertexai/api/GenerationConfig$Builder\n-   #84 = Utf8               Builder\n-   #85 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-   #86 = Utf8               StackMapTable\n-   #87 = Class              #180          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-   #88 = Class              #121          // java/lang/String\n-   #89 = Class              #184          // java/lang/Float\n-   #90 = Class              #145          // java/lang/Integer\n-   #91 = Class              #118          // com/google/cloud/vertexai/VertexAI\n-   #92 = Class              #127          // java/lang/Throwable\n-   #93 = Class              #129          // java/io/IOException\n-   #94 = Class              #183          // com/google/cloud/vertexai/api/GenerationConfig$Builder\n-   #95 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;)V\n-   #96 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;Ljava/lang/Integer;)V\n-   #97 = Utf8               generate\n-   #98 = Utf8               (Ljava/util/List;)Ldev/langchain4j/model/output/Response;\n-   #99 = Utf8               messages\n-  #100 = Utf8               Ljava/util/List;\n-  #101 = Utf8               contents\n-  #102 = Utf8               response\n-  #103 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #104 = Utf8               LocalVariableTypeTable\n-  #105 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n-  #106 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n-  #107 = Utf8               Signature\n-  #108 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n-  #109 = Utf8               builder\n-  #110 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #111 = Utf8               lambda$generate$0\n-  #112 = Utf8               (Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #113 = Utf8               Exceptions\n-  #114 = Class              #185          // java/lang/Exception\n-  #115 = Utf8               SourceFile\n-  #116 = Utf8               VertexAiGeminiChatModel.java\n-  #117 = NameAndType        #62:#186      // \"<init>\":()V\n-  #118 = Utf8               com/google/cloud/vertexai/VertexAI\n-  #119 = Class              #187          // dev/langchain4j/internal/ValidationUtils\n-  #120 = NameAndType        #188:#189     // ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-  #121 = Utf8               java/lang/String\n-  #122 = NameAndType        #62:#190      // \"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-  #123 = Utf8               com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-  #124 = NameAndType        #62:#191      // \"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-  #125 = NameAndType        #56:#57       // generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-  #126 = NameAndType        #192:#186     // close:()V\n-  #127 = Utf8               java/lang/Throwable\n-  #128 = NameAndType        #193:#194     // addSuppressed:(Ljava/lang/Throwable;)V\n-  #129 = Utf8               java/io/IOException\n-  #130 = Utf8               java/lang/RuntimeException\n-  #131 = NameAndType        #62:#194      // \"<init>\":(Ljava/lang/Throwable;)V\n-  #132 = NameAndType        #195:#196     // newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #133 = Class              #184          // java/lang/Float\n-  #134 = NameAndType        #197:#198     // floatValue:()F\n-  #135 = NameAndType        #199:#200     // setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #136 = NameAndType        #201:#202     // intValue:()I\n-  #137 = NameAndType        #203:#204     // setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #138 = NameAndType        #205:#200     // setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #139 = NameAndType        #206:#200     // setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #140 = NameAndType        #207:#208     // build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #141 = NameAndType        #58:#59       // generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #142 = NameAndType        #209:#210     // valueOf:(I)Ljava/lang/Integer;\n-  #143 = Class              #211          // dev/langchain4j/internal/Utils\n-  #144 = NameAndType        #212:#213     // getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-  #145 = Utf8               java/lang/Integer\n-  #146 = NameAndType        #60:#61       // maxRetries:Ljava/lang/Integer;\n-  #147 = NameAndType        #214:#215     // ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-  #148 = Utf8               com/google/cloud/vertexai/api/GenerationConfig\n-  #149 = Class              #216          // dev/langchain4j/model/vertexai/ContentsMapper\n-  #150 = NameAndType        #217:#218     // map:(Ljava/util/List;)Ljava/util/List;\n-  #151 = Utf8               BootstrapMethods\n-  #152 = MethodHandle       6:#219        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #153 = MethodType         #220          //  ()Ljava/lang/Object;\n-  #154 = MethodHandle       7:#221        // REF_invokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #155 = MethodType         #222          //  ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #156 = NameAndType        #223:#224     // call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n-  #157 = Class              #225          // dev/langchain4j/internal/RetryUtils\n-  #158 = NameAndType        #226:#227     // withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n-  #159 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n-  #160 = Class              #228          // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-  #161 = NameAndType        #229:#230     // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-  #162 = Class              #231          // dev/langchain4j/data/message/AiMessage\n-  #163 = NameAndType        #232:#233     // from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-  #164 = NameAndType        #234:#237     // getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-  #165 = Class              #238          // dev/langchain4j/model/vertexai/TokenUsageMapper\n-  #166 = NameAndType        #217:#239     // map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-  #167 = NameAndType        #240:#243     // getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #168 = Class              #244          // dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #169 = NameAndType        #217:#245     // map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-  #170 = Class              #246          // dev/langchain4j/model/output/Response\n-  #171 = NameAndType        #232:#247     // from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-  #172 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-  #173 = MethodHandle       8:#248        // REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n-  #174 = MethodType         #110          //  ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #175 = NameAndType        #249:#250     // get:()Ljava/util/function/Supplier;\n-  #176 = Class              #251          // dev/langchain4j/spi/ServiceHelper\n-  #177 = NameAndType        #252:#253     // loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #178 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-  #179 = NameAndType        #254:#255     // generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #180 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  #181 = Utf8               java/lang/Object\n-  #182 = Utf8               dev/langchain4j/model/chat/ChatLanguageModel\n-  #183 = Utf8               com/google/cloud/vertexai/api/GenerationConfig$Builder\n-  #184 = Utf8               java/lang/Float\n-  #185 = Utf8               java/lang/Exception\n-  #186 = Utf8               ()V\n-  #187 = Utf8               dev/langchain4j/internal/ValidationUtils\n-  #188 = Utf8               ensureNotBlank\n-  #189 = Utf8               (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-  #190 = Utf8               (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n-  #191 = Utf8               (Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-  #192 = Utf8               close\n-  #193 = Utf8               addSuppressed\n-  #194 = Utf8               (Ljava/lang/Throwable;)V\n-  #195 = Utf8               newBuilder\n-  #196 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #197 = Utf8               floatValue\n-  #198 = Utf8               ()F\n-  #199 = Utf8               setTemperature\n-  #200 = Utf8               (F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #201 = Utf8               intValue\n-  #202 = Utf8               ()I\n-  #203 = Utf8               setMaxOutputTokens\n-  #204 = Utf8               (I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-  #205 = Utf8               setTopK\n-  #206 = Utf8               setTopP\n-  #207 = Utf8               build\n-  #208 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-  #209 = Utf8               valueOf\n-  #210 = Utf8               (I)Ljava/lang/Integer;\n-  #211 = Utf8               dev/langchain4j/internal/Utils\n-  #212 = Utf8               getOrDefault\n-  #213 = Utf8               (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-  #214 = Utf8               ensureNotNull\n-  #215 = Utf8               (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-  #216 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n-  #217 = Utf8               map\n-  #218 = Utf8               (Ljava/util/List;)Ljava/util/List;\n-  #219 = Methodref          #256.#257     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #220 = Utf8               ()Ljava/lang/Object;\n-  #221 = Methodref          #51.#258      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #222 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #223 = Utf8               call\n-  #224 = Utf8               (Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n-  #225 = Utf8               dev/langchain4j/internal/RetryUtils\n-  #226 = Utf8               withRetry\n-  #227 = Utf8               (Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n-  #228 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n-  #229 = Utf8               getText\n-  #230 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-  #231 = Utf8               dev/langchain4j/data/message/AiMessage\n-  #232 = Utf8               from\n-  #233 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n-  #234 = Utf8               getUsageMetadata\n-  #235 = Class              #259          // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n-  #236 = Utf8               UsageMetadata\n-  #237 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-  #238 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n-  #239 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-  #240 = Utf8               getFinishReason\n-  #241 = Class              #261          // com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #242 = Utf8               FinishReason\n-  #243 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-  #244 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n-  #245 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-  #246 = Utf8               dev/langchain4j/model/output/Response\n-  #247 = Utf8               (Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n-  #248 = Methodref          #49.#117      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n-  #249 = Utf8               get\n-  #250 = Utf8               ()Ljava/util/function/Supplier;\n-  #251 = Utf8               dev/langchain4j/spi/ServiceHelper\n-  #252 = Utf8               loadFactoryService\n-  #253 = Utf8               (Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-  #254 = Utf8               generateContent\n-  #255 = Utf8               (Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #256 = Class              #262          // java/lang/invoke/LambdaMetafactory\n-  #257 = NameAndType        #263:#266     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #258 = NameAndType        #111:#112     // lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  #259 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n-  #260 = Class              #267          // com/google/cloud/vertexai/api/Candidate\n-  #261 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n-  #262 = Utf8               java/lang/invoke/LambdaMetafactory\n-  #263 = Utf8               metafactory\n-  #264 = Class              #269          // java/lang/invoke/MethodHandles$Lookup\n-  #265 = Utf8               Lookup\n-  #266 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #267 = Utf8               com/google/cloud/vertexai/api/Candidate\n-  #268 = Class              #270          // java/lang/invoke/MethodHandles\n-  #269 = Utf8               java/lang/invoke/MethodHandles$Lookup\n-  #270 = Utf8               java/lang/invoke/MethodHandles\n+    #1 = Methodref          #2.#3         // java/lang/Object.\"<init>\":()V\n+    #2 = Class              #4            // java/lang/Object\n+    #3 = NameAndType        #5:#6         // \"<init>\":()V\n+    #4 = Utf8               java/lang/Object\n+    #5 = Utf8               <init>\n+    #6 = Utf8               ()V\n+    #7 = Class              #8            // com/google/cloud/vertexai/VertexAI\n+    #8 = Utf8               com/google/cloud/vertexai/VertexAI\n+    #9 = String             #10           // project\n+   #10 = Utf8               project\n+   #11 = Methodref          #12.#13       // dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #12 = Class              #14           // dev/langchain4j/internal/ValidationUtils\n+   #13 = NameAndType        #15:#16       // ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #14 = Utf8               dev/langchain4j/internal/ValidationUtils\n+   #15 = Utf8               ensureNotBlank\n+   #16 = Utf8               (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+   #17 = String             #18           // location\n+   #18 = Utf8               location\n+   #19 = Class              #20           // java/lang/String\n+   #20 = Utf8               java/lang/String\n+   #21 = Methodref          #7.#22        // com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #22 = NameAndType        #5:#23        // \"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #23 = Utf8               (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+   #24 = Class              #25           // com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+   #25 = Utf8               com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+   #26 = String             #27           // modelName\n+   #27 = Utf8               modelName\n+   #28 = Methodref          #24.#29       // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #29 = NameAndType        #5:#30        // \"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #30 = Utf8               (Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+   #31 = Fieldref           #32.#33       // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #32 = Class              #34           // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+   #33 = NameAndType        #35:#36       // generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #34 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+   #35 = Utf8               generativeModel\n+   #36 = Utf8               Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+   #37 = Methodref          #7.#38        // com/google/cloud/vertexai/VertexAI.close:()V\n+   #38 = NameAndType        #39:#6        // close:()V\n+   #39 = Utf8               close\n+   #40 = Class              #41           // java/lang/Throwable\n+   #41 = Utf8               java/lang/Throwable\n+   #42 = Methodref          #40.#43       // java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n+   #43 = NameAndType        #44:#45       // addSuppressed:(Ljava/lang/Throwable;)V\n+   #44 = Utf8               addSuppressed\n+   #45 = Utf8               (Ljava/lang/Throwable;)V\n+   #46 = Class              #47           // java/io/IOException\n+   #47 = Utf8               java/io/IOException\n+   #48 = Class              #49           // java/lang/RuntimeException\n+   #49 = Utf8               java/lang/RuntimeException\n+   #50 = Methodref          #48.#51       // java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n+   #51 = NameAndType        #5:#45        // \"<init>\":(Ljava/lang/Throwable;)V\n+   #52 = Methodref          #53.#54       // com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #53 = Class              #55           // com/google/cloud/vertexai/api/GenerationConfig\n+   #54 = NameAndType        #56:#57       // newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #55 = Utf8               com/google/cloud/vertexai/api/GenerationConfig\n+   #56 = Utf8               newBuilder\n+   #57 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #58 = Methodref          #59.#60       // java/lang/Float.floatValue:()F\n+   #59 = Class              #61           // java/lang/Float\n+   #60 = NameAndType        #62:#63       // floatValue:()F\n+   #61 = Utf8               java/lang/Float\n+   #62 = Utf8               floatValue\n+   #63 = Utf8               ()F\n+   #64 = Methodref          #65.#66       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #65 = Class              #67           // com/google/cloud/vertexai/api/GenerationConfig$Builder\n+   #66 = NameAndType        #68:#69       // setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #67 = Utf8               com/google/cloud/vertexai/api/GenerationConfig$Builder\n+   #68 = Utf8               setTemperature\n+   #69 = Utf8               (F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #70 = Methodref          #71.#72       // java/lang/Integer.intValue:()I\n+   #71 = Class              #73           // java/lang/Integer\n+   #72 = NameAndType        #74:#75       // intValue:()I\n+   #73 = Utf8               java/lang/Integer\n+   #74 = Utf8               intValue\n+   #75 = Utf8               ()I\n+   #76 = Methodref          #65.#77       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #77 = NameAndType        #78:#79       // setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #78 = Utf8               setMaxOutputTokens\n+   #79 = Utf8               (I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #80 = Methodref          #65.#81       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #81 = NameAndType        #82:#69       // setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #82 = Utf8               setTopK\n+   #83 = Methodref          #65.#84       // com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #84 = NameAndType        #85:#69       // setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+   #85 = Utf8               setTopP\n+   #86 = Methodref          #65.#87       // com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #87 = NameAndType        #88:#89       // build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #88 = Utf8               build\n+   #89 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #90 = Fieldref           #32.#91       // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #91 = NameAndType        #92:#93       // generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #92 = Utf8               generationConfig\n+   #93 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig;\n+   #94 = Methodref          #71.#95       // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+   #95 = NameAndType        #96:#97       // valueOf:(I)Ljava/lang/Integer;\n+   #96 = Utf8               valueOf\n+   #97 = Utf8               (I)Ljava/lang/Integer;\n+   #98 = Methodref          #99.#100      // dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+   #99 = Class              #101          // dev/langchain4j/internal/Utils\n+  #100 = NameAndType        #102:#103     // getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+  #101 = Utf8               dev/langchain4j/internal/Utils\n+  #102 = Utf8               getOrDefault\n+  #103 = Utf8               (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+  #104 = Fieldref           #32.#105      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.maxRetries:Ljava/lang/Integer;\n+  #105 = NameAndType        #106:#107     // maxRetries:Ljava/lang/Integer;\n+  #106 = Utf8               maxRetries\n+  #107 = Utf8               Ljava/lang/Integer;\n+  #108 = String             #35           // generativeModel\n+  #109 = Methodref          #12.#110      // dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+  #110 = NameAndType        #111:#112     // ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+  #111 = Utf8               ensureNotNull\n+  #112 = Utf8               (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+  #113 = String             #92           // generationConfig\n+  #114 = Methodref          #115.#116     // dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n+  #115 = Class              #117          // dev/langchain4j/model/vertexai/ContentsMapper\n+  #116 = NameAndType        #118:#119     // map:(Ljava/util/List;)Ljava/util/List;\n+  #117 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n+  #118 = Utf8               map\n+  #119 = Utf8               (Ljava/util/List;)Ljava/util/List;\n+  #120 = InvokeDynamic      #0:#121       // #0:call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n+  #121 = NameAndType        #122:#123     // call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n+  #122 = Utf8               call\n+  #123 = Utf8               (Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n+  #124 = Methodref          #125.#126     // dev/langchain4j/internal/RetryUtils.withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n+  #125 = Class              #127          // dev/langchain4j/internal/RetryUtils\n+  #126 = NameAndType        #128:#129     // withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n+  #127 = Utf8               dev/langchain4j/internal/RetryUtils\n+  #128 = Utf8               withRetry\n+  #129 = Utf8               (Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n+  #130 = Class              #131          // com/google/cloud/vertexai/api/GenerateContentResponse\n+  #131 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n+  #132 = Methodref          #133.#134     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #133 = Class              #135          // com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+  #134 = NameAndType        #136:#137     // getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #135 = Utf8               com/google/cloud/vertexai/generativeai/preview/ResponseHandler\n+  #136 = Utf8               getText\n+  #137 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+  #138 = Methodref          #139.#140     // dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+  #139 = Class              #141          // dev/langchain4j/data/message/AiMessage\n+  #140 = NameAndType        #142:#143     // from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+  #141 = Utf8               dev/langchain4j/data/message/AiMessage\n+  #142 = Utf8               from\n+  #143 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+  #144 = Methodref          #130.#145     // com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+  #145 = NameAndType        #146:#147     // getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+  #146 = Utf8               getUsageMetadata\n+  #147 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+  #148 = Methodref          #149.#150     // dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+  #149 = Class              #151          // dev/langchain4j/model/vertexai/TokenUsageMapper\n+  #150 = NameAndType        #118:#152     // map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+  #151 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n+  #152 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+  #153 = Methodref          #133.#154     // com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #154 = NameAndType        #155:#156     // getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #155 = Utf8               getFinishReason\n+  #156 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+  #157 = Methodref          #158.#159     // dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+  #158 = Class              #160          // dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #159 = NameAndType        #118:#161     // map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+  #160 = Utf8               dev/langchain4j/model/vertexai/FinishReasonMapper\n+  #161 = Utf8               (Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+  #162 = Methodref          #163.#164     // dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+  #163 = Class              #165          // dev/langchain4j/model/output/Response\n+  #164 = NameAndType        #142:#166     // from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+  #165 = Utf8               dev/langchain4j/model/output/Response\n+  #166 = Utf8               (Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+  #167 = Class              #168          // dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n+  #168 = Utf8               dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n+  #169 = InvokeDynamic      #1:#170       // #1:get:()Ljava/util/function/Supplier;\n+  #170 = NameAndType        #171:#172     // get:()Ljava/util/function/Supplier;\n+  #171 = Utf8               get\n+  #172 = Utf8               ()Ljava/util/function/Supplier;\n+  #173 = Methodref          #174.#175     // dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #174 = Class              #176          // dev/langchain4j/spi/ServiceHelper\n+  #175 = NameAndType        #177:#178     // loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #176 = Utf8               dev/langchain4j/spi/ServiceHelper\n+  #177 = Utf8               loadFactoryService\n+  #178 = Utf8               (Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+  #179 = Class              #180          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  #180 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  #181 = Methodref          #24.#182      // com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #182 = NameAndType        #183:#184     // generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #183 = Utf8               generateContent\n+  #184 = Utf8               (Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #185 = Class              #186          // dev/langchain4j/model/chat/ChatLanguageModel\n+  #186 = Utf8               dev/langchain4j/model/chat/ChatLanguageModel\n+  #187 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n+  #188 = Utf8               Code\n+  #189 = Utf8               LineNumberTable\n+  #190 = Utf8               LocalVariableTable\n+  #191 = Utf8               vertexAI\n+  #192 = Utf8               Lcom/google/cloud/vertexai/VertexAI;\n+  #193 = Utf8               e\n+  #194 = Utf8               Ljava/io/IOException;\n+  #195 = Utf8               this\n+  #196 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n+  #197 = Utf8               Ljava/lang/String;\n+  #198 = Utf8               temperature\n+  #199 = Utf8               Ljava/lang/Float;\n+  #200 = Utf8               maxOutputTokens\n+  #201 = Utf8               topK\n+  #202 = Utf8               topP\n+  #203 = Utf8               generationConfigBuilder\n+  #204 = Utf8               Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+  #205 = Utf8               StackMapTable\n+  #206 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;)V\n+  #207 = Utf8               (Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;Lcom/google/cloud/vertexai/api/GenerationConfig;Ljava/lang/Integer;)V\n+  #208 = Utf8               generate\n+  #209 = Utf8               (Ljava/util/List;)Ldev/langchain4j/model/output/Response;\n+  #210 = Utf8               messages\n+  #211 = Utf8               Ljava/util/List;\n+  #212 = Utf8               contents\n+  #213 = Utf8               response\n+  #214 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #215 = Utf8               LocalVariableTypeTable\n+  #216 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n+  #217 = Utf8               Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n+  #218 = Utf8               Signature\n+  #219 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n+  #220 = Utf8               builder\n+  #221 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #222 = Utf8               lambda$generate$0\n+  #223 = Utf8               (Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #224 = Utf8               Exceptions\n+  #225 = Class              #226          // java/lang/Exception\n+  #226 = Utf8               java/lang/Exception\n+  #227 = Utf8               SourceFile\n+  #228 = Utf8               VertexAiGeminiChatModel.java\n+  #229 = Utf8               BootstrapMethods\n+  #230 = MethodHandle       6:#231        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #231 = Methodref          #232.#233     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #232 = Class              #234          // java/lang/invoke/LambdaMetafactory\n+  #233 = NameAndType        #235:#236     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #234 = Utf8               java/lang/invoke/LambdaMetafactory\n+  #235 = Utf8               metafactory\n+  #236 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #237 = MethodType         #238          //  ()Ljava/lang/Object;\n+  #238 = Utf8               ()Ljava/lang/Object;\n+  #239 = MethodHandle       7:#240        // REF_invokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #240 = Methodref          #32.#241      // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #241 = NameAndType        #222:#223     // lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #242 = MethodType         #243          //  ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #243 = Utf8               ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  #244 = MethodHandle       8:#245        // REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n+  #245 = Methodref          #179.#3       // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n+  #246 = MethodType         #221          //  ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #247 = Utf8               InnerClasses\n+  #248 = Utf8               Builder\n+  #249 = Class              #250          // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #250 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #251 = Utf8               UsageMetadata\n+  #252 = Class              #253          // com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #253 = Utf8               com/google/cloud/vertexai/api/Candidate$FinishReason\n+  #254 = Class              #255          // com/google/cloud/vertexai/api/Candidate\n+  #255 = Utf8               com/google/cloud/vertexai/api/Candidate\n+  #256 = Utf8               FinishReason\n+  #257 = Utf8               VertexAiGeminiChatModelBuilder\n+  #258 = Class              #259          // java/lang/invoke/MethodHandles$Lookup\n+  #259 = Utf8               java/lang/invoke/MethodHandles$Lookup\n+  #260 = Class              #261          // java/lang/invoke/MethodHandles\n+  #261 = Utf8               java/lang/invoke/MethodHandles\n+  #262 = Utf8               Lookup\n {\n   private final com.google.cloud.vertexai.generativeai.preview.GenerativeModel generativeModel;\n     descriptor: Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n     flags: (0x0012) ACC_PRIVATE, ACC_FINAL\n \n   private final com.google.cloud.vertexai.api.GenerationConfig generationConfig;\n     descriptor: Lcom/google/cloud/vertexai/api/GenerationConfig;\n@@ -291,194 +283,155 @@\n     descriptor: Ljava/lang/Integer;\n     flags: (0x0012) ACC_PRIVATE, ACC_FINAL\n \n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel(java.lang.String, java.lang.String, java.lang.String, java.lang.Float, java.lang.Integer, java.lang.Integer, java.lang.Float, java.lang.Integer);\n     descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n-      stack=5, locals=14, args_size=9\n+      stack=5, locals=12, args_size=9\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n-         4: new           #2                  // class com/google/cloud/vertexai/VertexAI\n+         4: new           #7                  // class com/google/cloud/vertexai/VertexAI\n          7: dup\n          8: aload_1\n-         9: ldc           #3                  // String project\n-        11: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+         9: ldc           #9                  // String project\n+        11: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n         14: aload_2\n-        15: ldc           #5                  // String location\n-        17: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+        15: ldc           #17                 // String location\n+        17: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n         20: iconst_0\n-        21: anewarray     #6                  // class java/lang/String\n-        24: invokespecial #7                  // Method com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n+        21: anewarray     #19                 // class java/lang/String\n+        24: invokespecial #21                 // Method com/google/cloud/vertexai/VertexAI.\"<init>\":(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V\n         27: astore        9\n-        29: aconst_null\n-        30: astore        10\n-        32: aload_0\n-        33: new           #8                  // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-        36: dup\n-        37: aload_3\n-        38: ldc           #9                  // String modelName\n-        40: invokestatic  #4                  // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n-        43: aload         9\n-        45: invokespecial #10                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n-        48: putfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n-        51: aload         9\n-        53: ifnull        138\n-        56: aload         10\n-        58: ifnull        81\n-        61: aload         9\n-        63: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-        66: goto          138\n-        69: astore        11\n-        71: aload         10\n-        73: aload         11\n-        75: invokevirtual #14                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-        78: goto          138\n-        81: aload         9\n-        83: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-        86: goto          138\n-        89: astore        11\n-        91: aload         11\n-        93: astore        10\n-        95: aload         11\n-        97: athrow\n-        98: astore        12\n-       100: aload         9\n-       102: ifnull        135\n-       105: aload         10\n-       107: ifnull        130\n-       110: aload         9\n-       112: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-       115: goto          135\n-       118: astore        13\n-       120: aload         10\n-       122: aload         13\n-       124: invokevirtual #14                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n-       127: goto          135\n-       130: aload         9\n-       132: invokevirtual #12                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n-       135: aload         12\n-       137: athrow\n-       138: goto          153\n-       141: astore        9\n-       143: new           #16                 // class java/lang/RuntimeException\n-       146: dup\n-       147: aload         9\n-       149: invokespecial #17                 // Method java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n-       152: athrow\n-       153: invokestatic  #18                 // Method com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       156: astore        9\n-       158: aload         4\n-       160: ifnull        174\n-       163: aload         9\n-       165: aload         4\n-       167: invokevirtual #19                 // Method java/lang/Float.floatValue:()F\n-       170: invokevirtual #20                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       173: pop\n-       174: aload         5\n-       176: ifnull        190\n-       179: aload         9\n-       181: aload         5\n-       183: invokevirtual #21                 // Method java/lang/Integer.intValue:()I\n-       186: invokevirtual #22                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       189: pop\n-       190: aload         6\n-       192: ifnull        207\n-       195: aload         9\n-       197: aload         6\n-       199: invokevirtual #21                 // Method java/lang/Integer.intValue:()I\n-       202: i2f\n-       203: invokevirtual #23                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       206: pop\n-       207: aload         7\n-       209: ifnull        223\n-       212: aload         9\n-       214: aload         7\n-       216: invokevirtual #19                 // Method java/lang/Float.floatValue:()F\n-       219: invokevirtual #24                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-       222: pop\n-       223: aload_0\n-       224: aload         9\n-       226: invokevirtual #25                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n-       229: putfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-       232: aload_0\n-       233: aload         8\n-       235: iconst_3\n-       236: invokestatic  #27                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-       239: invokestatic  #28                 // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-       242: checkcast     #29                 // class java/lang/Integer\n-       245: putfield      #30                 // Field maxRetries:Ljava/lang/Integer;\n-       248: return\n+        29: aload_0\n+        30: new           #24                 // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+        33: dup\n+        34: aload_3\n+        35: ldc           #26                 // String modelName\n+        37: invokestatic  #11                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotBlank:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;\n+        40: aload         9\n+        42: invokespecial #28                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.\"<init>\":(Ljava/lang/String;Lcom/google/cloud/vertexai/VertexAI;)V\n+        45: putfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+        48: aload         9\n+        50: invokevirtual #37                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n+        53: goto          78\n+        56: astore        10\n+        58: aload         9\n+        60: invokevirtual #37                 // Method com/google/cloud/vertexai/VertexAI.close:()V\n+        63: goto          75\n+        66: astore        11\n+        68: aload         10\n+        70: aload         11\n+        72: invokevirtual #42                 // Method java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V\n+        75: aload         10\n+        77: athrow\n+        78: goto          93\n+        81: astore        9\n+        83: new           #48                 // class java/lang/RuntimeException\n+        86: dup\n+        87: aload         9\n+        89: invokespecial #50                 // Method java/lang/RuntimeException.\"<init>\":(Ljava/lang/Throwable;)V\n+        92: athrow\n+        93: invokestatic  #52                 // Method com/google/cloud/vertexai/api/GenerationConfig.newBuilder:()Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+        96: astore        9\n+        98: aload         4\n+       100: ifnull        114\n+       103: aload         9\n+       105: aload         4\n+       107: invokevirtual #58                 // Method java/lang/Float.floatValue:()F\n+       110: invokevirtual #64                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTemperature:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       113: pop\n+       114: aload         5\n+       116: ifnull        130\n+       119: aload         9\n+       121: aload         5\n+       123: invokevirtual #70                 // Method java/lang/Integer.intValue:()I\n+       126: invokevirtual #76                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setMaxOutputTokens:(I)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       129: pop\n+       130: aload         6\n+       132: ifnull        147\n+       135: aload         9\n+       137: aload         6\n+       139: invokevirtual #70                 // Method java/lang/Integer.intValue:()I\n+       142: i2f\n+       143: invokevirtual #80                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopK:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       146: pop\n+       147: aload         7\n+       149: ifnull        163\n+       152: aload         9\n+       154: aload         7\n+       156: invokevirtual #58                 // Method java/lang/Float.floatValue:()F\n+       159: invokevirtual #83                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.setTopP:(F)Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+       162: pop\n+       163: aload_0\n+       164: aload         9\n+       166: invokevirtual #86                 // Method com/google/cloud/vertexai/api/GenerationConfig$Builder.build:()Lcom/google/cloud/vertexai/api/GenerationConfig;\n+       169: putfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+       172: aload_0\n+       173: aload         8\n+       175: iconst_3\n+       176: invokestatic  #94                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+       179: invokestatic  #98                 // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+       182: checkcast     #71                 // class java/lang/Integer\n+       185: putfield      #104                // Field maxRetries:Ljava/lang/Integer;\n+       188: return\n       Exception table:\n          from    to  target type\n-            61    66    69   Class java/lang/Throwable\n-            32    51    89   Class java/lang/Throwable\n-            32    51    98   any\n-           110   115   118   Class java/lang/Throwable\n-            89   100    98   any\n-             4   138   141   Class java/io/IOException\n+            29    48    56   Class java/lang/Throwable\n+            58    63    66   Class java/lang/Throwable\n+             4    78    81   Class java/io/IOException\n       LineNumberTable:\n         line 58: 0\n         line 60: 4\n         line 61: 11\n         line 62: 17\n-        line 60: 29\n-        line 64: 32\n-        line 65: 51\n-        line 60: 89\n-        line 65: 98\n-        line 67: 138\n-        line 65: 141\n-        line 66: 143\n-        line 69: 153\n-        line 70: 158\n-        line 71: 163\n-        line 73: 174\n-        line 74: 179\n-        line 76: 190\n-        line 77: 195\n-        line 79: 207\n-        line 80: 212\n-        line 82: 223\n-        line 84: 232\n-        line 85: 248\n+        line 64: 29\n+        line 65: 48\n+        line 60: 56\n+        line 67: 78\n+        line 65: 81\n+        line 66: 83\n+        line 69: 93\n+        line 70: 98\n+        line 71: 103\n+        line 73: 114\n+        line 74: 119\n+        line 76: 130\n+        line 77: 135\n+        line 79: 147\n+        line 80: 152\n+        line 82: 163\n+        line 84: 172\n+        line 85: 188\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n-           29     109     9 vertexAI   Lcom/google/cloud/vertexai/VertexAI;\n-          143      10     9     e   Ljava/io/IOException;\n-            0     249     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n-            0     249     1 project   Ljava/lang/String;\n-            0     249     2 location   Ljava/lang/String;\n-            0     249     3 modelName   Ljava/lang/String;\n-            0     249     4 temperature   Ljava/lang/Float;\n-            0     249     5 maxOutputTokens   Ljava/lang/Integer;\n-            0     249     6  topK   Ljava/lang/Integer;\n-            0     249     7  topP   Ljava/lang/Float;\n-            0     249     8 maxRetries   Ljava/lang/Integer;\n-          158      91     9 generationConfigBuilder   Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n-      StackMapTable: number_of_entries = 14\n+           29      49     9 vertexAI   Lcom/google/cloud/vertexai/VertexAI;\n+           83      10     9     e   Ljava/io/IOException;\n+            0     189     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n+            0     189     1 project   Ljava/lang/String;\n+            0     189     2 location   Ljava/lang/String;\n+            0     189     3 modelName   Ljava/lang/String;\n+            0     189     4 temperature   Ljava/lang/Float;\n+            0     189     5 maxOutputTokens   Ljava/lang/Integer;\n+            0     189     6  topK   Ljava/lang/Integer;\n+            0     189     7  topP   Ljava/lang/Float;\n+            0     189     8 maxRetries   Ljava/lang/Integer;\n+           98      91     9 generationConfigBuilder   Lcom/google/cloud/vertexai/api/GenerationConfig$Builder;\n+      StackMapTable: number_of_entries = 10\n         frame_type = 255 /* full_frame */\n-          offset_delta = 69\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class java/lang/Integer, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable ]\n-          stack = [ class java/lang/Throwable ]\n-        frame_type = 11 /* same */\n-        frame_type = 71 /* same_locals_1_stack_item */\n-          stack = [ class java/lang/Throwable ]\n-        frame_type = 72 /* same_locals_1_stack_item */\n+          offset_delta = 56\n+          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class java/lang/Integer, class com/google/cloud/vertexai/VertexAI ]\n           stack = [ class java/lang/Throwable ]\n         frame_type = 255 /* full_frame */\n-          offset_delta = 19\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class java/lang/Integer, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable, top, class java/lang/Throwable ]\n+          offset_delta = 9\n+          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class java/lang/Integer, class com/google/cloud/vertexai/VertexAI, class java/lang/Throwable ]\n           stack = [ class java/lang/Throwable ]\n-        frame_type = 11 /* same */\n-        frame_type = 4 /* same */\n-        frame_type = 255 /* full_frame */\n+        frame_type = 8 /* same */\n+        frame_type = 249 /* chop */\n           offset_delta = 2\n-          locals = [ class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/Float, class java/lang/Integer, class java/lang/Integer, class java/lang/Float, class java/lang/Integer ]\n-          stack = []\n         frame_type = 66 /* same_locals_1_stack_item */\n           stack = [ class java/io/IOException ]\n         frame_type = 11 /* same */\n         frame_type = 252 /* append */\n           offset_delta = 20\n           locals = [ class com/google/cloud/vertexai/api/GenerationConfig$Builder ]\n         frame_type = 15 /* same */\n@@ -490,28 +443,28 @@\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=3, locals=3, args_size=3\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n          4: aload_0\n          5: aload_1\n-         6: ldc           #31                 // String generativeModel\n-         8: invokestatic  #32                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        11: checkcast     #8                  // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-        14: putfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+         6: ldc           #108                // String generativeModel\n+         8: invokestatic  #109                // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        11: checkcast     #24                 // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+        14: putfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n         17: aload_0\n         18: aload_2\n-        19: ldc           #33                 // String generationConfig\n-        21: invokestatic  #32                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        24: checkcast     #34                 // class com/google/cloud/vertexai/api/GenerationConfig\n-        27: putfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+        19: ldc           #113                // String generationConfig\n+        21: invokestatic  #109                // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        24: checkcast     #53                 // class com/google/cloud/vertexai/api/GenerationConfig\n+        27: putfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n         30: aload_0\n         31: iconst_3\n-        32: invokestatic  #27                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-        35: putfield      #30                 // Field maxRetries:Ljava/lang/Integer;\n+        32: invokestatic  #94                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+        35: putfield      #104                // Field maxRetries:Ljava/lang/Integer;\n         38: return\n       LineNumberTable:\n         line 88: 0\n         line 89: 4\n         line 90: 17\n         line 91: 30\n         line 92: 38\n@@ -526,31 +479,31 @@\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=3, locals=4, args_size=4\n          0: aload_0\n          1: invokespecial #1                  // Method java/lang/Object.\"<init>\":()V\n          4: aload_0\n          5: aload_1\n-         6: ldc           #31                 // String generativeModel\n-         8: invokestatic  #32                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        11: checkcast     #8                  // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n-        14: putfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+         6: ldc           #108                // String generativeModel\n+         8: invokestatic  #109                // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        11: checkcast     #24                 // class com/google/cloud/vertexai/generativeai/preview/GenerativeModel\n+        14: putfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n         17: aload_0\n         18: aload_2\n-        19: ldc           #33                 // String generationConfig\n-        21: invokestatic  #32                 // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n-        24: checkcast     #34                 // class com/google/cloud/vertexai/api/GenerationConfig\n-        27: putfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+        19: ldc           #113                // String generationConfig\n+        21: invokestatic  #109                // Method dev/langchain4j/internal/ValidationUtils.ensureNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;\n+        24: checkcast     #53                 // class com/google/cloud/vertexai/api/GenerationConfig\n+        27: putfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n         30: aload_0\n         31: aload_3\n         32: iconst_3\n-        33: invokestatic  #27                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-        36: invokestatic  #28                 // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n-        39: checkcast     #29                 // class java/lang/Integer\n-        42: putfield      #30                 // Field maxRetries:Ljava/lang/Integer;\n+        33: invokestatic  #94                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+        36: invokestatic  #98                 // Method dev/langchain4j/internal/Utils.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;\n+        39: checkcast     #71                 // class java/lang/Integer\n+        42: putfield      #104                // Field maxRetries:Ljava/lang/Integer;\n         45: return\n       LineNumberTable:\n         line 96: 0\n         line 97: 4\n         line 98: 17\n         line 99: 30\n         line 100: 45\n@@ -563,35 +516,35 @@\n \n   public dev.langchain4j.model.output.Response<dev.langchain4j.data.message.AiMessage> generate(java.util.List<dev.langchain4j.data.message.ChatMessage>);\n     descriptor: (Ljava/util/List;)Ldev/langchain4j/model/output/Response;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=3, locals=4, args_size=2\n          0: aload_1\n-         1: invokestatic  #35                 // Method dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n+         1: invokestatic  #114                // Method dev/langchain4j/model/vertexai/ContentsMapper.map:(Ljava/util/List;)Ljava/util/List;\n          4: astore_2\n          5: aload_0\n          6: aload_2\n-         7: invokedynamic #36,  0             // InvokeDynamic #0:call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n+         7: invokedynamic #120,  0            // InvokeDynamic #0:call:(Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;Ljava/util/List;)Ljava/util/concurrent/Callable;\n         12: aload_0\n-        13: getfield      #30                 // Field maxRetries:Ljava/lang/Integer;\n-        16: invokevirtual #21                 // Method java/lang/Integer.intValue:()I\n-        19: invokestatic  #37                 // Method dev/langchain4j/internal/RetryUtils.withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n-        22: checkcast     #38                 // class com/google/cloud/vertexai/api/GenerateContentResponse\n+        13: getfield      #104                // Field maxRetries:Ljava/lang/Integer;\n+        16: invokevirtual #70                 // Method java/lang/Integer.intValue:()I\n+        19: invokestatic  #124                // Method dev/langchain4j/internal/RetryUtils.withRetry:(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;\n+        22: checkcast     #130                // class com/google/cloud/vertexai/api/GenerateContentResponse\n         25: astore_3\n         26: aload_3\n-        27: invokestatic  #39                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n-        30: invokestatic  #40                 // Method dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n+        27: invokestatic  #132                // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getText:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Ljava/lang/String;\n+        30: invokestatic  #138                // Method dev/langchain4j/data/message/AiMessage.from:(Ljava/lang/String;)Ldev/langchain4j/data/message/AiMessage;\n         33: aload_3\n-        34: invokevirtual #41                 // Method com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-        37: invokestatic  #42                 // Method dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+        34: invokevirtual #144                // Method com/google/cloud/vertexai/api/GenerateContentResponse.getUsageMetadata:()Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+        37: invokestatic  #148                // Method dev/langchain4j/model/vertexai/TokenUsageMapper.map:(Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n         40: aload_3\n-        41: invokestatic  #43                 // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n-        44: invokestatic  #44                 // Method dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n-        47: invokestatic  #45                 // Method dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n+        41: invokestatic  #153                // Method com/google/cloud/vertexai/generativeai/preview/ResponseHandler.getFinishReason:(Lcom/google/cloud/vertexai/api/GenerateContentResponse;)Lcom/google/cloud/vertexai/api/Candidate$FinishReason;\n+        44: invokestatic  #157                // Method dev/langchain4j/model/vertexai/FinishReasonMapper.map:(Lcom/google/cloud/vertexai/api/Candidate$FinishReason;)Ldev/langchain4j/model/output/FinishReason;\n+        47: invokestatic  #162                // Method dev/langchain4j/model/output/Response.from:(Ljava/lang/Object;Ldev/langchain4j/model/output/TokenUsage;Ldev/langchain4j/model/output/FinishReason;)Ldev/langchain4j/model/output/Response;\n         50: areturn\n       LineNumberTable:\n         line 105: 0\n         line 107: 5\n         line 109: 26\n         line 110: 27\n         line 111: 34\n@@ -603,61 +556,61 @@\n             0      51     1 messages   Ljava/util/List;\n             5      46     2 contents   Ljava/util/List;\n            26      25     3 response   Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n       LocalVariableTypeTable:\n         Start  Length  Slot  Name   Signature\n             0      51     1 messages   Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n             5      46     2 contents   Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n-    Signature: #108                         // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n+    Signature: #219                         // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ldev/langchain4j/model/output/Response<Ldev/langchain4j/data/message/AiMessage;>;\n \n   public static dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder builder();\n     descriptor: ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0009) ACC_PUBLIC, ACC_STATIC\n     Code:\n       stack=2, locals=0, args_size=0\n-         0: ldc           #46                 // class dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n-         2: invokedynamic #47,  0             // InvokeDynamic #1:get:()Ljava/util/function/Supplier;\n-         7: invokestatic  #48                 // Method dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n-        10: checkcast     #49                 // class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+         0: ldc           #167                // class dev/langchain4j/model/vertexai/spi/VertexAiGeminiChatModelBuilderFactory\n+         2: invokedynamic #169,  0            // InvokeDynamic #1:get:()Ljava/util/function/Supplier;\n+         7: invokestatic  #173                // Method dev/langchain4j/spi/ServiceHelper.loadFactoryService:(Ljava/lang/Class;Ljava/util/function/Supplier;)Ljava/lang/Object;\n+        10: checkcast     #179                // class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n         13: areturn\n       LineNumberTable:\n         line 117: 0\n \n   private com.google.cloud.vertexai.api.GenerateContentResponse lambda$generate$0(java.util.List) throws java.lang.Exception;\n     descriptor: (Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n     flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC\n     Code:\n       stack=3, locals=2, args_size=2\n          0: aload_0\n-         1: getfield      #11                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n+         1: getfield      #31                 // Field generativeModel:Lcom/google/cloud/vertexai/generativeai/preview/GenerativeModel;\n          4: aload_1\n          5: aload_0\n-         6: getfield      #26                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n-         9: invokevirtual #50                 // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+         6: getfield      #90                 // Field generationConfig:Lcom/google/cloud/vertexai/api/GenerationConfig;\n+         9: invokevirtual #181                // Method com/google/cloud/vertexai/generativeai/preview/GenerativeModel.generateContent:(Ljava/util/List;Lcom/google/cloud/vertexai/api/GenerationConfig;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n         12: areturn\n       LineNumberTable:\n         line 107: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      13     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n             0      13     1 contents   Ljava/util/List;\n     Exceptions:\n       throws java.lang.Exception\n }\n SourceFile: \"VertexAiGeminiChatModel.java\"\n-InnerClasses:\n-  public static #54= #49 of #51;          // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  public static final #84= #83 of #34;    // Builder=class com/google/cloud/vertexai/api/GenerationConfig$Builder of class com/google/cloud/vertexai/api/GenerationConfig\n-  public static final #236= #235 of #38;  // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n-  public static final #242= #241 of #260; // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n-  public static final #265= #264 of #268; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n BootstrapMethods:\n-  0: #152 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  0: #230 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #153 ()Ljava/lang/Object;\n-      #154 REF_invokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-      #155 ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n-  1: #152 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+      #237 ()Ljava/lang/Object;\n+      #239 REF_invokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.lambda$generate$0:(Ljava/util/List;)Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+      #242 ()Lcom/google/cloud/vertexai/api/GenerateContentResponse;\n+  1: #230 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #153 ()Ljava/lang/Object;\n-      #173 REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n-      #174 ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+      #237 ()Ljava/lang/Object;\n+      #244 REF_newInvokeSpecial dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.\"<init>\":()V\n+      #246 ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+InnerClasses:\n+  public static final #248= #65 of #53;   // Builder=class com/google/cloud/vertexai/api/GenerationConfig$Builder of class com/google/cloud/vertexai/api/GenerationConfig\n+  public static final #251= #249 of #130; // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n+  public static final #256= #252 of #254; // FinishReason=class com/google/cloud/vertexai/api/Candidate$FinishReason of class com/google/cloud/vertexai/api/Candidate\n+  public static #257= #179 of #32;        // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  public static final #262= #258 of #260; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n"}]}, {"source1": "dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class", "source2": "dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,103 +1,103 @@\n-  SHA-256 checksum 79980b72a155e9f3cf3958c63fc22db11e062e08e2f80a825ef004d46b6f9ee6\n+  SHA-256 checksum 86417c54e9c1ea5ca1cc58a3ceeccb04fdf1f3de199ed048952896c2b18fd778\n   Compiled from \"VertexAiGeminiChatModel.java\"\n public class dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n   minor version: 0\n   major version: 52\n   flags: (0x0021) ACC_PUBLIC, ACC_SUPER\n-  this_class: #26                         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-  super_class: #27                        // java/lang/Object\n+  this_class: #8                          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 8, methods: 11, attributes: 2\n Constant pool:\n-   #1 = Methodref          #27.#57        // java/lang/Object.\"<init>\":()V\n-   #2 = Fieldref           #26.#58        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.project:Ljava/lang/String;\n-   #3 = Fieldref           #26.#59        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.location:Ljava/lang/String;\n-   #4 = Fieldref           #26.#60        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.modelName:Ljava/lang/String;\n-   #5 = Fieldref           #26.#61        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.temperature:Ljava/lang/Float;\n-   #6 = Fieldref           #26.#62        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.maxOutputTokens:Ljava/lang/Integer;\n-   #7 = Fieldref           #26.#63        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.topK:Ljava/lang/Integer;\n-   #8 = Fieldref           #26.#64        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.topP:Ljava/lang/Float;\n-   #9 = Fieldref           #26.#65        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.maxRetries:Ljava/lang/Integer;\n-  #10 = Class              #66            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  #11 = Methodref          #10.#67        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n-  #12 = Class              #68            // java/lang/StringBuilder\n-  #13 = Methodref          #12.#57        // java/lang/StringBuilder.\"<init>\":()V\n-  #14 = String             #69            // VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n-  #15 = Methodref          #12.#70        // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #16 = String             #71            // , location=\n-  #17 = String             #72            // , modelName=\n-  #18 = String             #73            // , temperature=\n-  #19 = Methodref          #12.#74        // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #20 = String             #75            // , maxOutputTokens=\n-  #21 = String             #76            // , topK=\n-  #22 = String             #77            // , topP=\n-  #23 = String             #78            // , maxRetries=\n-  #24 = String             #79            // )\n-  #25 = Methodref          #12.#80        // java/lang/StringBuilder.toString:()Ljava/lang/String;\n-  #26 = Class              #81            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-  #27 = Class              #82            // java/lang/Object\n-  #28 = Utf8               project\n-  #29 = Utf8               Ljava/lang/String;\n-  #30 = Utf8               location\n-  #31 = Utf8               modelName\n-  #32 = Utf8               temperature\n-  #33 = Utf8               Ljava/lang/Float;\n-  #34 = Utf8               maxOutputTokens\n-  #35 = Utf8               Ljava/lang/Integer;\n-  #36 = Utf8               topK\n-  #37 = Utf8               topP\n-  #38 = Utf8               maxRetries\n-  #39 = Utf8               <init>\n-  #40 = Utf8               ()V\n-  #41 = Utf8               Code\n-  #42 = Utf8               LineNumberTable\n-  #43 = Utf8               LocalVariableTable\n-  #44 = Utf8               this\n-  #45 = Utf8               VertexAiGeminiChatModelBuilder\n-  #46 = Utf8               InnerClasses\n-  #47 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #48 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #49 = Utf8               (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #50 = Utf8               (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n-  #51 = Utf8               build\n-  #52 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n-  #53 = Utf8               toString\n-  #54 = Utf8               ()Ljava/lang/String;\n-  #55 = Utf8               SourceFile\n-  #56 = Utf8               VertexAiGeminiChatModel.java\n-  #57 = NameAndType        #39:#40        // \"<init>\":()V\n-  #58 = NameAndType        #28:#29        // project:Ljava/lang/String;\n-  #59 = NameAndType        #30:#29        // location:Ljava/lang/String;\n-  #60 = NameAndType        #31:#29        // modelName:Ljava/lang/String;\n-  #61 = NameAndType        #32:#33        // temperature:Ljava/lang/Float;\n-  #62 = NameAndType        #34:#35        // maxOutputTokens:Ljava/lang/Integer;\n-  #63 = NameAndType        #36:#35        // topK:Ljava/lang/Integer;\n-  #64 = NameAndType        #37:#33        // topP:Ljava/lang/Float;\n-  #65 = NameAndType        #38:#35        // maxRetries:Ljava/lang/Integer;\n-  #66 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n-  #67 = NameAndType        #39:#83        // \"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n-  #68 = Utf8               java/lang/StringBuilder\n-  #69 = Utf8               VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n-  #70 = NameAndType        #84:#85        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #71 = Utf8               , location=\n-  #72 = Utf8               , modelName=\n-  #73 = Utf8               , temperature=\n-  #74 = NameAndType        #84:#86        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #75 = Utf8               , maxOutputTokens=\n-  #76 = Utf8               , topK=\n-  #77 = Utf8               , topP=\n-  #78 = Utf8               , maxRetries=\n-  #79 = Utf8               )\n-  #80 = NameAndType        #53:#54        // toString:()Ljava/lang/String;\n-  #81 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n-  #82 = Utf8               java/lang/Object\n-  #83 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n-  #84 = Utf8               append\n-  #85 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #86 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+   #1 = Methodref          #2.#3          // java/lang/Object.\"<init>\":()V\n+   #2 = Class              #4             // java/lang/Object\n+   #3 = NameAndType        #5:#6          // \"<init>\":()V\n+   #4 = Utf8               java/lang/Object\n+   #5 = Utf8               <init>\n+   #6 = Utf8               ()V\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.project:Ljava/lang/String;\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+   #9 = NameAndType        #11:#12        // project:Ljava/lang/String;\n+  #10 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder\n+  #11 = Utf8               project\n+  #12 = Utf8               Ljava/lang/String;\n+  #13 = Fieldref           #8.#14         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.location:Ljava/lang/String;\n+  #14 = NameAndType        #15:#12        // location:Ljava/lang/String;\n+  #15 = Utf8               location\n+  #16 = Fieldref           #8.#17         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.modelName:Ljava/lang/String;\n+  #17 = NameAndType        #18:#12        // modelName:Ljava/lang/String;\n+  #18 = Utf8               modelName\n+  #19 = Fieldref           #8.#20         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.temperature:Ljava/lang/Float;\n+  #20 = NameAndType        #21:#22        // temperature:Ljava/lang/Float;\n+  #21 = Utf8               temperature\n+  #22 = Utf8               Ljava/lang/Float;\n+  #23 = Fieldref           #8.#24         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.maxOutputTokens:Ljava/lang/Integer;\n+  #24 = NameAndType        #25:#26        // maxOutputTokens:Ljava/lang/Integer;\n+  #25 = Utf8               maxOutputTokens\n+  #26 = Utf8               Ljava/lang/Integer;\n+  #27 = Fieldref           #8.#28         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.topK:Ljava/lang/Integer;\n+  #28 = NameAndType        #29:#26        // topK:Ljava/lang/Integer;\n+  #29 = Utf8               topK\n+  #30 = Fieldref           #8.#31         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.topP:Ljava/lang/Float;\n+  #31 = NameAndType        #32:#22        // topP:Ljava/lang/Float;\n+  #32 = Utf8               topP\n+  #33 = Fieldref           #8.#34         // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder.maxRetries:Ljava/lang/Integer;\n+  #34 = NameAndType        #35:#26        // maxRetries:Ljava/lang/Integer;\n+  #35 = Utf8               maxRetries\n+  #36 = Class              #37            // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  #37 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  #38 = Methodref          #36.#39        // dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n+  #39 = NameAndType        #5:#40         // \"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n+  #40 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n+  #41 = Class              #42            // java/lang/StringBuilder\n+  #42 = Utf8               java/lang/StringBuilder\n+  #43 = Methodref          #41.#3         // java/lang/StringBuilder.\"<init>\":()V\n+  #44 = String             #45            // VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n+  #45 = Utf8               VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n+  #46 = Methodref          #41.#47        // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #47 = NameAndType        #48:#49        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #48 = Utf8               append\n+  #49 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #50 = String             #51            // , location=\n+  #51 = Utf8               , location=\n+  #52 = String             #53            // , modelName=\n+  #53 = Utf8               , modelName=\n+  #54 = String             #55            // , temperature=\n+  #55 = Utf8               , temperature=\n+  #56 = Methodref          #41.#57        // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #57 = NameAndType        #48:#58        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #58 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #59 = String             #60            // , maxOutputTokens=\n+  #60 = Utf8               , maxOutputTokens=\n+  #61 = String             #62            // , topK=\n+  #62 = Utf8               , topK=\n+  #63 = String             #64            // , topP=\n+  #64 = Utf8               , topP=\n+  #65 = String             #66            // , maxRetries=\n+  #66 = Utf8               , maxRetries=\n+  #67 = String             #68            // )\n+  #68 = Utf8               )\n+  #69 = Methodref          #41.#70        // java/lang/StringBuilder.toString:()Ljava/lang/String;\n+  #70 = NameAndType        #71:#72        // toString:()Ljava/lang/String;\n+  #71 = Utf8               toString\n+  #72 = Utf8               ()Ljava/lang/String;\n+  #73 = Utf8               Code\n+  #74 = Utf8               LineNumberTable\n+  #75 = Utf8               LocalVariableTable\n+  #76 = Utf8               this\n+  #77 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #78 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #79 = Utf8               (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #80 = Utf8               (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n+  #81 = Utf8               build\n+  #82 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n+  #83 = Utf8               SourceFile\n+  #84 = Utf8               VertexAiGeminiChatModel.java\n+  #85 = Utf8               InnerClasses\n+  #86 = Utf8               VertexAiGeminiChatModelBuilder\n {\n   private java.lang.String project;\n     descriptor: Ljava/lang/String;\n     flags: (0x0002) ACC_PRIVATE\n \n   private java.lang.String location;\n     descriptor: Ljava/lang/String;\n@@ -145,15 +145,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder project(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #2                  // Field project:Ljava/lang/String;\n+         2: putfield      #7                  // Field project:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -162,15 +162,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder location(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #3                  // Field location:Ljava/lang/String;\n+         2: putfield      #13                 // Field location:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -179,15 +179,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder modelName(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #4                  // Field modelName:Ljava/lang/String;\n+         2: putfield      #16                 // Field modelName:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -196,15 +196,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder temperature(java.lang.Float);\n     descriptor: (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #5                  // Field temperature:Ljava/lang/Float;\n+         2: putfield      #19                 // Field temperature:Ljava/lang/Float;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -213,15 +213,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder maxOutputTokens(java.lang.Integer);\n     descriptor: (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n+         2: putfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -230,15 +230,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder topK(java.lang.Integer);\n     descriptor: (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #7                  // Field topK:Ljava/lang/Integer;\n+         2: putfield      #27                 // Field topK:Ljava/lang/Integer;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -247,15 +247,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder topP(java.lang.Float);\n     descriptor: (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #8                  // Field topP:Ljava/lang/Float;\n+         2: putfield      #30                 // Field topP:Ljava/lang/Float;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n@@ -264,109 +264,109 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder maxRetries(java.lang.Integer);\n     descriptor: (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #9                  // Field maxRetries:Ljava/lang/Integer;\n+         2: putfield      #33                 // Field maxRetries:Ljava/lang/Integer;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n             0       7     1 maxRetries   Ljava/lang/Integer;\n \n   public dev.langchain4j.model.vertexai.VertexAiGeminiChatModel build();\n     descriptor: ()Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=10, locals=1, args_size=1\n-         0: new           #10                 // class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+         0: new           #36                 // class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n          3: dup\n          4: aload_0\n-         5: getfield      #2                  // Field project:Ljava/lang/String;\n+         5: getfield      #7                  // Field project:Ljava/lang/String;\n          8: aload_0\n-         9: getfield      #3                  // Field location:Ljava/lang/String;\n+         9: getfield      #13                 // Field location:Ljava/lang/String;\n         12: aload_0\n-        13: getfield      #4                  // Field modelName:Ljava/lang/String;\n+        13: getfield      #16                 // Field modelName:Ljava/lang/String;\n         16: aload_0\n-        17: getfield      #5                  // Field temperature:Ljava/lang/Float;\n+        17: getfield      #19                 // Field temperature:Ljava/lang/Float;\n         20: aload_0\n-        21: getfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n+        21: getfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n         24: aload_0\n-        25: getfield      #7                  // Field topK:Ljava/lang/Integer;\n+        25: getfield      #27                 // Field topK:Ljava/lang/Integer;\n         28: aload_0\n-        29: getfield      #8                  // Field topP:Ljava/lang/Float;\n+        29: getfield      #30                 // Field topP:Ljava/lang/Float;\n         32: aload_0\n-        33: getfield      #9                  // Field maxRetries:Ljava/lang/Integer;\n-        36: invokespecial #11                 // Method dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n+        33: getfield      #33                 // Field maxRetries:Ljava/lang/Integer;\n+        36: invokespecial #38                 // Method dev/langchain4j/model/vertexai/VertexAiGeminiChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;Ljava/lang/Integer;)V\n         39: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      40     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n \n   public java.lang.String toString();\n     descriptor: ()Ljava/lang/String;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=1, args_size=1\n-         0: new           #12                 // class java/lang/StringBuilder\n+         0: new           #41                 // class java/lang/StringBuilder\n          3: dup\n-         4: invokespecial #13                 // Method java/lang/StringBuilder.\"<init>\":()V\n-         7: ldc           #14                 // String VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n-         9: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+         4: invokespecial #43                 // Method java/lang/StringBuilder.\"<init>\":()V\n+         7: ldc           #44                 // String VertexAiGeminiChatModel.VertexAiGeminiChatModelBuilder(project=\n+         9: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         12: aload_0\n-        13: getfield      #2                  // Field project:Ljava/lang/String;\n-        16: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        19: ldc           #16                 // String , location=\n-        21: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        13: getfield      #7                  // Field project:Ljava/lang/String;\n+        16: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        19: ldc           #50                 // String , location=\n+        21: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         24: aload_0\n-        25: getfield      #3                  // Field location:Ljava/lang/String;\n-        28: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        31: ldc           #17                 // String , modelName=\n-        33: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        25: getfield      #13                 // Field location:Ljava/lang/String;\n+        28: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        31: ldc           #52                 // String , modelName=\n+        33: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         36: aload_0\n-        37: getfield      #4                  // Field modelName:Ljava/lang/String;\n-        40: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        43: ldc           #18                 // String , temperature=\n-        45: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        37: getfield      #16                 // Field modelName:Ljava/lang/String;\n+        40: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        43: ldc           #54                 // String , temperature=\n+        45: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         48: aload_0\n-        49: getfield      #5                  // Field temperature:Ljava/lang/Float;\n-        52: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        55: ldc           #20                 // String , maxOutputTokens=\n-        57: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        49: getfield      #19                 // Field temperature:Ljava/lang/Float;\n+        52: invokevirtual #56                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        55: ldc           #59                 // String , maxOutputTokens=\n+        57: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         60: aload_0\n-        61: getfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n-        64: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        67: ldc           #21                 // String , topK=\n-        69: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        61: getfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n+        64: invokevirtual #56                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        67: ldc           #61                 // String , topK=\n+        69: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         72: aload_0\n-        73: getfield      #7                  // Field topK:Ljava/lang/Integer;\n-        76: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        79: ldc           #22                 // String , topP=\n-        81: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        73: getfield      #27                 // Field topK:Ljava/lang/Integer;\n+        76: invokevirtual #56                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        79: ldc           #63                 // String , topP=\n+        81: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         84: aload_0\n-        85: getfield      #8                  // Field topP:Ljava/lang/Float;\n-        88: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        91: ldc           #23                 // String , maxRetries=\n-        93: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        85: getfield      #30                 // Field topP:Ljava/lang/Float;\n+        88: invokevirtual #56                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        91: ldc           #65                 // String , maxRetries=\n+        93: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         96: aload_0\n-        97: getfield      #9                  // Field maxRetries:Ljava/lang/Integer;\n-       100: invokevirtual #19                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-       103: ldc           #24                 // String )\n-       105: invokevirtual #15                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-       108: invokevirtual #25                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n+        97: getfield      #33                 // Field maxRetries:Ljava/lang/Integer;\n+       100: invokevirtual #56                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+       103: ldc           #67                 // String )\n+       105: invokevirtual #46                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+       108: invokevirtual #69                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n        111: areturn\n       LineNumberTable:\n         line 50: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0     112     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder;\n }\n SourceFile: \"VertexAiGeminiChatModel.java\"\n InnerClasses:\n-  public static #45= #26 of #10;          // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n+  public static #86= #8 of #36;           // VertexAiGeminiChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel$VertexAiGeminiChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiChatModel\n"}]}, {"source1": "dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class", "source2": "dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,98 +1,98 @@\n-  SHA-256 checksum 429f96ad81c9c1d2c65639cb24541d9b56480fbeaf1b6994d35710a6ad88afd7\n+  SHA-256 checksum e6969c98e66c98e12cd6a645dca9b6b21d66e2cee2b9f86d4b65abcae7567bc3\n   Compiled from \"VertexAiGeminiStreamingChatModel.java\"\n public class dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n   minor version: 0\n   major version: 52\n   flags: (0x0021) ACC_PUBLIC, ACC_SUPER\n-  this_class: #24                         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-  super_class: #25                        // java/lang/Object\n+  this_class: #8                          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 7, methods: 10, attributes: 2\n Constant pool:\n-   #1 = Methodref          #25.#54        // java/lang/Object.\"<init>\":()V\n-   #2 = Fieldref           #24.#55        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.project:Ljava/lang/String;\n-   #3 = Fieldref           #24.#56        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.location:Ljava/lang/String;\n-   #4 = Fieldref           #24.#57        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.modelName:Ljava/lang/String;\n-   #5 = Fieldref           #24.#58        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.temperature:Ljava/lang/Float;\n-   #6 = Fieldref           #24.#59        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.maxOutputTokens:Ljava/lang/Integer;\n-   #7 = Fieldref           #24.#60        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.topK:Ljava/lang/Integer;\n-   #8 = Fieldref           #24.#61        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.topP:Ljava/lang/Float;\n-   #9 = Class              #62            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  #10 = Methodref          #9.#63         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n-  #11 = Class              #64            // java/lang/StringBuilder\n-  #12 = Methodref          #11.#54        // java/lang/StringBuilder.\"<init>\":()V\n-  #13 = String             #65            // VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n-  #14 = Methodref          #11.#66        // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #15 = String             #67            // , location=\n-  #16 = String             #68            // , modelName=\n-  #17 = String             #69            // , temperature=\n-  #18 = Methodref          #11.#70        // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #19 = String             #71            // , maxOutputTokens=\n-  #20 = String             #72            // , topK=\n-  #21 = String             #73            // , topP=\n-  #22 = String             #74            // )\n-  #23 = Methodref          #11.#75        // java/lang/StringBuilder.toString:()Ljava/lang/String;\n-  #24 = Class              #76            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-  #25 = Class              #77            // java/lang/Object\n-  #26 = Utf8               project\n-  #27 = Utf8               Ljava/lang/String;\n-  #28 = Utf8               location\n-  #29 = Utf8               modelName\n-  #30 = Utf8               temperature\n-  #31 = Utf8               Ljava/lang/Float;\n-  #32 = Utf8               maxOutputTokens\n-  #33 = Utf8               Ljava/lang/Integer;\n-  #34 = Utf8               topK\n-  #35 = Utf8               topP\n-  #36 = Utf8               <init>\n-  #37 = Utf8               ()V\n-  #38 = Utf8               Code\n-  #39 = Utf8               LineNumberTable\n-  #40 = Utf8               LocalVariableTable\n-  #41 = Utf8               this\n-  #42 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n-  #43 = Utf8               InnerClasses\n-  #44 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #45 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #46 = Utf8               (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #47 = Utf8               (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n-  #48 = Utf8               build\n-  #49 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n-  #50 = Utf8               toString\n-  #51 = Utf8               ()Ljava/lang/String;\n-  #52 = Utf8               SourceFile\n-  #53 = Utf8               VertexAiGeminiStreamingChatModel.java\n-  #54 = NameAndType        #36:#37        // \"<init>\":()V\n-  #55 = NameAndType        #26:#27        // project:Ljava/lang/String;\n-  #56 = NameAndType        #28:#27        // location:Ljava/lang/String;\n-  #57 = NameAndType        #29:#27        // modelName:Ljava/lang/String;\n-  #58 = NameAndType        #30:#31        // temperature:Ljava/lang/Float;\n-  #59 = NameAndType        #32:#33        // maxOutputTokens:Ljava/lang/Integer;\n-  #60 = NameAndType        #34:#33        // topK:Ljava/lang/Integer;\n-  #61 = NameAndType        #35:#31        // topP:Ljava/lang/Float;\n-  #62 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n-  #63 = NameAndType        #36:#78        // \"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n-  #64 = Utf8               java/lang/StringBuilder\n-  #65 = Utf8               VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n-  #66 = NameAndType        #79:#80        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #67 = Utf8               , location=\n-  #68 = Utf8               , modelName=\n-  #69 = Utf8               , temperature=\n-  #70 = NameAndType        #79:#81        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-  #71 = Utf8               , maxOutputTokens=\n-  #72 = Utf8               , topK=\n-  #73 = Utf8               , topP=\n-  #74 = Utf8               )\n-  #75 = NameAndType        #50:#51        // toString:()Ljava/lang/String;\n-  #76 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n-  #77 = Utf8               java/lang/Object\n-  #78 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n-  #79 = Utf8               append\n-  #80 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n-  #81 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+   #1 = Methodref          #2.#3          // java/lang/Object.\"<init>\":()V\n+   #2 = Class              #4             // java/lang/Object\n+   #3 = NameAndType        #5:#6          // \"<init>\":()V\n+   #4 = Utf8               java/lang/Object\n+   #5 = Utf8               <init>\n+   #6 = Utf8               ()V\n+   #7 = Fieldref           #8.#9          // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.project:Ljava/lang/String;\n+   #8 = Class              #10            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+   #9 = NameAndType        #11:#12        // project:Ljava/lang/String;\n+  #10 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder\n+  #11 = Utf8               project\n+  #12 = Utf8               Ljava/lang/String;\n+  #13 = Fieldref           #8.#14         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.location:Ljava/lang/String;\n+  #14 = NameAndType        #15:#12        // location:Ljava/lang/String;\n+  #15 = Utf8               location\n+  #16 = Fieldref           #8.#17         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.modelName:Ljava/lang/String;\n+  #17 = NameAndType        #18:#12        // modelName:Ljava/lang/String;\n+  #18 = Utf8               modelName\n+  #19 = Fieldref           #8.#20         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.temperature:Ljava/lang/Float;\n+  #20 = NameAndType        #21:#22        // temperature:Ljava/lang/Float;\n+  #21 = Utf8               temperature\n+  #22 = Utf8               Ljava/lang/Float;\n+  #23 = Fieldref           #8.#24         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.maxOutputTokens:Ljava/lang/Integer;\n+  #24 = NameAndType        #25:#26        // maxOutputTokens:Ljava/lang/Integer;\n+  #25 = Utf8               maxOutputTokens\n+  #26 = Utf8               Ljava/lang/Integer;\n+  #27 = Fieldref           #8.#28         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.topK:Ljava/lang/Integer;\n+  #28 = NameAndType        #29:#26        // topK:Ljava/lang/Integer;\n+  #29 = Utf8               topK\n+  #30 = Fieldref           #8.#31         // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder.topP:Ljava/lang/Float;\n+  #31 = NameAndType        #32:#22        // topP:Ljava/lang/Float;\n+  #32 = Utf8               topP\n+  #33 = Class              #34            // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  #34 = Utf8               dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  #35 = Methodref          #33.#36        // dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n+  #36 = NameAndType        #5:#37         // \"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n+  #37 = Utf8               (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n+  #38 = Class              #39            // java/lang/StringBuilder\n+  #39 = Utf8               java/lang/StringBuilder\n+  #40 = Methodref          #38.#3         // java/lang/StringBuilder.\"<init>\":()V\n+  #41 = String             #42            // VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n+  #42 = Utf8               VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n+  #43 = Methodref          #38.#44        // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #44 = NameAndType        #45:#46        // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #45 = Utf8               append\n+  #46 = Utf8               (Ljava/lang/String;)Ljava/lang/StringBuilder;\n+  #47 = String             #48            // , location=\n+  #48 = Utf8               , location=\n+  #49 = String             #50            // , modelName=\n+  #50 = Utf8               , modelName=\n+  #51 = String             #52            // , temperature=\n+  #52 = Utf8               , temperature=\n+  #53 = Methodref          #38.#54        // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #54 = NameAndType        #45:#55        // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #55 = Utf8               (Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+  #56 = String             #57            // , maxOutputTokens=\n+  #57 = Utf8               , maxOutputTokens=\n+  #58 = String             #59            // , topK=\n+  #59 = Utf8               , topK=\n+  #60 = String             #61            // , topP=\n+  #61 = Utf8               , topP=\n+  #62 = String             #63            // )\n+  #63 = Utf8               )\n+  #64 = Methodref          #38.#65        // java/lang/StringBuilder.toString:()Ljava/lang/String;\n+  #65 = NameAndType        #66:#67        // toString:()Ljava/lang/String;\n+  #66 = Utf8               toString\n+  #67 = Utf8               ()Ljava/lang/String;\n+  #68 = Utf8               Code\n+  #69 = Utf8               LineNumberTable\n+  #70 = Utf8               LocalVariableTable\n+  #71 = Utf8               this\n+  #72 = Utf8               Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #73 = Utf8               (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #74 = Utf8               (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #75 = Utf8               (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n+  #76 = Utf8               build\n+  #77 = Utf8               ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n+  #78 = Utf8               SourceFile\n+  #79 = Utf8               VertexAiGeminiStreamingChatModel.java\n+  #80 = Utf8               InnerClasses\n+  #81 = Utf8               VertexAiGeminiStreamingChatModelBuilder\n {\n   private java.lang.String project;\n     descriptor: Ljava/lang/String;\n     flags: (0x0002) ACC_PRIVATE\n \n   private java.lang.String location;\n     descriptor: Ljava/lang/String;\n@@ -136,15 +136,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder project(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #2                  // Field project:Ljava/lang/String;\n+         2: putfield      #7                  // Field project:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -153,15 +153,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder location(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #3                  // Field location:Ljava/lang/String;\n+         2: putfield      #13                 // Field location:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -170,15 +170,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder modelName(java.lang.String);\n     descriptor: (Ljava/lang/String;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #4                  // Field modelName:Ljava/lang/String;\n+         2: putfield      #16                 // Field modelName:Ljava/lang/String;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -187,15 +187,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder temperature(java.lang.Float);\n     descriptor: (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #5                  // Field temperature:Ljava/lang/Float;\n+         2: putfield      #19                 // Field temperature:Ljava/lang/Float;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -204,15 +204,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder maxOutputTokens(java.lang.Integer);\n     descriptor: (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n+         2: putfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -221,15 +221,15 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder topK(java.lang.Integer);\n     descriptor: (Ljava/lang/Integer;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #7                  // Field topK:Ljava/lang/Integer;\n+         2: putfield      #27                 // Field topK:Ljava/lang/Integer;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n@@ -238,102 +238,102 @@\n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder topP(java.lang.Float);\n     descriptor: (Ljava/lang/Float;)Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=2, args_size=2\n          0: aload_0\n          1: aload_1\n-         2: putfield      #8                  // Field topP:Ljava/lang/Float;\n+         2: putfield      #30                 // Field topP:Ljava/lang/Float;\n          5: aload_0\n          6: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0       7     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n             0       7     1  topP   Ljava/lang/Float;\n \n   public dev.langchain4j.model.vertexai.VertexAiGeminiStreamingChatModel build();\n     descriptor: ()Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=9, locals=1, args_size=1\n-         0: new           #9                  // class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+         0: new           #33                 // class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n          3: dup\n          4: aload_0\n-         5: getfield      #2                  // Field project:Ljava/lang/String;\n+         5: getfield      #7                  // Field project:Ljava/lang/String;\n          8: aload_0\n-         9: getfield      #3                  // Field location:Ljava/lang/String;\n+         9: getfield      #13                 // Field location:Ljava/lang/String;\n         12: aload_0\n-        13: getfield      #4                  // Field modelName:Ljava/lang/String;\n+        13: getfield      #16                 // Field modelName:Ljava/lang/String;\n         16: aload_0\n-        17: getfield      #5                  // Field temperature:Ljava/lang/Float;\n+        17: getfield      #19                 // Field temperature:Ljava/lang/Float;\n         20: aload_0\n-        21: getfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n+        21: getfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n         24: aload_0\n-        25: getfield      #7                  // Field topK:Ljava/lang/Integer;\n+        25: getfield      #27                 // Field topK:Ljava/lang/Integer;\n         28: aload_0\n-        29: getfield      #8                  // Field topP:Ljava/lang/Float;\n-        32: invokespecial #10                 // Method dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n+        29: getfield      #30                 // Field topP:Ljava/lang/Float;\n+        32: invokespecial #35                 // Method dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel.\"<init>\":(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Float;)V\n         35: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      36     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n \n   public java.lang.String toString();\n     descriptor: ()Ljava/lang/String;\n     flags: (0x0001) ACC_PUBLIC\n     Code:\n       stack=2, locals=1, args_size=1\n-         0: new           #11                 // class java/lang/StringBuilder\n+         0: new           #38                 // class java/lang/StringBuilder\n          3: dup\n-         4: invokespecial #12                 // Method java/lang/StringBuilder.\"<init>\":()V\n-         7: ldc           #13                 // String VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n-         9: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+         4: invokespecial #40                 // Method java/lang/StringBuilder.\"<init>\":()V\n+         7: ldc           #41                 // String VertexAiGeminiStreamingChatModel.VertexAiGeminiStreamingChatModelBuilder(project=\n+         9: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         12: aload_0\n-        13: getfield      #2                  // Field project:Ljava/lang/String;\n-        16: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        19: ldc           #15                 // String , location=\n-        21: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        13: getfield      #7                  // Field project:Ljava/lang/String;\n+        16: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        19: ldc           #47                 // String , location=\n+        21: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         24: aload_0\n-        25: getfield      #3                  // Field location:Ljava/lang/String;\n-        28: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        31: ldc           #16                 // String , modelName=\n-        33: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        25: getfield      #13                 // Field location:Ljava/lang/String;\n+        28: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        31: ldc           #49                 // String , modelName=\n+        33: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         36: aload_0\n-        37: getfield      #4                  // Field modelName:Ljava/lang/String;\n-        40: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        43: ldc           #17                 // String , temperature=\n-        45: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        37: getfield      #16                 // Field modelName:Ljava/lang/String;\n+        40: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        43: ldc           #51                 // String , temperature=\n+        45: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         48: aload_0\n-        49: getfield      #5                  // Field temperature:Ljava/lang/Float;\n-        52: invokevirtual #18                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        55: ldc           #19                 // String , maxOutputTokens=\n-        57: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        49: getfield      #19                 // Field temperature:Ljava/lang/Float;\n+        52: invokevirtual #53                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        55: ldc           #56                 // String , maxOutputTokens=\n+        57: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         60: aload_0\n-        61: getfield      #6                  // Field maxOutputTokens:Ljava/lang/Integer;\n-        64: invokevirtual #18                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        67: ldc           #20                 // String , topK=\n-        69: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        61: getfield      #23                 // Field maxOutputTokens:Ljava/lang/Integer;\n+        64: invokevirtual #53                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        67: ldc           #58                 // String , topK=\n+        69: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         72: aload_0\n-        73: getfield      #7                  // Field topK:Ljava/lang/Integer;\n-        76: invokevirtual #18                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        79: ldc           #21                 // String , topP=\n-        81: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        73: getfield      #27                 // Field topK:Ljava/lang/Integer;\n+        76: invokevirtual #53                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        79: ldc           #60                 // String , topP=\n+        81: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n         84: aload_0\n-        85: getfield      #8                  // Field topP:Ljava/lang/Float;\n-        88: invokevirtual #18                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n-        91: ldc           #22                 // String )\n-        93: invokevirtual #14                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n-        96: invokevirtual #23                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n+        85: getfield      #30                 // Field topP:Ljava/lang/Float;\n+        88: invokevirtual #53                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;\n+        91: ldc           #62                 // String )\n+        93: invokevirtual #43                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\n+        96: invokevirtual #64                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;\n         99: areturn\n       LineNumberTable:\n         line 31: 0\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0     100     0  this   Ldev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder;\n }\n SourceFile: \"VertexAiGeminiStreamingChatModel.java\"\n InnerClasses:\n-  public static #42= #24 of #9;           // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n+  public static #81= #8 of #33;           // VertexAiGeminiStreamingChatModelBuilder=class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel$VertexAiGeminiStreamingChatModelBuilder of class dev/langchain4j/model/vertexai/VertexAiGeminiStreamingChatModel\n"}]}, {"source1": "dev/langchain4j/model/vertexai/TokenUsageMapper.class", "source2": "dev/langchain4j/model/vertexai/TokenUsageMapper.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,63 +1,63 @@\n-  SHA-256 checksum b097da933a27f39010e91937f0bea63484d2b775b77463639fb47b902e407040\n+  SHA-256 checksum c9f732b00e2f8a17394d1e2c9351565cbed9d847954fa035b4f9f38267f82d4d\n   Compiled from \"TokenUsageMapper.java\"\n class dev.langchain4j.model.vertexai.TokenUsageMapper\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #8                          // dev/langchain4j/model/vertexai/TokenUsageMapper\n-  super_class: #9                         // java/lang/Object\n+  this_class: #30                         // dev/langchain4j/model/vertexai/TokenUsageMapper\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 0, methods: 2, attributes: 2\n Constant pool:\n-   #1 = Methodref          #9.#26         // java/lang/Object.\"<init>\":()V\n-   #2 = Class              #27            // dev/langchain4j/model/output/TokenUsage\n-   #3 = Methodref          #18.#28        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getPromptTokenCount:()I\n-   #4 = Methodref          #29.#30        // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-   #5 = Methodref          #18.#31        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getCandidatesTokenCount:()I\n-   #6 = Methodref          #18.#32        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getTotalTokenCount:()I\n-   #7 = Methodref          #2.#33         // dev/langchain4j/model/output/TokenUsage.\"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n-   #8 = Class              #34            // dev/langchain4j/model/vertexai/TokenUsageMapper\n-   #9 = Class              #35            // java/lang/Object\n-  #10 = Utf8               <init>\n-  #11 = Utf8               ()V\n-  #12 = Utf8               Code\n-  #13 = Utf8               LineNumberTable\n-  #14 = Utf8               LocalVariableTable\n-  #15 = Utf8               this\n-  #16 = Utf8               Ldev/langchain4j/model/vertexai/TokenUsageMapper;\n-  #17 = Utf8               map\n-  #18 = Class              #37            // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n-  #19 = Utf8               UsageMetadata\n-  #20 = Utf8               InnerClasses\n-  #21 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n-  #22 = Utf8               usageMetadata\n-  #23 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n-  #24 = Utf8               SourceFile\n-  #25 = Utf8               TokenUsageMapper.java\n-  #26 = NameAndType        #10:#11        // \"<init>\":()V\n-  #27 = Utf8               dev/langchain4j/model/output/TokenUsage\n-  #28 = NameAndType        #38:#39        // getPromptTokenCount:()I\n-  #29 = Class              #40            // java/lang/Integer\n-  #30 = NameAndType        #41:#42        // valueOf:(I)Ljava/lang/Integer;\n-  #31 = NameAndType        #43:#39        // getCandidatesTokenCount:()I\n-  #32 = NameAndType        #44:#39        // getTotalTokenCount:()I\n-  #33 = NameAndType        #10:#45        // \"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n-  #34 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n-  #35 = Utf8               java/lang/Object\n-  #36 = Class              #46            // com/google/cloud/vertexai/api/GenerateContentResponse\n-  #37 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n-  #38 = Utf8               getPromptTokenCount\n-  #39 = Utf8               ()I\n-  #40 = Utf8               java/lang/Integer\n-  #41 = Utf8               valueOf\n-  #42 = Utf8               (I)Ljava/lang/Integer;\n-  #43 = Utf8               getCandidatesTokenCount\n-  #44 = Utf8               getTotalTokenCount\n-  #45 = Utf8               (Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n-  #46 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n+   #1 = Methodref          #2.#3          // java/lang/Object.\"<init>\":()V\n+   #2 = Class              #4             // java/lang/Object\n+   #3 = NameAndType        #5:#6          // \"<init>\":()V\n+   #4 = Utf8               java/lang/Object\n+   #5 = Utf8               <init>\n+   #6 = Utf8               ()V\n+   #7 = Class              #8             // dev/langchain4j/model/output/TokenUsage\n+   #8 = Utf8               dev/langchain4j/model/output/TokenUsage\n+   #9 = Methodref          #10.#11        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getPromptTokenCount:()I\n+  #10 = Class              #12            // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #11 = NameAndType        #13:#14        // getPromptTokenCount:()I\n+  #12 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata\n+  #13 = Utf8               getPromptTokenCount\n+  #14 = Utf8               ()I\n+  #15 = Methodref          #16.#17        // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+  #16 = Class              #18            // java/lang/Integer\n+  #17 = NameAndType        #19:#20        // valueOf:(I)Ljava/lang/Integer;\n+  #18 = Utf8               java/lang/Integer\n+  #19 = Utf8               valueOf\n+  #20 = Utf8               (I)Ljava/lang/Integer;\n+  #21 = Methodref          #10.#22        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getCandidatesTokenCount:()I\n+  #22 = NameAndType        #23:#14        // getCandidatesTokenCount:()I\n+  #23 = Utf8               getCandidatesTokenCount\n+  #24 = Methodref          #10.#25        // com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getTotalTokenCount:()I\n+  #25 = NameAndType        #26:#14        // getTotalTokenCount:()I\n+  #26 = Utf8               getTotalTokenCount\n+  #27 = Methodref          #7.#28         // dev/langchain4j/model/output/TokenUsage.\"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n+  #28 = NameAndType        #5:#29         // \"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n+  #29 = Utf8               (Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n+  #30 = Class              #31            // dev/langchain4j/model/vertexai/TokenUsageMapper\n+  #31 = Utf8               dev/langchain4j/model/vertexai/TokenUsageMapper\n+  #32 = Utf8               Code\n+  #33 = Utf8               LineNumberTable\n+  #34 = Utf8               LocalVariableTable\n+  #35 = Utf8               this\n+  #36 = Utf8               Ldev/langchain4j/model/vertexai/TokenUsageMapper;\n+  #37 = Utf8               map\n+  #38 = Utf8               (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n+  #39 = Utf8               usageMetadata\n+  #40 = Utf8               Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n+  #41 = Utf8               SourceFile\n+  #42 = Utf8               TokenUsageMapper.java\n+  #43 = Utf8               InnerClasses\n+  #44 = Class              #45            // com/google/cloud/vertexai/api/GenerateContentResponse\n+  #45 = Utf8               com/google/cloud/vertexai/api/GenerateContentResponse\n+  #46 = Utf8               UsageMetadata\n {\n   dev.langchain4j.model.vertexai.TokenUsageMapper();\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n@@ -70,33 +70,33 @@\n             0       5     0  this   Ldev/langchain4j/model/vertexai/TokenUsageMapper;\n \n   static dev.langchain4j.model.output.TokenUsage map(com.google.cloud.vertexai.api.GenerateContentResponse$UsageMetadata);\n     descriptor: (Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;)Ldev/langchain4j/model/output/TokenUsage;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=5, locals=1, args_size=1\n-         0: new           #2                  // class dev/langchain4j/model/output/TokenUsage\n+         0: new           #7                  // class dev/langchain4j/model/output/TokenUsage\n          3: dup\n          4: aload_0\n-         5: invokevirtual #3                  // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getPromptTokenCount:()I\n-         8: invokestatic  #4                  // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+         5: invokevirtual #9                  // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getPromptTokenCount:()I\n+         8: invokestatic  #15                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n         11: aload_0\n-        12: invokevirtual #5                  // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getCandidatesTokenCount:()I\n-        15: invokestatic  #4                  // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+        12: invokevirtual #21                 // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getCandidatesTokenCount:()I\n+        15: invokestatic  #15                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n         18: aload_0\n-        19: invokevirtual #6                  // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getTotalTokenCount:()I\n-        22: invokestatic  #4                  // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n-        25: invokespecial #7                  // Method dev/langchain4j/model/output/TokenUsage.\"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n+        19: invokevirtual #24                 // Method com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata.getTotalTokenCount:()I\n+        22: invokestatic  #15                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;\n+        25: invokespecial #27                 // Method dev/langchain4j/model/output/TokenUsage.\"<init>\":(Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V\n         28: areturn\n       LineNumberTable:\n         line 9: 0\n         line 10: 5\n         line 11: 12\n         line 12: 19\n         line 9: 28\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      29     0 usageMetadata   Lcom/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata;\n }\n SourceFile: \"TokenUsageMapper.java\"\n InnerClasses:\n-  public static final #19= #18 of #36;    // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n+  public static final #46= #10 of #44;    // UsageMetadata=class com/google/cloud/vertexai/api/GenerateContentResponse$UsageMetadata of class com/google/cloud/vertexai/api/GenerateContentResponse\n"}]}, {"source1": "dev/langchain4j/model/vertexai/ContentsMapper.class", "source2": "dev/langchain4j/model/vertexai/ContentsMapper.class", "unified_diff": null, "details": [{"source1": "javap -verbose -constants -s -l -private {}", "source2": "javap -verbose -constants -s -l -private {}", "unified_diff": "@@ -1,152 +1,152 @@\n-  SHA-256 checksum b23effe02103feb6e3d278db1ae5bbabecc982d03affd6a6b0386638eb99d802\n+  SHA-256 checksum c626b3395a96167891b04481693af1426c79b44e6fc24f8576365222cf23fef0\n   Compiled from \"ContentsMapper.java\"\n class dev.langchain4j.model.vertexai.ContentsMapper\n   minor version: 0\n   major version: 52\n   flags: (0x0020) ACC_SUPER\n-  this_class: #21                         // dev/langchain4j/model/vertexai/ContentsMapper\n-  super_class: #22                        // java/lang/Object\n+  this_class: #86                         // dev/langchain4j/model/vertexai/ContentsMapper\n+  super_class: #2                         // java/lang/Object\n   interfaces: 0, fields: 0, methods: 4, attributes: 3\n Constant pool:\n-    #1 = Methodref          #22.#47       // java/lang/Object.\"<init>\":()V\n-    #2 = InterfaceMethodref #9.#48        // java/util/List.stream:()Ljava/util/stream/Stream;\n-    #3 = InvokeDynamic      #0:#54        // #0:accept:()Ljava/util/function/Consumer;\n-    #4 = InterfaceMethodref #55.#56       // java/util/stream/Stream.peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n-    #5 = InvokeDynamic      #1:#60        // #1:apply:()Ljava/util/function/Function;\n-    #6 = InterfaceMethodref #55.#61       // java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-    #7 = Methodref          #62.#63       // java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n-    #8 = InterfaceMethodref #55.#64       // java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-    #9 = Class              #65           // java/util/List\n-   #10 = Methodref          #66.#67       // com/google/cloud/vertexai/api/Content.newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #11 = InterfaceMethodref #68.#69       // dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n-   #12 = Methodref          #70.#71       // dev/langchain4j/model/vertexai/RoleMapper.map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n-   #13 = Methodref          #72.#73       // com/google/cloud/vertexai/api/Content$Builder.setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #14 = Methodref          #74.#75       // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n-   #15 = Methodref          #72.#76       // com/google/cloud/vertexai/api/Content$Builder.addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #16 = Methodref          #72.#77       // com/google/cloud/vertexai/api/Content$Builder.build:()Lcom/google/cloud/vertexai/api/Content;\n-   #17 = Class              #78           // dev/langchain4j/data/message/SystemMessage\n-   #18 = Class              #79           // java/lang/IllegalArgumentException\n-   #19 = String             #80           // SystemMessage is currently not supported by Gemini\n-   #20 = Methodref          #18.#81       // java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n-   #21 = Class              #82           // dev/langchain4j/model/vertexai/ContentsMapper\n-   #22 = Class              #83           // java/lang/Object\n-   #23 = Utf8               <init>\n-   #24 = Utf8               ()V\n-   #25 = Utf8               Code\n-   #26 = Utf8               LineNumberTable\n-   #27 = Utf8               LocalVariableTable\n-   #28 = Utf8               this\n-   #29 = Utf8               Ldev/langchain4j/model/vertexai/ContentsMapper;\n-   #30 = Utf8               map\n-   #31 = Utf8               (Ljava/util/List;)Ljava/util/List;\n-   #32 = Utf8               messages\n-   #33 = Utf8               Ljava/util/List;\n-   #34 = Utf8               LocalVariableTypeTable\n-   #35 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n-   #36 = Utf8               Signature\n-   #37 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n-   #38 = Utf8               lambda$map$1\n-   #39 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-   #40 = Utf8               message\n-   #41 = Utf8               Ldev/langchain4j/data/message/ChatMessage;\n-   #42 = Utf8               lambda$map$0\n-   #43 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)V\n-   #44 = Utf8               StackMapTable\n-   #45 = Utf8               SourceFile\n-   #46 = Utf8               ContentsMapper.java\n-   #47 = NameAndType        #23:#24       // \"<init>\":()V\n-   #48 = NameAndType        #84:#85       // stream:()Ljava/util/stream/Stream;\n-   #49 = Utf8               BootstrapMethods\n-   #50 = MethodHandle       6:#86         // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-   #51 = MethodType         #87           //  (Ljava/lang/Object;)V\n-   #52 = MethodHandle       6:#88         // REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n-   #53 = MethodType         #43           //  (Ldev/langchain4j/data/message/ChatMessage;)V\n-   #54 = NameAndType        #89:#90       // accept:()Ljava/util/function/Consumer;\n-   #55 = Class              #91           // java/util/stream/Stream\n-   #56 = NameAndType        #92:#93       // peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n-   #57 = MethodType         #94           //  (Ljava/lang/Object;)Ljava/lang/Object;\n-   #58 = MethodHandle       6:#95         // REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-   #59 = MethodType         #39           //  (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-   #60 = NameAndType        #96:#97       // apply:()Ljava/util/function/Function;\n-   #61 = NameAndType        #30:#98       // map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-   #62 = Class              #99           // java/util/stream/Collectors\n-   #63 = NameAndType        #100:#101     // toList:()Ljava/util/stream/Collector;\n-   #64 = NameAndType        #102:#103     // collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-   #65 = Utf8               java/util/List\n-   #66 = Class              #104          // com/google/cloud/vertexai/api/Content\n-   #67 = NameAndType        #105:#108     // newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #68 = Class              #109          // dev/langchain4j/data/message/ChatMessage\n-   #69 = NameAndType        #110:#111     // type:()Ldev/langchain4j/data/message/ChatMessageType;\n-   #70 = Class              #112          // dev/langchain4j/model/vertexai/RoleMapper\n-   #71 = NameAndType        #30:#113      // map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n-   #72 = Class              #114          // com/google/cloud/vertexai/api/Content$Builder\n-   #73 = NameAndType        #115:#116     // setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #74 = Class              #117          // dev/langchain4j/model/vertexai/PartsMapper\n-   #75 = NameAndType        #30:#118      // map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n-   #76 = NameAndType        #119:#120     // addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-   #77 = NameAndType        #121:#122     // build:()Lcom/google/cloud/vertexai/api/Content;\n+    #1 = Methodref          #2.#3         // java/lang/Object.\"<init>\":()V\n+    #2 = Class              #4            // java/lang/Object\n+    #3 = NameAndType        #5:#6         // \"<init>\":()V\n+    #4 = Utf8               java/lang/Object\n+    #5 = Utf8               <init>\n+    #6 = Utf8               ()V\n+    #7 = InterfaceMethodref #8.#9         // java/util/List.stream:()Ljava/util/stream/Stream;\n+    #8 = Class              #10           // java/util/List\n+    #9 = NameAndType        #11:#12       // stream:()Ljava/util/stream/Stream;\n+   #10 = Utf8               java/util/List\n+   #11 = Utf8               stream\n+   #12 = Utf8               ()Ljava/util/stream/Stream;\n+   #13 = InvokeDynamic      #0:#14        // #0:accept:()Ljava/util/function/Consumer;\n+   #14 = NameAndType        #15:#16       // accept:()Ljava/util/function/Consumer;\n+   #15 = Utf8               accept\n+   #16 = Utf8               ()Ljava/util/function/Consumer;\n+   #17 = InterfaceMethodref #18.#19       // java/util/stream/Stream.peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n+   #18 = Class              #20           // java/util/stream/Stream\n+   #19 = NameAndType        #21:#22       // peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n+   #20 = Utf8               java/util/stream/Stream\n+   #21 = Utf8               peek\n+   #22 = Utf8               (Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n+   #23 = InvokeDynamic      #1:#24        // #1:apply:()Ljava/util/function/Function;\n+   #24 = NameAndType        #25:#26       // apply:()Ljava/util/function/Function;\n+   #25 = Utf8               apply\n+   #26 = Utf8               ()Ljava/util/function/Function;\n+   #27 = InterfaceMethodref #18.#28       // java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #28 = NameAndType        #29:#30       // map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #29 = Utf8               map\n+   #30 = Utf8               (Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+   #31 = Methodref          #32.#33       // java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n+   #32 = Class              #34           // java/util/stream/Collectors\n+   #33 = NameAndType        #35:#36       // toList:()Ljava/util/stream/Collector;\n+   #34 = Utf8               java/util/stream/Collectors\n+   #35 = Utf8               toList\n+   #36 = Utf8               ()Ljava/util/stream/Collector;\n+   #37 = InterfaceMethodref #18.#38       // java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #38 = NameAndType        #39:#40       // collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #39 = Utf8               collect\n+   #40 = Utf8               (Ljava/util/stream/Collector;)Ljava/lang/Object;\n+   #41 = Methodref          #42.#43       // com/google/cloud/vertexai/api/Content.newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #42 = Class              #44           // com/google/cloud/vertexai/api/Content\n+   #43 = NameAndType        #45:#46       // newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #44 = Utf8               com/google/cloud/vertexai/api/Content\n+   #45 = Utf8               newBuilder\n+   #46 = Utf8               ()Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #47 = InterfaceMethodref #48.#49       // dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n+   #48 = Class              #50           // dev/langchain4j/data/message/ChatMessage\n+   #49 = NameAndType        #51:#52       // type:()Ldev/langchain4j/data/message/ChatMessageType;\n+   #50 = Utf8               dev/langchain4j/data/message/ChatMessage\n+   #51 = Utf8               type\n+   #52 = Utf8               ()Ldev/langchain4j/data/message/ChatMessageType;\n+   #53 = Methodref          #54.#55       // dev/langchain4j/model/vertexai/RoleMapper.map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n+   #54 = Class              #56           // dev/langchain4j/model/vertexai/RoleMapper\n+   #55 = NameAndType        #29:#57       // map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n+   #56 = Utf8               dev/langchain4j/model/vertexai/RoleMapper\n+   #57 = Utf8               (Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n+   #58 = Methodref          #59.#60       // com/google/cloud/vertexai/api/Content$Builder.setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #59 = Class              #61           // com/google/cloud/vertexai/api/Content$Builder\n+   #60 = NameAndType        #62:#63       // setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #61 = Utf8               com/google/cloud/vertexai/api/Content$Builder\n+   #62 = Utf8               setRole\n+   #63 = Utf8               (Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #64 = Methodref          #65.#66       // dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n+   #65 = Class              #67           // dev/langchain4j/model/vertexai/PartsMapper\n+   #66 = NameAndType        #29:#68       // map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n+   #67 = Utf8               dev/langchain4j/model/vertexai/PartsMapper\n+   #68 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n+   #69 = Methodref          #59.#70       // com/google/cloud/vertexai/api/Content$Builder.addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #70 = NameAndType        #71:#72       // addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #71 = Utf8               addAllParts\n+   #72 = Utf8               (Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+   #73 = Methodref          #59.#74       // com/google/cloud/vertexai/api/Content$Builder.build:()Lcom/google/cloud/vertexai/api/Content;\n+   #74 = NameAndType        #75:#76       // build:()Lcom/google/cloud/vertexai/api/Content;\n+   #75 = Utf8               build\n+   #76 = Utf8               ()Lcom/google/cloud/vertexai/api/Content;\n+   #77 = Class              #78           // dev/langchain4j/data/message/SystemMessage\n    #78 = Utf8               dev/langchain4j/data/message/SystemMessage\n-   #79 = Utf8               java/lang/IllegalArgumentException\n-   #80 = Utf8               SystemMessage is currently not supported by Gemini\n-   #81 = NameAndType        #23:#123      // \"<init>\":(Ljava/lang/String;)V\n-   #82 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n-   #83 = Utf8               java/lang/Object\n-   #84 = Utf8               stream\n-   #85 = Utf8               ()Ljava/util/stream/Stream;\n-   #86 = Methodref          #124.#125     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-   #87 = Utf8               (Ljava/lang/Object;)V\n-   #88 = Methodref          #21.#126      // dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n-   #89 = Utf8               accept\n-   #90 = Utf8               ()Ljava/util/function/Consumer;\n-   #91 = Utf8               java/util/stream/Stream\n-   #92 = Utf8               peek\n-   #93 = Utf8               (Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n-   #94 = Utf8               (Ljava/lang/Object;)Ljava/lang/Object;\n-   #95 = Methodref          #21.#127      // dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-   #96 = Utf8               apply\n-   #97 = Utf8               ()Ljava/util/function/Function;\n-   #98 = Utf8               (Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-   #99 = Utf8               java/util/stream/Collectors\n-  #100 = Utf8               toList\n-  #101 = Utf8               ()Ljava/util/stream/Collector;\n-  #102 = Utf8               collect\n-  #103 = Utf8               (Ljava/util/stream/Collector;)Ljava/lang/Object;\n-  #104 = Utf8               com/google/cloud/vertexai/api/Content\n-  #105 = Utf8               newBuilder\n-  #106 = Utf8               Builder\n-  #107 = Utf8               InnerClasses\n-  #108 = Utf8               ()Lcom/google/cloud/vertexai/api/Content$Builder;\n-  #109 = Utf8               dev/langchain4j/data/message/ChatMessage\n-  #110 = Utf8               type\n-  #111 = Utf8               ()Ldev/langchain4j/data/message/ChatMessageType;\n-  #112 = Utf8               dev/langchain4j/model/vertexai/RoleMapper\n-  #113 = Utf8               (Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n-  #114 = Utf8               com/google/cloud/vertexai/api/Content$Builder\n-  #115 = Utf8               setRole\n-  #116 = Utf8               (Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-  #117 = Utf8               dev/langchain4j/model/vertexai/PartsMapper\n-  #118 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n-  #119 = Utf8               addAllParts\n-  #120 = Utf8               (Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-  #121 = Utf8               build\n-  #122 = Utf8               ()Lcom/google/cloud/vertexai/api/Content;\n-  #123 = Utf8               (Ljava/lang/String;)V\n-  #124 = Class              #128          // java/lang/invoke/LambdaMetafactory\n-  #125 = NameAndType        #129:#132     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #126 = NameAndType        #42:#43       // lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n-  #127 = NameAndType        #38:#39       // lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-  #128 = Utf8               java/lang/invoke/LambdaMetafactory\n-  #129 = Utf8               metafactory\n-  #130 = Class              #134          // java/lang/invoke/MethodHandles$Lookup\n-  #131 = Utf8               Lookup\n-  #132 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n-  #133 = Class              #135          // java/lang/invoke/MethodHandles\n-  #134 = Utf8               java/lang/invoke/MethodHandles$Lookup\n-  #135 = Utf8               java/lang/invoke/MethodHandles\n+   #79 = Class              #80           // java/lang/IllegalArgumentException\n+   #80 = Utf8               java/lang/IllegalArgumentException\n+   #81 = String             #82           // SystemMessage is currently not supported by Gemini\n+   #82 = Utf8               SystemMessage is currently not supported by Gemini\n+   #83 = Methodref          #79.#84       // java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n+   #84 = NameAndType        #5:#85        // \"<init>\":(Ljava/lang/String;)V\n+   #85 = Utf8               (Ljava/lang/String;)V\n+   #86 = Class              #87           // dev/langchain4j/model/vertexai/ContentsMapper\n+   #87 = Utf8               dev/langchain4j/model/vertexai/ContentsMapper\n+   #88 = Utf8               Code\n+   #89 = Utf8               LineNumberTable\n+   #90 = Utf8               LocalVariableTable\n+   #91 = Utf8               this\n+   #92 = Utf8               Ldev/langchain4j/model/vertexai/ContentsMapper;\n+   #93 = Utf8               (Ljava/util/List;)Ljava/util/List;\n+   #94 = Utf8               messages\n+   #95 = Utf8               Ljava/util/List;\n+   #96 = Utf8               LocalVariableTypeTable\n+   #97 = Utf8               Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n+   #98 = Utf8               Signature\n+   #99 = Utf8               (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n+  #100 = Utf8               lambda$map$1\n+  #101 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+  #102 = Utf8               message\n+  #103 = Utf8               Ldev/langchain4j/data/message/ChatMessage;\n+  #104 = Utf8               lambda$map$0\n+  #105 = Utf8               (Ldev/langchain4j/data/message/ChatMessage;)V\n+  #106 = Utf8               StackMapTable\n+  #107 = Utf8               SourceFile\n+  #108 = Utf8               ContentsMapper.java\n+  #109 = Utf8               BootstrapMethods\n+  #110 = MethodHandle       6:#111        // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #111 = Methodref          #112.#113     // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #112 = Class              #114          // java/lang/invoke/LambdaMetafactory\n+  #113 = NameAndType        #115:#116     // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #114 = Utf8               java/lang/invoke/LambdaMetafactory\n+  #115 = Utf8               metafactory\n+  #116 = Utf8               (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  #117 = MethodType         #118          //  (Ljava/lang/Object;)V\n+  #118 = Utf8               (Ljava/lang/Object;)V\n+  #119 = MethodHandle       6:#120        // REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n+  #120 = Methodref          #86.#121      // dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n+  #121 = NameAndType        #104:#105     // lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n+  #122 = MethodType         #105          //  (Ldev/langchain4j/data/message/ChatMessage;)V\n+  #123 = MethodType         #124          //  (Ljava/lang/Object;)Ljava/lang/Object;\n+  #124 = Utf8               (Ljava/lang/Object;)Ljava/lang/Object;\n+  #125 = MethodHandle       6:#126        // REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+  #126 = Methodref          #86.#127      // dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+  #127 = NameAndType        #100:#101     // lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+  #128 = MethodType         #101          //  (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+  #129 = Utf8               InnerClasses\n+  #130 = Utf8               Builder\n+  #131 = Class              #132          // java/lang/invoke/MethodHandles$Lookup\n+  #132 = Utf8               java/lang/invoke/MethodHandles$Lookup\n+  #133 = Class              #134          // java/lang/invoke/MethodHandles\n+  #134 = Utf8               java/lang/invoke/MethodHandles\n+  #135 = Utf8               Lookup\n {\n   dev.langchain4j.model.vertexai.ContentsMapper();\n     descriptor: ()V\n     flags: (0x0000)\n     Code:\n       stack=1, locals=1, args_size=1\n          0: aload_0\n@@ -160,51 +160,51 @@\n \n   static java.util.List<com.google.cloud.vertexai.api.Content> map(java.util.List<dev.langchain4j.data.message.ChatMessage>);\n     descriptor: (Ljava/util/List;)Ljava/util/List;\n     flags: (0x0008) ACC_STATIC\n     Code:\n       stack=2, locals=1, args_size=1\n          0: aload_0\n-         1: invokeinterface #2,  1            // InterfaceMethod java/util/List.stream:()Ljava/util/stream/Stream;\n-         6: invokedynamic #3,  0              // InvokeDynamic #0:accept:()Ljava/util/function/Consumer;\n-        11: invokeinterface #4,  2            // InterfaceMethod java/util/stream/Stream.peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n-        16: invokedynamic #5,  0              // InvokeDynamic #1:apply:()Ljava/util/function/Function;\n-        21: invokeinterface #6,  2            // InterfaceMethod java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n-        26: invokestatic  #7                  // Method java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n-        29: invokeinterface #8,  2            // InterfaceMethod java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n-        34: checkcast     #9                  // class java/util/List\n+         1: invokeinterface #7,  1            // InterfaceMethod java/util/List.stream:()Ljava/util/stream/Stream;\n+         6: invokedynamic #13,  0             // InvokeDynamic #0:accept:()Ljava/util/function/Consumer;\n+        11: invokeinterface #17,  2           // InterfaceMethod java/util/stream/Stream.peek:(Ljava/util/function/Consumer;)Ljava/util/stream/Stream;\n+        16: invokedynamic #23,  0             // InvokeDynamic #1:apply:()Ljava/util/function/Function;\n+        21: invokeinterface #27,  2           // InterfaceMethod java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;\n+        26: invokestatic  #31                 // Method java/util/stream/Collectors.toList:()Ljava/util/stream/Collector;\n+        29: invokeinterface #37,  2           // InterfaceMethod java/util/stream/Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;\n+        34: checkcast     #8                  // class java/util/List\n         37: areturn\n       LineNumberTable:\n         line 14: 0\n         line 15: 11\n         line 20: 21\n         line 24: 26\n         line 14: 37\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      38     0 messages   Ljava/util/List;\n       LocalVariableTypeTable:\n         Start  Length  Slot  Name   Signature\n             0      38     0 messages   Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;\n-    Signature: #37                          // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n+    Signature: #99                          // (Ljava/util/List<Ldev/langchain4j/data/message/ChatMessage;>;)Ljava/util/List<Lcom/google/cloud/vertexai/api/Content;>;\n \n   private static com.google.cloud.vertexai.api.Content lambda$map$1(dev.langchain4j.data.message.ChatMessage);\n     descriptor: (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n     flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC\n     Code:\n       stack=2, locals=1, args_size=1\n-         0: invokestatic  #10                 // Method com/google/cloud/vertexai/api/Content.newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n+         0: invokestatic  #41                 // Method com/google/cloud/vertexai/api/Content.newBuilder:()Lcom/google/cloud/vertexai/api/Content$Builder;\n          3: aload_0\n-         4: invokeinterface #11,  1           // InterfaceMethod dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n-         9: invokestatic  #12                 // Method dev/langchain4j/model/vertexai/RoleMapper.map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n-        12: invokevirtual #13                 // Method com/google/cloud/vertexai/api/Content$Builder.setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+         4: invokeinterface #47,  1           // InterfaceMethod dev/langchain4j/data/message/ChatMessage.type:()Ldev/langchain4j/data/message/ChatMessageType;\n+         9: invokestatic  #53                 // Method dev/langchain4j/model/vertexai/RoleMapper.map:(Ldev/langchain4j/data/message/ChatMessageType;)Ljava/lang/String;\n+        12: invokevirtual #58                 // Method com/google/cloud/vertexai/api/Content$Builder.setRole:(Ljava/lang/String;)Lcom/google/cloud/vertexai/api/Content$Builder;\n         15: aload_0\n-        16: invokestatic  #14                 // Method dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n-        19: invokevirtual #15                 // Method com/google/cloud/vertexai/api/Content$Builder.addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n-        22: invokevirtual #16                 // Method com/google/cloud/vertexai/api/Content$Builder.build:()Lcom/google/cloud/vertexai/api/Content;\n+        16: invokestatic  #64                 // Method dev/langchain4j/model/vertexai/PartsMapper.map:(Ldev/langchain4j/data/message/ChatMessage;)Ljava/util/List;\n+        19: invokevirtual #69                 // Method com/google/cloud/vertexai/api/Content$Builder.addAllParts:(Ljava/lang/Iterable;)Lcom/google/cloud/vertexai/api/Content$Builder;\n+        22: invokevirtual #73                 // Method com/google/cloud/vertexai/api/Content$Builder.build:()Lcom/google/cloud/vertexai/api/Content;\n         25: areturn\n       LineNumberTable:\n         line 20: 0\n         line 21: 4\n         line 22: 16\n         line 23: 22\n         line 20: 25\n@@ -214,40 +214,40 @@\n \n   private static void lambda$map$0(dev.langchain4j.data.message.ChatMessage);\n     descriptor: (Ldev/langchain4j/data/message/ChatMessage;)V\n     flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC\n     Code:\n       stack=3, locals=1, args_size=1\n          0: aload_0\n-         1: instanceof    #17                 // class dev/langchain4j/data/message/SystemMessage\n+         1: instanceof    #77                 // class dev/langchain4j/data/message/SystemMessage\n          4: ifeq          17\n-         7: new           #18                 // class java/lang/IllegalArgumentException\n+         7: new           #79                 // class java/lang/IllegalArgumentException\n         10: dup\n-        11: ldc           #19                 // String SystemMessage is currently not supported by Gemini\n-        13: invokespecial #20                 // Method java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n+        11: ldc           #81                 // String SystemMessage is currently not supported by Gemini\n+        13: invokespecial #83                 // Method java/lang/IllegalArgumentException.\"<init>\":(Ljava/lang/String;)V\n         16: athrow\n         17: return\n       LineNumberTable:\n         line 16: 0\n         line 17: 7\n         line 19: 17\n       LocalVariableTable:\n         Start  Length  Slot  Name   Signature\n             0      18     0 message   Ldev/langchain4j/data/message/ChatMessage;\n       StackMapTable: number_of_entries = 1\n         frame_type = 17 /* same */\n }\n SourceFile: \"ContentsMapper.java\"\n-InnerClasses:\n-  public static final #106= #72 of #66;   // Builder=class com/google/cloud/vertexai/api/Content$Builder of class com/google/cloud/vertexai/api/Content\n-  public static final #131= #130 of #133; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n BootstrapMethods:\n-  0: #50 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+  0: #110 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #51 (Ljava/lang/Object;)V\n-      #52 REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n-      #53 (Ldev/langchain4j/data/message/ChatMessage;)V\n-  1: #50 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n+      #117 (Ljava/lang/Object;)V\n+      #119 REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$0:(Ldev/langchain4j/data/message/ChatMessage;)V\n+      #122 (Ldev/langchain4j/data/message/ChatMessage;)V\n+  1: #110 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;\n     Method arguments:\n-      #57 (Ljava/lang/Object;)Ljava/lang/Object;\n-      #58 REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n-      #59 (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+      #123 (Ljava/lang/Object;)Ljava/lang/Object;\n+      #125 REF_invokeStatic dev/langchain4j/model/vertexai/ContentsMapper.lambda$map$1:(Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+      #128 (Ldev/langchain4j/data/message/ChatMessage;)Lcom/google/cloud/vertexai/api/Content;\n+InnerClasses:\n+  public static final #130= #59 of #42;   // Builder=class com/google/cloud/vertexai/api/Content$Builder of class com/google/cloud/vertexai/api/Content\n+  public static final #135= #131 of #133; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles\n"}]}, {"source1": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml", "source2": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml", "unified_diff": null, "details": [{"source1": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml", "source2": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.xml", "unified_diff": "@@ -7,15 +7,15 @@\n     <version>0.26.0</version>\n     <relativePath>../langchain4j-parent/pom.xml</relativePath>\n   </parent>\n   <artifactId>langchain4j-vertex-ai-gemini</artifactId>\n   <packaging>jar</packaging>\n   <name>LangChain4j integration with Google Vertex AI Gemini</name>\n   <properties>\n-    <disableVertexAiGeminiITs>false</disableVertexAiGeminiITs>\n+    <skipVertexAiGeminiITs>false</skipVertexAiGeminiITs>\n   </properties>\n   <dependencies>\n     <dependency>\n       <groupId>dev.langchain4j</groupId>\n       <artifactId>langchain4j-core</artifactId>\n     </dependency>\n     <dependency>\n@@ -63,15 +63,15 @@\n   </dependencyManagement>\n   <build>\n     <plugins>\n       <plugin>\n         <groupId>org.apache.maven.plugins</groupId>\n         <artifactId>maven-failsafe-plugin</artifactId>\n         <configuration>\n-          <skipTests>${disableVertexAiGeminiITs}</skipTests>\n+          <skipTests>${skipVertexAiGeminiITs}</skipTests>\n         </configuration>\n       </plugin>\n     </plugins>\n   </build>\n   <licenses>\n     <license>\n       <name>Apache-2.0</name>\n"}]}, {"source1": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.properties", "source2": "META-INF/maven/dev.langchain4j/langchain4j-vertex-ai-gemini/pom.properties", "unified_diff": "@@ -1,5 +1,5 @@\n #Generated by Maven\n-#Tue Jan 30 05:30:18 UTC 2024\n-version=0.26.0\n+#Wed Jan 29 08:56:48 UTC 2025\n groupId=dev.langchain4j\n artifactId=langchain4j-vertex-ai-gemini\n+version=0.26.0\n"}]}
