uses strutils;
var
i: int16;
function ivxlcdm(s: string): boolean;
var
a: array['C'..'X'] of int8;
c: char;
begin
for c in 'IVXLCDM' do
a[c] := 0;
for c in s do
inc(a[c]);
for c in 'IVXLCDM' do
if a[c] <> 1 then
exit(false);
ivxlcdm := true
end;
begin
for i := 1000 to 2000 do
if ivxlcdm(inttoroman(i)) then
writeln(i)
end.
dXNlcyBzdHJ1dGlsczsKCnZhcgogIGk6IGludDE2OwoKZnVuY3Rpb24gaXZ4bGNkbShzOiBzdHJpbmcpOiBib29sZWFuOwogIHZhcgogICAgYTogYXJyYXlbJ0MnLi4nWCddIG9mIGludDg7CiAgICBjOiBjaGFyOwoKICBiZWdpbgogICAgZm9yIGMgaW4gJ0lWWExDRE0nIGRvCiAgICAgIGFbY10gOj0gMDsKICAgIGZvciBjIGluIHMgZG8KICAgICAgaW5jKGFbY10pOwogICAgZm9yIGMgaW4gJ0lWWExDRE0nIGRvCiAgICAgIGlmIGFbY10gPD4gMSB0aGVuCiAgICAgICAgZXhpdChmYWxzZSk7CiAgICBpdnhsY2RtIDo9IHRydWUKICBlbmQ7CgpiZWdpbgogIGZvciBpIDo9IDEwMDAgdG8gMjAwMCBkbwogICAgaWYgaXZ4bGNkbShpbnR0b3JvbWFuKGkpKSB0aGVuCiAgICAgIHdyaXRlbG4oaSkKZW5kLg==