#include <iostream>
#include <array>
using namespace std;

struct A{
   int n=0;
   std::array<int,10000> arr;
   A(){
      cout<<"+A "<<this<<endl;
   }
   ~A(){
      for (int i=0;i<n;i++)
         cout<<arr[i]<<" ";
      cout<<endl;
   }
   void add(int r){
      cout<<"add "<<r<<endl;
      arr[n]=r;n=(n+1)%10000;
   }
};
int main(){
   {
      A* test=new A;
      test->~A();
      for (int i=0;i<10;i++){
         test->add(i*i);
         test->~A();
      }
      delete test;
      for (int i=0;i<10;i++){
         test->add(i*i);
         test->~A();
      }
   }
}
