#include<stdio.h>
#include<stdlib.h>
struct node
{
int data,leftnum,rightnum;
node *left,*right;
};
void insert(node *a,node *b)
{
if(a->data>b->data)
{
if(!a->left)a->left=b;
else insert(a->left,b);
a->leftnum++;
}
else
{
if(!a->right)a->right=b;
else insert(a->right,b);
a->rightnum++;
}
}
int findmid(node *root,int n)
{
if(n-1==root->leftnum) return root->data;
else if(n-1>root->leftnum)return findmid(root->right,n-root->leftnum-1);
else return findmid(root->left,n);
}
main()
{
int n,k,m;
while(~scanf("%d",&n))
{
if(!n)break;
k=1;
double t;
n--;
node *root=(node*)malloc(sizeof(node));
scanf("%d%d",&m,&root->data),root->left=0,root->right=0,root->leftnum=0,root->rightnum=0;
while(n--)
{
scanf("%d",&m);
if(m==1)
{
k++;
node *p=(node*)malloc(sizeof(node));
scanf("%d",&p->data),p->left=0,p->right=0,p->leftnum=0,p->rightnum=0;
insert(root,p);
}
else if(m==2)
{
if(k%2)t=findmid(root,(k+1)/2),printf("%.1lf\n",t);
else t=findmid(root,k/2)+findmid(root,k/2+1),printf("%.1lf\n",t/2);
}
}
}
}