Given linked list below, write function insertAfter(int value, int data) to insert a new node with data after node having value, if it exists. class NumberLinkedList { private: struct ListNode { int value; // The value in this node struct ListNode *next; // To point to the next node ListNode *head; // List head pointer public: void insertAfter (int value, int data); };