
import java.util.*;

public class Main {
    public static void main(String[] args) {
        try {
            // Read entire stdin into a single string
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            StringBuilder sbInput = new StringBuilder();
            String line;
            while ((line = br.readLine()) != null) {
                if (line.trim().length() == 0) continue; // ignore blank lines
                sbInput.append(line).append(" ");
            }
            String all = sbInput.toString().trim();
            if (all.isEmpty()) {
                System.out.println("Invalid input");
                return;
            }

            StringTokenizer st = new StringTokenizer(all);
            // Parse N
            if (!st.hasMoreTokens()) { System.out.println("Invalid input"); return; }
            int n;
            try {
                String nTok = st.nextToken();
                n = Integer.parseInt(nTok);
            } catch (NumberFormatException e) {
                System.out.println("Invalid input");
                return;
            }

            // Validate N
            if (n < 1 || n > 20) {
                System.out.println("Invalid input");
                return;
            }

            // Prepare list to store computed final prices
            List<Double> results = new ArrayList<>(n);

            // Parse and validate each product (3 tokens each)
            for (int i = 0; i < n; i++) {
                if (!st.hasMoreTokens()) { System.out.println("Invalid input"); return; }
                String type = st.nextToken();

                if (!st.hasMoreTokens()) { System.out.println("Invalid input"); return; }
                String priceTok = st.nextToken();

                if (!st.hasMoreTokens()) { System.out.println("Invalid input"); return; }
                String discountTok = st.nextToken();

                // Validate type
                if (!(type.equals("ProductSale") || type.equals("ClearanceSale") || type.equals("SeasonalSale"))) {
                    System.out.println("Invalid input");
                    return;
                }

                // Parse price and discount
                double price, discount;
                try {
                    price = Double.parseDouble(priceTok);
                    discount = Double.parseDouble(discountTok);
                } catch (NumberFormatException e) {
                    System.out.println("Invalid input");
                    return;
                }

                // Validate ranges
                if (price < 0.0 || price > 10000.0 || discount < 0.0 || discount > 100.0) {
                    System.out.println("Invalid input");
                    return;
                }

                // Compute final price
                double finalPrice = price - (price * discount / 100.0);
                results.add(finalPrice);
            }

            // If there are extra tokens beyond expected, treat as invalid
            if (st.hasMoreTokens()) {
                System.out.println("Invalid input");
                return;
            }

            // All valid — print results with exactly one decimal place
            for (double v : results) {
                System.out.printf("%.1f%n", v);
            }

        } catch (IOException e) {
            System.out.println("Invalid input");
        }
    }
}
