import
java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Solution {
public static void main(String args[] ) throws Exception {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
Scanner s = new Scanner(
System.in);
int num = s.nextInt();
Fabric itte[] = new Fabric[num];
for(int i=0;i<num;i++)
{
int id = s.nextInt();
s.nextLine();
String name = s.nextLine();
int avlSt = s.nextInt();
double price = s.nextDouble();
itte[i] = new Fabric(id, name, avlSt,price);
}
s.nextLine();
String n = s.nextLine();
Fabric ans1 = findFabricWithMaximumPrice(itte);
Fabric ans2 = searchFabricByName(itte, n);
if(ans1!=null)
{
System.out.println("Id:"+ans1.getId());
System.out.println("name:"+ans1.getName());
System.out.println("availableStock:"+ans1.getStock());
System.out.println("price:"+ans1.getPrice());
}
else
System.out.println("No Fabric found with mentioned attribute.");
if(ans2!=null)
{
System.out.println("Id:"+ans2.getId());
System.out.println("name:"+ans2.getName());
System.out.println("availableStock:"+ans2.getStock());
System.out.println("price:"+ans2.getPrice());
}
else
System.out.println("No Fabric found with mentioned attribute.");
}
public static Fabric findFabricWithMaximumPrice(Fabric[] fabrics)
{
Fabric l=null;
double m=0;
for(int i=0;i<fabrics.length;i++)
{
if(fabrics[i].getPrice()>m)
{
m= fabrics[i].getPrice();
l=fabrics[i];
}
}
return l;
}
public static Fabric searchFabricByName(Fabric[] fabrics, String name)
{
Fabric b = null;
for(int i=0;i<fabrics.length;i++)
{
if(fabrics[i].getName().equalsIgnoreCase(name))
{
b= fabrics[i];
}
}
return b;
}
}
class Fabric
{
int id,stock;
String name;
double price;
public Fabric(int id,String name,int stock,double price)
{
this.id = id;
this.name = name;
this.stock = stock;
this.price = price;
}
public int getId()
{ return id; }
public String getName()
{ return name; }
public int getStock()
{ return stock; }
public double getPrice()
{ return price; }
}