// editor4
#include <iostream>
#include <vector>
#include <string>
#include <iomanip>
#include <memory>
using namespace std;

class Retail{
    protected:
    double inip;
    double discountp;
    
    public:
    Retail(double p, double d):inip(p), discountp(d) {}
    
    virtual void calPrice() const = 0;
    
    virtual ~Retail()  = default;
};

class ProductSale: public Retail
{
    public:
    ProductSale(double p, double d): Retail(p,d) {}
    
    void CalPrice() const override{
        double fp = inip*(1.0-(discountp/100));
        cout << fixed << setprecision(2) << fp << endl;
    }
};

class ClearanceSale:public Retail{
    public:
    ClearanceSale(double p, double d): Retail(p,d) {}
    
    void calPrice() const override
    {
        double tp = discountp + 20.0;
        if(tp >100.0)tp = 100.0;
        double fp = inip*(1.0-(tp/100.0));
        cout << fixed << setprecision(2) << fp << endl;
    }
};

class SeasonalSale:public Retail{
    public:
    SeasonalSale(double p, double d):Retail(p,d) {}
    
    void calPrice() const override
    {
        double tp = discountp + 15.0;
        if(tp >100.0)tp = 100.0;
        double fp = inip*(1.0-(tp/100.0));
        cout << fixed << setprecision(2) << fp << endl;
    }
};

int main()
{
    int n;
    cin >> n;
    vector<unique_ptr<Retail>> sales;
    
    for(int i=0;i<n;i++)
    {
        string s;
        double p,d;
        cin>> s>>p>>d;
        
        if(s == "ProductSale")
        sales.push_back(make_unique<ProductSale>(p, d));
        else if(s == "ClearanceSale")
        sales.push_back(make_unique<ClearanceSale>(p, d));
        else if(s == "seasonalSale")
        sales.push_back(make_unique<SeasonalSale>(p, d));
    }
    
    for(auto i: sales)
    {
        i -> calPrice();
    }
    return 0;
}