#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp> // Common file
#include <ext/pb_ds/tree_policy.hpp> // Including tree_order_statistics_node_update
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
#define MAX(a, b) (((a) < (b)) ? (b) : (a))
using namespace std;
using namespace __gnu_pbds;
auto random_address = [] { char *p = new char; delete p; return uint64_t(p); };
const uint64_t SEED = chrono::steady_clock::now().time_since_epoch().count() * (random_address() | 1);
mt19937_64 rng(SEED);
typedef tree<
int,
null_type,
less<int>,
rb_tree_tag,
tree_order_statistics_node_update>
ordered_set;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
char s,t;
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cin>>s>>t;
    if(s=='N')
        cout<<t;
    else
        cout<<char(t-32);
    return 0;
}

#include<bits/stdc++.h>
#include<iomanip>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#define fast {ios_base::sync_with_stdio(false);cin.tie(NULL);}
#define ar array
#define all(x) (x).begin(), (x).end()
#define Unique(a)       a.erase(unique(all(a)), a.end())
#define ld long double
#define wh(x)       cout<< #x << " is " << x << '\n';
#define pb push_back
#define fi first
#define se second
#define inf 1e9
using namespace __gnu_pbds;
using namespace std;	
typedef long long int ll;
template<typename T>
using ord_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
//member functions :
//1. order_of_key(k) : number of elements strictly lesser than k
//2. find_by_order(k) : k-th element in the set

const int mxn=2e5+5,mod=1e9+7;

int main(void){
	fast;
	ll t,n,i,cr=0;
	cin>>t>>n;
	ll l=1,h=1e17;
	while(l<h&&cr<100){
		ll m=(l+h)/2;
		ll ex=(m*t)/(100+t);
		if(ex>=n)
			h=m;
		else
			l=m;
		++cr;
	}
	cout<<l;
}
