Ошибка "syntax error, ";" expected but "ELSE" found" в паскале

Здравствуйте. Вылезла ошибка : “Syntax error, “;” expected but “ELSE” found”. Прочитал, что нужно убрать “;” перед “else”. Я убрал, но ничего не заработало…

var a: array [1..10] of integer;
i:integer;
b:integer;
begin
 for i:=1 to 10 do
  a[i]:= random(62)-7;
 writeln (a[1]);
 if a[1]<0
 then
  begin
  for b:=2 to 10 do
   begin
   if a[b]>0 then 
    a[b]:= a[b]*(-1);
    writeln (a[b]);
   end
 else 
  writeln (a[b]);
  end
 if a[1]>0 
 then
  begin
  for b:=2 to 10 do
   begin
   if a[b]<0 then 
    a[b]:= a[b]*(-1);
    writeln (a[b]);
   end
  else 
   writeln (a[b]);
  end;
end.

И не заработает. С операторными скобками путаница. Если что это begin и end. Нормально отформатируй и все сразу вылезет

спасибо, помогло)