using System.Collections.Generic;
using Newtonsoft.Json.Linq;
public static void Main()
string voucher = "[[\"0x5533fEF1a0081e0355E0A33Ae396A92F8c0CDD31\",[1,2,3,4,5],[\"333347433333333333333333\",\"0\",\"40000000000000000000\",\"0\",\"0\"]],\"0x218ab4abb49af4ca86a9d289c35624607cc3d01d88dde38eccd12f8067748ba7231baf790ba34db6c5c7ecd050566394a6a0234b89db004eeacd9fe03df128431b\"]";
var parsedData = JArray.Parse(voucher);
string receiver = parsedData[0][0].ToString();
int[] poolIds = parsedData[0][1].ToObject<int[]>();
string[] totalAmounts = parsedData[0][2].ToObject<string[]>();
string signature = parsedData[1].ToString();
Console.WriteLine(receiver);
Console.WriteLine(poolIds[1]);
Console.WriteLine(totalAmounts[2]);
Console.WriteLine(signature);
string[] voucherArray = new string[] { receiver, poolIds.ToString(), totalAmounts.ToString() };
Console.WriteLine(voucherArray[0]);