Problem:
Score : 100 points

Problem Statement

AtCoDeer has three cards, one red, one green and one blue.

An integer between 1 and 9 (inclusive) is written on each card: r on the red card, g on the green card and b on the blue card.

We will arrange the cards in the order red, green and blue from left to right, and read them as a three-digit integer.

Is this integer a multiple of 4?

Constraints

1 ≤ r, g, b ≤ 9

Input

Input is given from Standard Input in the following format:

r g b

Output

If the three-digit integer is a multiple of 4, print YES (case-sensitive); otherwise, print NO.

Sample Input 1

4 3 2

Sample Output 1

YES

432 is a multiple of 4, and thus YES should be printed.

Sample Input 2

2 3 4

Sample Output 2

NO

234 is not a multiple of 4, and thus NO should be printed.

Solution in Haskell (GHC 7.10.3) (judge verdict: Runtime Error)

import Data.List
 
main = do
  getLine
  xs <- map read . words <$> getLine
  putStr . show . f . map g $ xs
  putStr " "
  putStr . show . h . map g $ xs
 
g x
  | x < 400 = 1
  | x < 800 = 2
  | x < 1200 = 3
  | x < 1600 = 4
  | x < 2000 = 5
  | x < 2400 = 6
  | x < 2800 = 7
  | x < 3200 = 8
  | otherwise = 9
 
f [x] = 1
f xs = length . nub . filter (<9) $ xs
h [x] = 1
h xs = (f xs) + ((length . filter (==9)) xs)