program Task(input, output);
var
A: array[1..30] of integer;
n, i, j, k, k1, k2, sum, flag: integer;
begin
{Ввод данных}
for i := 1 to 30 do
read(A[i]);
readln(k1, k2);
{1) Сумма отрицательных элементов}
sum := 0;
for i := 1 to 30 do
if A[i] < 0 then
sum := sum + A[i];
{2) Замена первого отрицательного элемента нулем}
flag := 0;
for i := 1 to 30 do
if A[i] < 0 then
begin
A[i] := 0;
flag := 1;
break;
end;
if flag = 0 then
writeln('Отрицательных элементов нет');
{3) Удаление элементов с четной первой цифрой}
i := 1;
j := 1;
while i <= 30 do
begin
if (A[i] div 10) mod 2 <> 0 then
begin
A[j] := A[i];
inc(j);
end;
inc(i);
end;
n := j - 1;
{4) Вставка чисел k1 и k2}
{4.1) k1 после всех элементов, больших заданного}
i := n;
while i >= 1 do
begin
if A[i] > k1 then
begin
for j := n + 1 downto i + 1 do
A[j] := A[j - 1];
A[i + 1] := k1;
inc(n);
break;
end;
dec(i);
end;
{4.2) k2 перед всеми элементами, кратными 3}
i := 1;
while i <= n do
begin
if A[i] mod 3 = 0 then
begin
for j := n + 1 downto i + 1 do
A[j] := A[j - 1];
A[i] := k2;
inc(n);
inc(i);
end;
inc(i);
end;
{5) Перенос первых k элементов в конец}
k := 1;
while k <= n do
begin
for j := n + 1 downto k + 1 do
A[j] := A[j - 1];
A[k] := A[n];
inc(k);
dec(n);
end;
{Вывод результата}
for i := 1 to n do
write(A[i], ' ');
end.