/*
* @Author: hungeazy
* @Date: 2025-11-21 09:20:30
* @Last Modified by: hungeazy
* @Last Modified time: 2025-11-21 12:44:35
*/
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
// #pragma GCC optimize("O3")
// #pragma GCC optimize("unroll-loops")
// #pragma GCC target("avx2,bmi,bmi2,popcnt,lzcnt")
using namespace std;
using namespace __gnu_pbds;
bool M1;
#define fast ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define int long long
#define lb long double
#define ll long long
#define ull unsigned long long
#define sz(x) x.size()
#define sqr(x) (1LL * (x) * (x))
#define all(x) x.begin(), x.end()
#define fill(f,x) memset(f,x,sizeof(f))
#define FOR(i,l,r) for(int i=l;i<=r;i++)
#define FOD(i,r,l) for(int i=r;i>=l;i--)
#define debug(x) cout << #x << " = " << x << '\n'
#define ii pair<int,int>
#define iii pair<int,ii>
#define di pair<ii,ii>
#define vi vector<int>
#define vii vector<ii>
#define mii map<int,int>
#define fi first
#define se second
#define pb push_back
#define MOD 1000000007
#define __lcm(a,b) (1ll * ((a) / __gcd((a), (b))) * (b))
#define YES cout << "YES\n"
#define NO cout << "NO\n"
#define MASK(i) (1LL << (i))
#define c_bit(i) __builtin_popcountll(i)
#define BIT(x,i) ((x) & MASK(i))
#define SET_ON(x,i) ((x) | MASK(i))
#define SET_OFF(x,i) ((x) & ~MASK(i))
#define oo 1e18
#define name ""
#define endl '\n'
#define memory() cerr << abs(&M2-&M1)/1024.0/1024 << " MB" << endl
#define time() cerr << endl << "-------------Time:" << 1000.0 * clock() / CLOCKS_PER_SEC << "ms." << endl
template<typename T> bool maximize(T &res, const T &val) { if (res < val){ res = val; return true; }; return false; }
template<typename T> bool minimize(T &res, const T &val) { if (res > val){ res = val; return true; }; return false; }
template <class T> using ordered_set = tree <T, null_type, less_equal <T>, rb_tree_tag,tree_order_statistics_node_update>;
const int N = 410;
int n;
ii black[N],white[N];
istream& operator>>(istream &in, ii &p) {
return in >> p.fi >> p.se;
}
namespace sub1 {
pair<ii,ii> Line[N];
bool approved() {
return n <= 9;
}
int ccw(ii a, ii b, ii c)
{
int val = (a.fi-b.fi)*(c.se-b.se)-(c.fi-b.fi)*(a.se-b.se);
return (val >= 0 ? val ? 1 : 0 : -1);
}
bool check(int a, int b, int c, int d)
{
if (a > b) swap(a,b);
if (c > d) swap(c,d);
return (max(a,c) <= min(b,d));
}
bool calc(ii a, ii b, ii c, ii d)
{
if (!ccw(a,b,c) and !ccw(a,b,d)) return (check(a.fi,b.fi,c.fi,d.fi) and check(a.se,b.se,c.se,d.se));
return (ccw(a,c,d) != ccw(b,c,d) and ccw(c,a,b) != ccw(d,a,b));
}
void solve(void)
{
vi perm;
FOR(i,1,n) perm.pb(i);
do {
int i = 1;
for (int j : perm)
Line[i++] = {black[i],white[j]};
FOR(i,1,n)
FOR(j,i+1,n)
if (calc(Line[i].fi,Line[i].se,Line[j].fi,Line[j].se))
goto li;
for (int j : perm) cout << j << endl;
return;
li:;
} while (next_permutation(all(perm)));
cout << -1;
}
}
namespace sub2 {
int source,sink,match[N],val;
lb ans;
struct MaxFlowMinCost {
int flow[N][N],cap[N][N],trace[N];
lb cost[N][N],dist[N];
vi g[N];
bool visited[N];
void addEdge(int u, int v, int x, lb y)
{
cap[u][v] = x;
cost[u][v] = cost[v][u] = y;
g[u].pb(v); g[v].pb(u);
}
bool FordBellman()
{
FOR(i,source,sink)
{
dist[i] = oo;
trace[i] = -1;
}
queue<int> q;
q.push(source);
dist[source] = 0;
while (!q.empty())
{
int u = q.front();
q.pop();
visited[u] = false;
for (int v : g[u])
if (flow[u][v] < cap[u][v])
{
int newCost = cost[u][v]*(flow[u][v] >= 0 ? 1 : -1);
if (minimize(dist[v],dist[u]+newCost))
{
trace[v] = u;
if (!visited[v])
{
visited[v] = true;
q.push(v);
}
}
}
}
return dist[sink] < oo;
}
void inc()
{
int i = sink, del = oo;
while (i != source)
{
minimize(del,(flow[trace[i]][i] >= 0 ? cap[trace[i]][i]-flow[trace[i]][i] : -flow[trace[i]][i]));
i = trace[i];
}
minimize(del,val);
i = sink;
while (i != source)
{
flow[trace[i]][i] += del;
flow[i][trace[i]] -= del;
i = trace[i];
}
val -= del;
ans += del*dist[sink];
if (!val)
{
FOR(i,1,n)
FOR(j,1,n)
if (flow[i][j+n] > 0)
match[i] = j;
FOR(i,1,n) cout << match[i] << endl;
exit(0);
}
}
void calc()
{
ans = 0;
while (FordBellman()) inc();
cout << -1;
}
} dinic;
lb getDist(ii a, ii b) {
return sqrt(sqr(a.fi-b.fi)+sqr(a.se-b.se));
}
void solve(void)
{
val = n;
source = 0, sink = 2*n+1;
FOR(i,1,n) dinic.addEdge(source,i,1,0);
FOR(i,1,n)
FOR(j,1,n)
dinic.addEdge(i,j+n,1,getDist(black[i],white[j]));
FOR(i,1,n) dinic.addEdge(i+n,sink,1,0);
dinic.calc();
}
}
bool M2;
signed main()
{
fast;
if (fopen(name".inp","r"))
{
freopen(name".inp","r",stdin);
freopen(name".out","w",stdout);
}
cin >> n;
FOR(i,1,n) cin >> black[i];
FOR(i,1,n) cin >> white[i];
// if (sub1::approved()) return sub1::solve(), time(), memory(), 0;
sub2::solve();
time();
memory();
return 0;
}
// ██░ ██ █ ██ ███▄ █ ▄████
//▓██░ ██▒ ██ ▓██▒ ██ ▀█ █ ██▒ ▀█▒
//▒██▀▀██░▓██ ▒██░▓██ ▀█ ██▒▒██░▄▄▄░
//░▓█ ░██ ▓▓█ ░██░▓██▒ ▐▌██▒░▓█ ██▓
//░▓█▒░██▓▒▒█████▓ ▒██░ ▓██░░▒▓███▀▒
// ▒ ░░▒░▒░▒▓▒ ▒ ▒ ░ ▒░ ▒ ▒ ░▒ ▒
// ▒ ░▒░ ░░░▒░ ░ ░ ░ ░░ ░ ▒░ ░ ░
// ░ ░░ ░ ░░░ ░ ░ ░ ░ ░ ░ ░ ░
// ░ ░ ░ ░ ░ ░
LyoKKiBAQXV0aG9yOiBodW5nZWF6eQoqIEBEYXRlOiAgIDIwMjUtMTEtMjEgMDk6MjA6MzAKKiBATGFzdCBNb2RpZmllZCBieTogICBodW5nZWF6eQoqIEBMYXN0IE1vZGlmaWVkIHRpbWU6IDIwMjUtMTEtMjEgMTI6NDQ6MzUKKi8KI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxleHQvcGJfZHMvYXNzb2NfY29udGFpbmVyLmhwcD4gCiNpbmNsdWRlIDxleHQvcGJfZHMvdHJlZV9wb2xpY3kuaHBwPiAKLy8gI3ByYWdtYSBHQ0Mgb3B0aW1pemUoIk8zIikgIAovLyAjcHJhZ21hIEdDQyBvcHRpbWl6ZSgidW5yb2xsLWxvb3BzIikgIAovLyAjcHJhZ21hIEdDQyB0YXJnZXQoImF2eDIsYm1pLGJtaTIscG9wY250LGx6Y250IikgIAp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBuYW1lc3BhY2UgX19nbnVfcGJkczsgCmJvb2wgTTE7CiNkZWZpbmUgZmFzdCBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsgY2luLnRpZShOVUxMKTsgY291dC50aWUoTlVMTCk7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIGxiIGxvbmcgZG91YmxlCiNkZWZpbmUgbGwgbG9uZyBsb25nIAojZGVmaW5lIHVsbCB1bnNpZ25lZCBsb25nIGxvbmcKI2RlZmluZSBzeih4KSB4LnNpemUoKQojZGVmaW5lIHNxcih4KSAoMUxMICogKHgpICogKHgpKQojZGVmaW5lIGFsbCh4KSB4LmJlZ2luKCksIHguZW5kKCkKI2RlZmluZSBmaWxsKGYseCkgbWVtc2V0KGYseCxzaXplb2YoZikpCiNkZWZpbmUgRk9SKGksbCxyKSBmb3IoaW50IGk9bDtpPD1yO2krKykKI2RlZmluZSBGT0QoaSxyLGwpIGZvcihpbnQgaT1yO2k+PWw7aS0tKQojZGVmaW5lIGRlYnVnKHgpIGNvdXQgPDwgI3ggPDwgIiA9ICIgPDwgeCA8PCAnXG4nCiNkZWZpbmUgaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIGlpaSBwYWlyPGludCxpaT4KI2RlZmluZSBkaSBwYWlyPGlpLGlpPgojZGVmaW5lIHZpIHZlY3RvcjxpbnQ+CiNkZWZpbmUgdmlpIHZlY3RvcjxpaT4KI2RlZmluZSBtaWkgbWFwPGludCxpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBNT0QgMTAwMDAwMDAwNwojZGVmaW5lIF9fbGNtKGEsYikgKDFsbCAqICgoYSkgLyBfX2djZCgoYSksIChiKSkpICogKGIpKQojZGVmaW5lIFlFUyBjb3V0IDw8ICJZRVNcbiIKI2RlZmluZSBOTyBjb3V0IDw8ICJOT1xuIgojZGVmaW5lIE1BU0soaSkgKDFMTCA8PCAoaSkpCiNkZWZpbmUgY19iaXQoaSkgX19idWlsdGluX3BvcGNvdW50bGwoaSkKI2RlZmluZSBCSVQoeCxpKSAoKHgpICYgTUFTSyhpKSkKI2RlZmluZSBTRVRfT04oeCxpKSAoKHgpIHwgTUFTSyhpKSkKI2RlZmluZSBTRVRfT0ZGKHgsaSkgKCh4KSAmIH5NQVNLKGkpKQojZGVmaW5lIG9vIDFlMTgKI2RlZmluZSBuYW1lICIiCiNkZWZpbmUgZW5kbCAnXG4nCiNkZWZpbmUgbWVtb3J5KCkgY2VyciA8PCBhYnMoJk0yLSZNMSkvMTAyNC4wLzEwMjQgPDwgIiBNQiIgPDwgZW5kbAojZGVmaW5lIHRpbWUoKSBjZXJyIDw8IGVuZGwgPDwgIi0tLS0tLS0tLS0tLS1UaW1lOiIgPDwgMTAwMC4wICogY2xvY2soKSAvIENMT0NLU19QRVJfU0VDIDw8ICJtcy4iIDw8IGVuZGwKdGVtcGxhdGU8dHlwZW5hbWUgVD4gYm9vbCBtYXhpbWl6ZShUICZyZXMsIGNvbnN0IFQgJnZhbCkgeyBpZiAocmVzIDwgdmFsKXsgcmVzID0gdmFsOyByZXR1cm4gdHJ1ZTsgfTsgcmV0dXJuIGZhbHNlOyB9CnRlbXBsYXRlPHR5cGVuYW1lIFQ+IGJvb2wgbWluaW1pemUoVCAmcmVzLCBjb25zdCBUICZ2YWwpIHsgaWYgKHJlcyA+IHZhbCl7IHJlcyA9IHZhbDsgcmV0dXJuIHRydWU7IH07IHJldHVybiBmYWxzZTsgfQp0ZW1wbGF0ZSA8Y2xhc3MgVD4gdXNpbmcgb3JkZXJlZF9zZXQgPSB0cmVlIDxULCBudWxsX3R5cGUsIGxlc3NfZXF1YWwgPFQ+LCByYl90cmVlX3RhZyx0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+Owpjb25zdCBpbnQgTiA9IDQxMDsKaW50IG47CmlpIGJsYWNrW05dLHdoaXRlW05dOwoKaXN0cmVhbSYgb3BlcmF0b3I+Pihpc3RyZWFtICZpbiwgaWkgJnApIHsKCXJldHVybiBpbiA+PiBwLmZpID4+IHAuc2U7Cn0KCm5hbWVzcGFjZSBzdWIxIHsKCglwYWlyPGlpLGlpPiBMaW5lW05dOwoKCWJvb2wgYXBwcm92ZWQoKSB7CgkJcmV0dXJuIG4gPD0gOTsKCX0KCglpbnQgY2N3KGlpIGEsIGlpIGIsIGlpIGMpCgl7CgkJaW50IHZhbCA9IChhLmZpLWIuZmkpKihjLnNlLWIuc2UpLShjLmZpLWIuZmkpKihhLnNlLWIuc2UpOwoJCXJldHVybiAodmFsID49IDAgPyB2YWwgPyAxIDogMCA6IC0xKTsKCX0KCglib29sIGNoZWNrKGludCBhLCBpbnQgYiwgaW50IGMsIGludCBkKQoJewoJCWlmIChhID4gYikgc3dhcChhLGIpOwoJCWlmIChjID4gZCkgc3dhcChjLGQpOwoJCXJldHVybiAobWF4KGEsYykgPD0gbWluKGIsZCkpOwoJfQoKCWJvb2wgY2FsYyhpaSBhLCBpaSBiLCBpaSBjLCBpaSBkKQoJewoJCWlmICghY2N3KGEsYixjKSBhbmQgIWNjdyhhLGIsZCkpIHJldHVybiAoY2hlY2soYS5maSxiLmZpLGMuZmksZC5maSkgYW5kIGNoZWNrKGEuc2UsYi5zZSxjLnNlLGQuc2UpKTsKCQlyZXR1cm4gKGNjdyhhLGMsZCkgIT0gY2N3KGIsYyxkKSBhbmQgY2N3KGMsYSxiKSAhPSBjY3coZCxhLGIpKTsKCX0KCgl2b2lkIHNvbHZlKHZvaWQpCgl7CgkJdmkgcGVybTsKCQlGT1IoaSwxLG4pIHBlcm0ucGIoaSk7CgkJZG8gewoJCQlpbnQgaSA9IDE7CgkJCWZvciAoaW50IGogOiBwZXJtKQoJCQkJTGluZVtpKytdID0ge2JsYWNrW2ldLHdoaXRlW2pdfTsKCQkJRk9SKGksMSxuKQoJCQkJRk9SKGosaSsxLG4pCgkJCQkJaWYgKGNhbGMoTGluZVtpXS5maSxMaW5lW2ldLnNlLExpbmVbal0uZmksTGluZVtqXS5zZSkpCgkJCQkJCWdvdG8gbGk7CgkJCWZvciAoaW50IGogOiBwZXJtKSBjb3V0IDw8IGogPDwgZW5kbDsKCQkJcmV0dXJuOwoJCQlsaTo7CgkJfSB3aGlsZSAobmV4dF9wZXJtdXRhdGlvbihhbGwocGVybSkpKTsKCQljb3V0IDw8IC0xOwoJfQoJCn0KCm5hbWVzcGFjZSBzdWIyIHsKCglpbnQgc291cmNlLHNpbmssbWF0Y2hbTl0sdmFsOwoJbGIgYW5zOwoKCXN0cnVjdCBNYXhGbG93TWluQ29zdCB7CgkJaW50IGZsb3dbTl1bTl0sY2FwW05dW05dLHRyYWNlW05dOwoJCWxiIGNvc3RbTl1bTl0sZGlzdFtOXTsKCQl2aSBnW05dOwoJCWJvb2wgdmlzaXRlZFtOXTsKCgkJdm9pZCBhZGRFZGdlKGludCB1LCBpbnQgdiwgaW50IHgsIGxiIHkpCgkJewoJCQljYXBbdV1bdl0gPSB4OwoJCQljb3N0W3VdW3ZdID0gY29zdFt2XVt1XSA9IHk7CgkJCWdbdV0ucGIodik7IGdbdl0ucGIodSk7CgkJfQoKCQlib29sIEZvcmRCZWxsbWFuKCkKCQl7CgkJCUZPUihpLHNvdXJjZSxzaW5rKSAKCQkJewoJCQkJZGlzdFtpXSA9IG9vOwoJCQkJdHJhY2VbaV0gPSAtMTsKCQkJfQoJCQlxdWV1ZTxpbnQ+IHE7CgkJCXEucHVzaChzb3VyY2UpOwoJCQlkaXN0W3NvdXJjZV0gPSAwOwoJCQl3aGlsZSAoIXEuZW1wdHkoKSkKCQkJewoJCQkJaW50IHUgPSBxLmZyb250KCk7CgkJCQlxLnBvcCgpOwoJCQkJdmlzaXRlZFt1XSA9IGZhbHNlOwoJCQkJZm9yIChpbnQgdiA6IGdbdV0pCgkJCQkJaWYgKGZsb3dbdV1bdl0gPCBjYXBbdV1bdl0pCgkJCQkJewoJCQkJCQlpbnQgbmV3Q29zdCA9IGNvc3RbdV1bdl0qKGZsb3dbdV1bdl0gPj0gMCA/IDEgOiAtMSk7CgkJCQkJCWlmIChtaW5pbWl6ZShkaXN0W3ZdLGRpc3RbdV0rbmV3Q29zdCkpCgkJCQkJCXsKCQkJCQkJCXRyYWNlW3ZdID0gdTsKCQkJCQkJCWlmICghdmlzaXRlZFt2XSkKCQkJCQkJCXsKCQkJCQkJCQl2aXNpdGVkW3ZdID0gdHJ1ZTsKCQkJCQkJCQlxLnB1c2godik7CgkJCQkJCQl9CgkJCQkJCX0KCQkJCQl9CgkJCX0KCQkJcmV0dXJuIGRpc3Rbc2lua10gPCBvbzsKCQl9CgoJCXZvaWQgaW5jKCkKCQl7CQoJCQlpbnQgaSA9IHNpbmssIGRlbCA9IG9vOwoJCQl3aGlsZSAoaSAhPSBzb3VyY2UpCgkJCXsKCQkJCW1pbmltaXplKGRlbCwoZmxvd1t0cmFjZVtpXV1baV0gPj0gMCA/IGNhcFt0cmFjZVtpXV1baV0tZmxvd1t0cmFjZVtpXV1baV0gOiAtZmxvd1t0cmFjZVtpXV1baV0pKTsKCQkJCWkgPSB0cmFjZVtpXTsKCQkJfQoJCQltaW5pbWl6ZShkZWwsdmFsKTsKCQkJaSA9IHNpbms7CgkJCXdoaWxlIChpICE9IHNvdXJjZSkKCQkJewoJCQkJZmxvd1t0cmFjZVtpXV1baV0gKz0gZGVsOwoJCQkJZmxvd1tpXVt0cmFjZVtpXV0gLT0gZGVsOwoJCQkJaSA9IHRyYWNlW2ldOwoJCQl9CgkJCXZhbCAtPSBkZWw7CgkJCWFucyArPSBkZWwqZGlzdFtzaW5rXTsKCQkJaWYgKCF2YWwpCgkJCXsKCQkJCUZPUihpLDEsbikKCQkJCQlGT1IoaiwxLG4pCgkJCQkJCWlmIChmbG93W2ldW2orbl0gPiAwKQoJCQkJCQkJbWF0Y2hbaV0gPSBqOwoJCQkJRk9SKGksMSxuKSBjb3V0IDw8IG1hdGNoW2ldIDw8IGVuZGw7CgkJCQlleGl0KDApOwoJCQl9CgkJfQoKCQl2b2lkIGNhbGMoKQoJCXsKCQkJYW5zID0gMDsKCQkJd2hpbGUgKEZvcmRCZWxsbWFuKCkpIGluYygpOwoJCQljb3V0IDw8IC0xOwoJCX0KCX0gZGluaWM7CgoJbGIgZ2V0RGlzdChpaSBhLCBpaSBiKSB7CgkJcmV0dXJuIHNxcnQoc3FyKGEuZmktYi5maSkrc3FyKGEuc2UtYi5zZSkpOwoJfQoKCXZvaWQgc29sdmUodm9pZCkKCXsJCgkJdmFsID0gbjsKCQlzb3VyY2UgPSAwLCBzaW5rID0gMipuKzE7CgkJRk9SKGksMSxuKSBkaW5pYy5hZGRFZGdlKHNvdXJjZSxpLDEsMCk7CgkJRk9SKGksMSxuKQoJCQlGT1IoaiwxLG4pCgkJCQlkaW5pYy5hZGRFZGdlKGksaituLDEsZ2V0RGlzdChibGFja1tpXSx3aGl0ZVtqXSkpOwoJCUZPUihpLDEsbikgZGluaWMuYWRkRWRnZShpK24sc2luaywxLDApOwoJCWRpbmljLmNhbGMoKTsKCX0KCn0KCmJvb2wgTTI7CnNpZ25lZCBtYWluKCkKewogICAgZmFzdDsKICAgIGlmIChmb3BlbihuYW1lIi5pbnAiLCJyIikpCiAgICB7CiAgICAJZnJlb3BlbihuYW1lIi5pbnAiLCJyIixzdGRpbik7CiAgICAJZnJlb3BlbihuYW1lIi5vdXQiLCJ3IixzdGRvdXQpOwogICAgfQogICAgY2luID4+IG47CiAgICBGT1IoaSwxLG4pIGNpbiA+PiBibGFja1tpXTsKICAgIEZPUihpLDEsbikgY2luID4+IHdoaXRlW2ldOwogICAgLy8gaWYgKHN1YjE6OmFwcHJvdmVkKCkpIHJldHVybiBzdWIxOjpzb2x2ZSgpLCB0aW1lKCksIG1lbW9yeSgpLCAwOwogICAgc3ViMjo6c29sdmUoKTsKICAgIHRpbWUoKTsKICAgIG1lbW9yeSgpOwogICAgcmV0dXJuIDA7Cn0KLy8g4paI4paI4paRIOKWiOKWiCAg4paIICAgIOKWiOKWiCAg4paI4paI4paI4paEICAgIOKWiCAgIOKWhOKWiOKWiOKWiOKWiAovL+KWk+KWiOKWiOKWkSDilojilojilpIg4paI4paIICDilpPilojilojilpIg4paI4paIIOKWgOKWiCAgIOKWiCAg4paI4paI4paSIOKWgOKWiOKWkgovL+KWkuKWiOKWiOKWgOKWgOKWiOKWiOKWkeKWk+KWiOKWiCAg4paS4paI4paI4paR4paT4paI4paIICDiloDilogg4paI4paI4paS4paS4paI4paI4paR4paE4paE4paE4paRCi8v4paR4paT4paIIOKWkeKWiOKWiCDilpPilpPiloggIOKWkeKWiOKWiOKWkeKWk+KWiOKWiOKWkiAg4paQ4paM4paI4paI4paS4paR4paT4paIICDilojilojilpMKLy/ilpHilpPilojilpLilpHilojilojilpPilpLilpLilojilojilojilojilojilpMg4paS4paI4paI4paRICAg4paT4paI4paI4paR4paR4paS4paT4paI4paI4paI4paA4paSCi8vIOKWkiDilpHilpHilpLilpHilpLilpHilpLilpPilpIg4paSIOKWkiDilpEg4paS4paRICAg4paSIOKWkiAg4paR4paSICAg4paSCi8vIOKWkiDilpHilpLilpEg4paR4paR4paR4paS4paRIOKWkSDilpEg4paRIOKWkeKWkSAgIOKWkSDilpLilpEgIOKWkSAgIOKWkQovLyDilpEgIOKWkeKWkSDilpEg4paR4paR4paRIOKWkSDilpEgICAg4paRICAg4paRIOKWkSDilpEg4paRICAg4paRCi8vIOKWkSAg4paRICDilpEgICDilpEgICAgICAgICAgICAgIOKWkSAgICAgICDilpE=