#include<bits/stdc++.h>
using namespace std;

struct symbolinfo{
string name;
string type;
};

class symboltable{
vector<symbolinfo>vec[10];
public:


   int  hashfunction(string name)

{
  int sum=0;
  int len=name.length();
  for(int i=0;i<len;i++)
   {
     sum+=name[i] ;

   }
   return sum%10;
}


void insertt (string name,string type){
 symbolinfo*ob=new symbolinfo();
 ob->name=name;
 ob->type=type;

int hashval=hashfunction(name);
vector<symbolinfo>v=vec[hashval];
int flag=0;
for(auto find =v.begin();find!=v.end();++find)
{
  if (find->name==name&&find->type==type)
    {
        flag=1;
        break;

    }
}

if(flag==1)
{

  cout<<"already inserted"<<endl;

}
else{

 vec[hashval].push_back(*ob) ;
 cout<<"Symbol inserted"<<endl;

}

}

int lookup(string name)
{


}
void deletee(string name,string type)
{


}
};



int main()
{
  symboltable s;
  s.insertt("int","keyword") ;
  s.insertt("a","id");
  s.insertt("a","id");
  
}




