{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE BangPatterns #-} import Control.Applicative import Control.Monad import Control.Arrow import Data.List import Data.Maybe import Data.Char import Text.Printf readInt = ( readLn :: IO Int ) getInts = map ( read :: String -> Int ) . words <$> getLine which a b f = if f then a else b mp [ a, b ] = ( a, b ) main = do d <- readInt print $ maximum $ ( 0 : ) $ do h <- [ 1 .. d `div` 2 - 1 ] guard $ d `div` ( h * 2 ) `mod` 2 == 0 let w = ( d - ( h * 2 ) ) `div` 2 return $ h * w