#include <bits/stdc++.h>
using namespace std;
#define faster ios_base::sync_with_stdio(false); cin.tie(NULL)
#define Bit(mask , i) ((mask >> i) & 1)
#define fi first
#define se second
#define _LOG2(nl) 31 - __builtin_clz(nl)
#define c_bit(nl) __builtin_popcount(nl)
#define li pair<long long , int>
#define db double
#define onBit(mask , i) (mask | (1 << i))
#define offBit(mask , i) (mask & (~(1 << i)))
const long long MOD = 1e9 + 7;
const long long INF = 1e14;
const int N = 1e5 + 7;
int n , m , lay[N] , C;
bool col[N] , cor[N] , cor_2[N];
struct gv{
int v , id;
bool vit;
};
struct edge{
int u , v;
};
vector<gv> a[N];
vector<edge> canh;
void inp(){
cin >> C;
cin >> n >> m;
for (int i = 1 ; i <= n ; ++i){
cin >> col[i];
}
for (int i = 1 ; i <= m ; ++i){
int u , v;
cin >> u >> v;
gv e;
e.v = v , e.id = (int)a[v].size() , e.vit = 0;
a[u].push_back(e);
e.v = u , e.id = (int)a[u].size() - 1;
a[v].push_back(e);
edge c;
c.u = u , c.v = v;
canh.push_back(c);
}
}
void bfs(){
for (int i = 1 ; i <= n ; ++i) cor[i] = 1;
queue<pair<int , int>> q;
for (int i = 1 ; i <= n ; ++i) if (!col[i]){
q.push({i , (int)a[i].size() - 1});
cor[i] = 0;
}
while (q.size()){
pair<int , int> val = q.front();
q.pop();
int u = val.fi , id = val.se;
for (int i = id ; i >= 0 ; --i){
if (a[u][i].vit) break;
a[u][i].vit = 1;
cor[a[u][i].v] = 0;
q.push({a[u][i].v , a[u][i].id});
}
}
}
void solve(){
bfs();
if (C == 1){
for (int i = 1 ; i <= n ; ++i) cout << cor[i];
return;
}
for (int i = 1 ; i <= n ; ++i){
cor_2[i] = 1;
if (cor[i]) lay[i] = i;
}
for (int i = 0 ; i < canh.size() ; ++i){
int u = canh[i].u , v = canh[i].v;
if (!col[u] || !col[v]) continue;
if (lay[u] == -1 || lay[v] == -1){
lay[u] = lay[v] = -1;
continue;
}
if (lay[u] && !lay[v]){
lay[v] = lay[u];
continue;
}
if (!lay[u] && lay[v]){
lay[u] = lay[v];
continue;
}
if (lay[u] != lay[v]){
lay[u] = lay[v] = -1;
}
}
for (int i = 1 ; i <= n ; ++i) if (col[i]){
if (lay[i] != -1) cor_2[lay[i]] = 0;
}
for (int i = 1 ; i <= n ; ++i) cout << cor_2[i];
}
int main(){
// freopen("xhmax.inp" , "r" , stdin);
// freopen("xhmax.out" , "w" , stdout);
faster;
inp();
solve();
return 0;
}
//Virus
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgZmFzdGVyIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKE5VTEwpCiNkZWZpbmUgQml0KG1hc2sgLCBpKSAoKG1hc2sgPj4gaSkgJiAxKQojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgc2Ugc2Vjb25kCiNkZWZpbmUgX0xPRzIobmwpIDMxIC0gX19idWlsdGluX2NseihubCkKI2RlZmluZSBjX2JpdChubCkgX19idWlsdGluX3BvcGNvdW50KG5sKQojZGVmaW5lIGxpIHBhaXI8bG9uZyBsb25nICwgaW50PgojZGVmaW5lIGRiIGRvdWJsZQojZGVmaW5lIG9uQml0KG1hc2sgLCBpKSAobWFzayB8ICgxIDw8IGkpKQojZGVmaW5lIG9mZkJpdChtYXNrICwgaSkgKG1hc2sgJiAofigxIDw8IGkpKSkKCmNvbnN0IGxvbmcgbG9uZyBNT0QgPSAxZTkgKyA3Owpjb25zdCBsb25nIGxvbmcgSU5GID0gMWUxNDsKY29uc3QgaW50IE4gPSAxZTUgKyA3OwppbnQgbiAsIG0gLCBsYXlbTl0gLCBDOwpib29sIGNvbFtOXSAsIGNvcltOXSAsIGNvcl8yW05dOwoKc3RydWN0IGd2ewogICAgaW50IHYgLCBpZDsKICAgIGJvb2wgdml0Owp9OwoKc3RydWN0IGVkZ2V7CiAgICBpbnQgdSAsIHY7Cn07Cgp2ZWN0b3I8Z3Y+IGFbTl07CnZlY3RvcjxlZGdlPiBjYW5oOwoKdm9pZCBpbnAoKXsKICAgIGNpbiA+PiBDOwogICAgY2luID4+IG4gPj4gbTsKICAgIGZvciAoaW50IGkgPSAxIDsgaSA8PSBuIDsgKytpKXsKICAgICAgIGNpbiA+PiBjb2xbaV07CiAgICB9CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gbSA7ICsraSl7CiAgICAgICAgaW50IHUgLCB2OwogICAgICAgIGNpbiA+PiB1ID4+IHY7CiAgICAgICAgZ3YgZTsKICAgICAgICBlLnYgPSB2ICwgZS5pZCA9IChpbnQpYVt2XS5zaXplKCkgLCBlLnZpdCA9IDA7CiAgICAgICAgYVt1XS5wdXNoX2JhY2soZSk7CiAgICAgICAgZS52ID0gdSAsIGUuaWQgPSAoaW50KWFbdV0uc2l6ZSgpIC0gMTsKICAgICAgICBhW3ZdLnB1c2hfYmFjayhlKTsKICAgICAgICBlZGdlIGM7CiAgICAgICAgYy51ID0gdSAsIGMudiA9IHY7CiAgICAgICAgY2FuaC5wdXNoX2JhY2soYyk7CiAgICB9Cn0KCnZvaWQgYmZzKCl7CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gbiA7ICsraSkgY29yW2ldID0gMTsKICAgIHF1ZXVlPHBhaXI8aW50ICwgaW50Pj4gcTsKICAgIGZvciAoaW50IGkgPSAxIDsgaSA8PSBuIDsgKytpKSBpZiAoIWNvbFtpXSl7CiAgICAgICAgcS5wdXNoKHtpICwgKGludClhW2ldLnNpemUoKSAtIDF9KTsKICAgICAgICBjb3JbaV0gPSAwOwogICAgfQogICAgd2hpbGUgKHEuc2l6ZSgpKXsKICAgICAgICBwYWlyPGludCAsIGludD4gdmFsID0gcS5mcm9udCgpOwogICAgICAgIHEucG9wKCk7CgogICAgICAgIGludCB1ID0gdmFsLmZpICwgaWQgPSB2YWwuc2U7CiAgICAgICAgZm9yIChpbnQgaSA9IGlkIDsgaSA+PSAwIDsgLS1pKXsKICAgICAgICAgICAgaWYgKGFbdV1baV0udml0KSBicmVhazsKICAgICAgICAgICAgYVt1XVtpXS52aXQgPSAxOwogICAgICAgICAgICBjb3JbYVt1XVtpXS52XSA9IDA7CiAgICAgICAgICAgIHEucHVzaCh7YVt1XVtpXS52ICwgYVt1XVtpXS5pZH0pOwogICAgICAgIH0KICAgIH0KfQoKdm9pZCBzb2x2ZSgpewogICAgYmZzKCk7CiAgICBpZiAoQyA9PSAxKXsKICAgICAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gbiA7ICsraSkgY291dCA8PCBjb3JbaV07CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgZm9yIChpbnQgaSA9IDEgOyBpIDw9IG4gOyArK2kpewogICAgICAgIGNvcl8yW2ldID0gMTsKICAgICAgICBpZiAoY29yW2ldKSAgbGF5W2ldID0gaTsKCiAgICB9CiAgICBmb3IgKGludCBpID0gMCA7IGkgPCBjYW5oLnNpemUoKSA7ICsraSl7CiAgICAgICAgaW50IHUgPSBjYW5oW2ldLnUgLCB2ID0gY2FuaFtpXS52OwogICAgICAgIGlmICghY29sW3VdIHx8ICFjb2xbdl0pIGNvbnRpbnVlOwogICAgICAgIGlmIChsYXlbdV0gPT0gLTEgfHwgbGF5W3ZdID09IC0xKXsKICAgICAgICAgICAgbGF5W3VdID0gbGF5W3ZdID0gLTE7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAobGF5W3VdICYmICFsYXlbdl0pewogICAgICAgICAgICBsYXlbdl0gPSBsYXlbdV07CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoIWxheVt1XSAmJiBsYXlbdl0pewogICAgICAgICAgICBsYXlbdV0gPSBsYXlbdl07CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAobGF5W3VdICE9IGxheVt2XSl7CiAgICAgICAgICAgIGxheVt1XSA9IGxheVt2XSA9IC0xOwogICAgICAgIH0KICAgIH0KICAgIGZvciAoaW50IGkgPSAxIDsgaSA8PSBuIDsgKytpKSBpZiAoY29sW2ldKXsKICAgICAgICBpZiAobGF5W2ldICE9IC0xKSBjb3JfMltsYXlbaV1dID0gMDsKICAgIH0KICAgIGZvciAoaW50IGkgPSAxIDsgaSA8PSBuIDsgKytpKSBjb3V0IDw8IGNvcl8yW2ldOwp9CgppbnQgbWFpbigpewovLwlmcmVvcGVuKCJ4aG1heC5pbnAiICwgInIiICwgc3RkaW4pOwovLwlmcmVvcGVuKCJ4aG1heC5vdXQiICwgInciICwgc3Rkb3V0KTsKICAgIGZhc3RlcjsKICAgIGlucCgpOwogICAgc29sdmUoKTsKICAgIHJldHVybiAwOwp9Ci8vVmlydXMK