public static QueryPushDataResponse Unmarshall(UnmarshallerContext context)
        {
            QueryPushDataResponse queryPushDataResponse = new QueryPushDataResponse();

            queryPushDataResponse.HttpResponse = context.HttpResponse;
            queryPushDataResponse.RequestId = context.StringValue("QueryPushData.RequestId");

            List<QueryPushDataResponse.BillInfo> pushDataInfos = new List<QueryPushDataResponse.BillInfo>();
            for (int i = 0; i < context.Length("QueryPushData.PushDataInfos.Length"); i++) {
                QueryPushDataResponse.BillInfo billInfo = new QueryPushDataResponse.BillInfo();
                billInfo.Date = context.StringValue("QueryPushData.PushDataInfos["+ i +"].Date");
                billInfo.Accepted = context.IntegerValue("QueryPushData.PushDataInfos["+ i +"].Accepted");
                billInfo.Sent = context.IntegerValue("QueryPushData.PushDataInfos["+ i +"].Sent");
                billInfo.Received = context.IntegerValue("QueryPushData.PushDataInfos["+ i +"].Received");
                billInfo.Opened = context.IntegerValue("QueryPushData.PushDataInfos["+ i +"].Opened");
                billInfo.Deleted = context.IntegerValue("QueryPushData.PushDataInfos["+ i +"].Deleted");

                pushDataInfos.Add(billInfo);
            }
            queryPushDataResponse.PushDataInfos = pushDataInfos;

            return queryPushDataResponse;
        }