{
TASK:n23
LANG:PASCAL
}
{
1 -> 2		2
2 -> 32 (3)		4
3 -> 32		8
4 -> 32		16
5 -> 32		32
6 -> 23232 (232)		64
7 -> 223232 (2)		128
8 -> 223232		256
9 -> 223232		512
10 -> 223232		1024
11 -> 223232		2048
12 -> 32223232 (32)		4096
13 -> 3323232223232 (33232)	8192	
14 -> 3323232223232		16384
15 -> 3323232223232		32768
16 -> 3323323232223232 (332)		65536
17 -> 33323323232223232 (3)		131072
18 -> 333323323232223232 (3)		262144
19 -> 3333323323232223232 (3)		524288
20 -> 33333323323232223232 (3)		1048576
21 -> 233333323323232223232 (2)		2097152
22 -> 3233333323323232223232 (3)		4194304
23 -> 3233333323323232223232		8388608
24 -> 23233333323323232223232 (2)		16777216
25 -> 223233333323323232223232 (2)		33554432
26 -> 223233333323323232223232		67108864
27 -> 332223233333323323232223232 (332)		134217728
28 -> 3332223233333323323232223232 (3)		268435456
29 -> 33332223233333323323232223232 (3)		536870912
30 -> 333332223233333323323232223232 (3)		1073741824
31 -> 3333332223233333323323232223232 (3)		2147483648
32 -> 33333332223233333323323232223232 (3)		4294967296

33 -> 33333332223233333323323232223232 (332)		8589934592
}
{$R-}
const
 a:array [1..32] of string=(
 '2','32','32','32','32','23232',
 '223232','223232','223232','223232','223232','32223232',
 '3323232223232','3323232223232','3323232223232','3323323232223232','33323323232223232',
 '333323323232223232','3333323323232223232','33333323323232223232','233333323323232223232',
 '3233333323323232223232','3233333323323232223232','23233333323323232223232','223233333323323232223232',
 '223233333323323232223232','332223233333323323232223232','3332223233333323323232223232','33332223233333323323232223232',
 '333332223233333323323232223232','3333332223233333323323232223232','33333332223233333323323232223232');
var
 n:integer;
begin
  readln (n);
  if n<=26 then writeln(a[n])
  else writeln ('NO');
end.