Question: I am trying to parse JSON that is submitted from a `POST` request into a struct in a web service to send email. The following JSON is submitted in the body of the request.

```
{
  "body": {
    "template": "abctemplate.html",
    "params": {
      "name": "Chase",
      "email": "1234@gmail.com"
    }
  },
  "to": [
    "abc@gmail.com",
    "xyz@gmail.com"
  ],
  "cc": [
    "xxx@example.com",
    "yyy@example.com"
  ],
  "replyTo": {
    "email": "aaa@gmail.com",
    "name": "Jack"
  },
  "bcc": "ccc@gmail.com",
  "subject": "Hello, world!"
}

```

This is mapped and read into the following struct

```
type emailData struct {
    Body struct {
        Template string            `json:"template"`
        Params   map[string]string `json:"params"`
    } `json:"body"`
    To      map[string]string `json:"To"` // TODO This is wrong
    CC      string            `json:"cc"` // TODO this is wrong
    ReplyTo struct {
        Email string `json:"email"`
        Name  string `json:"name"`
    }
    BCC     string `json:"bcc"`
    Subject string `json:"subject"`
}

```

Both the 'to' and 'cc' JSON fields are string arrays of unknown length and do not have keys. Is there a way to map the string arrays into the struct fields? I've tried the two different ways where there are `// TODO` tags with no luck. Thanks!

Answer: 
Change warrior.h to: (i.e. correct include guards)

```
#ifndef WARRIOR_H
#define WARRIOR_H

#include "fighter.h"

class warrior{
public:
    warrior();
    ~warrior();
    void special(fighter);
private:

};

#endif

```

Or better still use `#pragma once` if supported
The incorrectly named guards were making it not include the warrior file. Thank you @1201ProgramAlarm