Problem:
うるう年

西暦 a 年から b 年までの間にあるすべてのうるう年を出力するプログラムを作成してください。

うるう年の条件は、次のとおりとします。ただし、0 < a ≤ b < 3,000 とします。与えられた期間にうるう年がない場合には "NA"と出力してください。

西暦年が 4 で割り切れる年であること。

ただし、100 で割り切れる年はうるう年としない。

しかし、400 で割り切れる年はうるう年である。

Input

複数のデータセットが与えられます。各データセットの形式は以下のとおりです：

a b

a, b がともに 0 のとき入力の終了とします。データセットの数は 50 を超えません。

Output

データセットごとに、西暦または NA を出力してください。

データセットの間に１つの空行を入れてください。

Sample Input

2001 2010
2005 2005
2001 2010
0 0

Output for the Sample Input

2004
2008

NA

2004
2008

Solution in Ruby (judge verdict: Accepted)

STDOUT.sync = true
def isLeapYear?(y)
  if y%4==0&&y%100!=0
    true
  elsif y%400==0
    true
  else
    false
  end
end
c=0
while line = gets do
  a,b = line.split.map(&:to_i)
  if (a|b)==0
    break
  end
  if c!=0 then puts end 
  flag = true
  a.upto(b){|y|
    if isLeapYear?(y)
      puts y
      flag = false
    end
  }
  if flag
    puts "NA"
  end
  c+=1
end