0a1,3
> #include <vector>
> #include <iostream>
> 
6c9
< #include "func.h"
---
> //#include "func.h"
12c15,16
<     void reset_achieved(/*int period*/)
---
>     /* inline
>     void reset_achieved()
14,17d17
<         ZONE	*zone;
<         GROUP	*group;
<         AGEDIST	*ad;
< 
19,21c19,21
<         pApp->m_zoneList = (LIST_PTR *)List::reset(pApp->m_zoneList);
<         zone = (ZONE *)List::next(pApp->m_zoneList);
<         while (zone != 0)
---
> 
>         typedef vector<ZoneStruct*>::iterator ZI;
>         for (ZI zoneIter = pApp->m_zoneList.begin(); zoneIter != pApp->m_zoneList.end(); ++zoneIter)
23,25c23,25
<             zone->achieved->volume = 0.0;
<             zone->achieved->area = 0.0;
<             zone = (ZONE *)List::next(pApp->m_zoneList);
---
>             (*zoneIter)->achieved->volume = 0.0;
>             (*zoneIter)->achieved->area = 0.0;
> 
27,29c27,29
<         pApp->m_groupList = (LIST_PTR *)List::reset(pApp->m_groupList);
<         group = (GROUP *)List::next(pApp->m_groupList);
<         while (group != 0)
---
>         typedef vector<GroupStruct*>::iterator GI;
>         for (GI groupIter = pApp->m_groupList.begin(); //!pApp->m_groupList.empty() &&
>                 groupIter != pApp->m_groupList.end(); ++groupIter)
31,35c31,36
<             group->achieved->volume = 0.0;
<             group->achieved->area = 0.0;
<             group->achieved->AgeDist = (LIST_PTR *)List::reset(group->achieved->AgeDist);
<             ad = (AGEDIST *)List::next(group->achieved->AgeDist);
<             while (ad!= 0)
---
>             (*groupIter)->achieved->volume = 0.0;
>             (*groupIter)->achieved->area = 0.0;
> 
>             typedef map<int, AGEDIST*>::iterator ADI;
>             for (ADI ageDistIter = (*groupIter)->achieved->AgeDist.begin();
>                      ageDistIter != (*groupIter)->achieved->AgeDist.end(); ++ageDistIter)
36a38
>                 AGEDIST* pCurrentAgeDist = ageDistIter->second;
38c40
<             cout << "deleting agedist at address: " << hex << (ad) << endl;
---
>             cout << "deleting agedist at address: " << hex << pCurrentAgeDist << dec << endl;
40c42
<                 delete ad;
---
>                 delete pCurrentAgeDist;
42,43c44
<                 ad = 0;
<                 ad = (AGEDIST *)List::next(group->achieved->AgeDist);
---
>                 pCurrentAgeDist = 0;
45,47c46,47
<             group->achieved->AgeDist = (LIST_PTR *)List::done(group->achieved->AgeDist);
<             group->achieved->AgeDist = 0;
<             group = (GROUP *)List::next(pApp->m_groupList);
---
>             (*groupIter)->achieved->AgeDist.clear();
> 
49a50
>     */
