diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,2 +1,2 @@
-import Distribution.Simple
+import           Distribution.Simple
 main = defaultMain
diff --git a/data/ko_holidays.yaml b/data/ko_holidays.yaml
--- a/data/ko_holidays.yaml
+++ b/data/ko_holidays.yaml
@@ -1,30 +1,18 @@
 - name: "New Year's Day"
   date: 1-1
 
-- name: "Korean New Year"
-  date: 1-1
-  lunar: true
-
 - name: "March 1 Movement Day"
   date: 3-1
 
 - name: "Children's Day"
   date: 5-5
 
-- name: "Buddha's Birthday"
-  date: 4-8
-  lunar: true
-
 - name: "Memorial Day"
   date: 6-6
 
 - name: "National Liberation Day"
   date: 8-15
 
-- name: "Chuseok"
-  date: 8-15
-  lunar: true
-
 - name: "National Foundation Day"
   date: 10-3
 
@@ -33,3 +21,192 @@
 
 - name: "Christmas"
   date: 12-25
+
+- name: "Korean New Year"
+  date: 2009-1-26
+
+- name: "Korean New Year"
+  date: 2010-2-14
+
+- name: "Korean New Year"
+  date: 2011-2-3
+
+- name: "Korean New Year"
+  date: 2012-1-23
+
+- name: "Korean New Year"
+  date: 2013-2-10
+
+- name: "Korean New Year"
+  date: 2014-1-31
+
+- name: "Korean New Year"
+  date: 2015-2-19
+
+- name: "Korean New Year"
+  date: 2016-2-8
+
+- name: "Korean New Year"
+  date: 2017-1-28
+
+- name: "Korean New Year"
+  date: 2018-2-16
+
+- name: "Korean New Year"
+  date: 2019-2-5
+
+- name: "Korean New Year"
+  date: 2020-1-25
+
+- name: "Korean New Year"
+  date: 2021-2-12
+
+- name: "Korean New Year"
+  date: 2022-2-1
+
+- name: "Korean New Year"
+  date: 2023-1-22
+
+- name: "Korean New Year"
+  date: 2024-2-10
+
+- name: "Korean New Year"
+  date: 2025-1-29
+
+- name: "Korean New Year"
+  date: 2026-2-17
+
+- name: "Korean New Year"
+  date: 2027-2-7
+
+- name: "Korean New Year"
+  date: 2028-1-27
+
+- name: "Korean New Year"
+  date: 2029-2-13
+
+- name: "Buddha's Birthday"
+  date: 2009-5-2
+
+- name: "Buddha's Birthday"
+  date: 2010-5-21
+
+- name: "Buddha's Birthday"
+  date: 2011-5-10
+
+- name: "Buddha's Birthday"
+  date: 2012-5-28
+
+- name: "Buddha's Birthday"
+  date: 2013-5-17
+
+- name: "Buddha's Birthday"
+  date: 2014-5-6
+
+- name: "Buddha's Birthday"
+  date: 2015-5-25
+
+- name: "Buddha's Birthday"
+  date: 2016-5-14
+
+- name: "Buddha's Birthday"
+  date: 2017-5-3
+
+- name: "Buddha's Birthday"
+  date: 2018-5-22
+
+- name: "Buddha's Birthday"
+  date: 2019-5-12
+
+- name: "Buddha's Birthday"
+  date: 2020-4-30
+
+- name: "Buddha's Birthday"
+  date: 2021-5-19
+
+- name: "Buddha's Birthday"
+  date: 2022-5-8
+
+- name: "Buddha's Birthday"
+  date: 2023-5-27
+
+- name: "Buddha's Birthday"
+  date: 2024-5-15
+
+- name: "Buddha's Birthday"
+  date: 2025-5-5
+
+- name: "Buddha's Birthday"
+  date: 2026-5-24
+
+- name: "Buddha's Birthday"
+  date: 2027-5-13
+
+- name: "Buddha's Birthday"
+  date: 2028-5-2
+
+- name: "Buddha's Birthday"
+  date: 2029-5-20
+
+- name: "Chuseok"
+  date: 2009-10-3
+
+- name: "Chuseok"
+  date: 2010-9-22
+
+- name: "Chuseok"
+  date: 2011-9-12
+
+- name: "Chuseok"
+  date: 2012-9-30
+
+- name: "Chuseok"
+  date: 2013-9-19
+
+- name: "Chuseok"
+  date: 2014-9-8
+
+- name: "Chuseok"
+  date: 2015-9-27
+
+- name: "Chuseok"
+  date: 2016-9-15
+
+- name: "Chuseok"
+  date: 2017-10-4
+
+- name: "Chuseok"
+  date: 2018-9-24
+
+- name: "Chuseok"
+  date: 2019-9-13
+
+- name: "Chuseok"
+  date: 2020-10-1
+
+- name: "Chuseok"
+  date: 2021-9-21
+
+- name: "Chuseok"
+  date: 2022-9-10
+
+- name: "Chuseok"
+  date: 2023-9-29
+
+- name: "Chuseok"
+  date: 2024-9-17
+
+- name: "Chuseok"
+  date: 2025-10-6
+
+- name: "Chuseok"
+  date: 2026-9-25
+
+- name: "Chuseok"
+  date: 2027-9-15
+
+- name: "Chuseok"
+  date: 2028-10-3
+
+- name: "Chuseok"
+  date: 2029-9-22
diff --git a/korea-holidays.cabal b/korea-holidays.cabal
--- a/korea-holidays.cabal
+++ b/korea-holidays.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: f801a997f4d1d6b8a9921d6b1d40602714658b584df43c2d9d7b078a87264249
+-- hash: f38259eef1c2f67a41fc49b224e7408e8596a6f8568a509f9fc893bc7b39fdcb
 
 name:           korea-holidays
-version:        0.1.0.2
+version:        0.1.0.3
 synopsis:       Korea Holidays
 description:    Please see the README on GitHub at <https://github.com/kkweon/korea-holidays#readme>
 category:       Time
diff --git a/src/Data/Holiday/Korea.hs b/src/Data/Holiday/Korea.hs
--- a/src/Data/Holiday/Korea.hs
+++ b/src/Data/Holiday/Korea.hs
@@ -1,10 +1,8 @@
-{-# LANGUAGE OverloadedStrings #-}
-
 {-|
 Module      : Data.Holiday.Korea
 Description : The module contains Korea Holidays
 Copyright   : (c) Kyung Mo Kweon
-License     : BSD
+License     : MIT
 Maintainer  : kkweon@gmail.com
 Stability   : experimental
 Portability : POSIX
@@ -13,22 +11,29 @@
 -}
 module Data.Holiday.Korea where
 
-import Data.Aeson.Types (FromJSON, (.:), parseJSON, withObject)
-import Data.Holiday.Model (Date(..), Holiday(..))
-import Data.Maybe (fromJust, listToMaybe)
-import Util.Config (holidays)
+import           Data.Aeson.Types               ( FromJSON
+                                                , (.:)
+                                                , parseJSON
+                                                , withObject
+                                                )
+import           Data.Holiday.Model             ( Date(..)
+                                                , Holiday(..)
+                                                )
+import           Data.Maybe                     ( fromJust
+                                                , listToMaybe
+                                                )
+import           Util.Config                    ( holidays )
 
 -- | 'getHoliday' returns Nothing if there is no Korean holiday.
-getHoliday ::
-     Integer -- ^ Year
+getHoliday
+  :: Integer -- ^ Year
   -> Int -- ^ Month
   -> Int -- ^ Day
   -> Maybe Holiday
 getHoliday year month day = listToMaybe $ filter match holidays
-  where
-    match :: Holiday -> Bool
-    match Holiday {date = YMD (y, m, d)}
-      | y == year && m == month && d == day = True
-    match Holiday {date = MD (m, d)}
-      | m == month && d == day = True
-    match _ = False
+ where
+  match :: Holiday -> Bool
+  match Holiday { date = YMD (y, m, d) } | y == year && m == month && d == day =
+    True
+  match Holiday { date = MD (m, d) } | m == month && d == day = True
+  match _ = False
diff --git a/src/Data/Holiday/Model.hs b/src/Data/Holiday/Model.hs
--- a/src/Data/Holiday/Model.hs
+++ b/src/Data/Holiday/Model.hs
@@ -16,15 +16,22 @@
 module Data.Holiday.Model
   ( Date(..)
   , Holiday(..)
-  ) where
+  )
+where
 
-import Control.Monad.Extra (liftMaybe)
-import Data.Aeson.Types (FromJSON, (.:), (.:?), parseJSON, withObject, Parser)
-import Data.List.Split (splitOn)
-import Data.Maybe (fromMaybe)
-import GHC.Generics (Generic)
-import Text.Read (readMaybe)
-import Language.Haskell.TH.Syntax (Lift)
+import           Control.Monad.Extra            ( liftMaybe )
+import           Data.Aeson.Types               ( FromJSON
+                                                , Parser
+                                                , (.:)
+                                                , (.:?)
+                                                , parseJSON
+                                                , withObject
+                                                )
+import           Data.List.Split                ( splitOn )
+import           Data.Maybe                     ( fromMaybe )
+import           GHC.Generics                   ( Generic )
+import           Language.Haskell.TH.Syntax     ( Lift )
+import           Text.Read                      ( readMaybe )
 
 data Date
   = YMD (Integer, Int, Int) -- ^ (Year, Month, Day) Some Holiday has a different date every year
@@ -35,57 +42,43 @@
 data Holiday = Holiday
   { date :: Date -- ^ Date of the holiday
   , name :: String -- ^ Name of the holiday
-  , lunar :: Maybe Bool -- ^ Date maybe Lunar Date
   } deriving (Show, Eq, Generic, Lift)
 
 instance FromJSON Holiday where
-    parseJSON =
-        withObject "Holiday" $ \v -> Holiday
-            <$> parseDate v
-            <*> v .: "name"
-            <*> v .:? "lunar"
-        where
-            parseDate o = do
-                s <- o .: "date"
-                liftMaybe $ parseKoreanDate s
-
-
+  parseJSON =
+    withObject "Holiday" $ \v -> Holiday <$> parseDate v <*> v .: "name"
+    where
+      parseDate o = do
+        s <- o .: "date"
+        liftMaybe $ parseKoreanDate s
 
 parseKoreanDate :: String -> Maybe Date
-parseKoreanDate xs =
-  case splitOn "-" xs of
-    [y, m, d]
-      | verifyYmd y m d -> Just $ YMD (read y, read m, read d)
-    [m, d]
-      | verifyMd m d -> Just $ MD (read m, read d)
-    _ -> Nothing
+parseKoreanDate xs = case splitOn "-" xs of
+  [y, m, d] | verifyYmd y m d -> Just $ YMD (read y, read m, read d)
+  [m, d] | verifyMd m d       -> Just $ MD (read m, read d)
+  _                           -> Nothing
 
 verifyYmd :: String -> String -> String -> Bool
-verifyYmd y m d =
-  fromMaybe False $ do
-    year <- readMaybe y :: Maybe Integer
-    month <- readMaybe m :: Maybe Int
-    day <- readMaybe d :: Maybe Int
-    return $ isValidYear year && isValidMonth month && isValidDay day
+verifyYmd y m d = fromMaybe False $ do
+  year  <- readMaybe y :: Maybe Integer
+  month <- readMaybe m :: Maybe Int
+  day   <- readMaybe d :: Maybe Int
+  return $ isValidYear year && isValidMonth month && isValidDay day
 
 verifyMd :: String -> String -> Bool
-verifyMd m d =
-  fromMaybe False $ do
-    month <- readMaybe m :: Maybe Int
-    day <- readMaybe d :: Maybe Int
-    return $ isValidMonth month && isValidDay day
+verifyMd m d = fromMaybe False $ do
+  month <- readMaybe m :: Maybe Int
+  day   <- readMaybe d :: Maybe Int
+  return $ isValidMonth month && isValidDay day
 
 isValidYear :: Integer -> Bool
-isValidYear y
-  | 1900 <= y && y <= 3000 = True
-  | otherwise = False
+isValidYear y | 1900 <= y && y <= 3000 = True
+              | otherwise              = False
 
 isValidMonth :: Int -> Bool
-isValidMonth m
-  | 1 <= m && m <= 12 = True
-  | otherwise = False
+isValidMonth m | 1 <= m && m <= 12 = True
+               | otherwise         = False
 
 isValidDay :: Int -> Bool
-isValidDay d
-  | 1 <= d && d <= 31 = True
-  | otherwise = False
+isValidDay d | 1 <= d && d <= 31 = True
+             | otherwise         = False
diff --git a/src/Util/Config.hs b/src/Util/Config.hs
--- a/src/Util/Config.hs
+++ b/src/Util/Config.hs
@@ -2,8 +2,8 @@
 
 module Util.Config where
 
-import Data.Yaml.TH (decodeFile)
-import qualified Data.Holiday.Model as K
+import           Data.Yaml.TH                   ( decodeFile )
+import qualified Data.Holiday.Model            as K
 
 holidays :: [K.Holiday]
 holidays = $$(decodeFile "data/ko_holidays.yaml")
diff --git a/test/Data/Holiday/KoreaSpec.hs b/test/Data/Holiday/KoreaSpec.hs
--- a/test/Data/Holiday/KoreaSpec.hs
+++ b/test/Data/Holiday/KoreaSpec.hs
@@ -1,20 +1,31 @@
 module Data.Holiday.KoreaSpec where
 
-import qualified Data.Holiday.Korea as Korea
-import qualified Data.Holiday.Model as KM
-import Data.Holiday.Model (date, lunar, name)
-import Test.Hspec (Spec, describe, it, shouldBe)
+import qualified Data.Holiday.Korea            as Korea
+import qualified Data.Holiday.Model            as KM
 
+import           Data.Holiday.Model             ( date
+                                                , name
+                                                )
+import           Test.Hspec                     ( Spec
+                                                , describe
+                                                , it
+                                                , shouldBe
+                                                )
+
 spec :: Spec
-spec =
-  describe "Data.Holiday.Korea" $ do
-    it "returns New Year's Day when 2000/1/1" $
-      Korea.getHoliday 2000 1 1 `shouldBe`
-      Just
-        KM.Holiday
-          {date = KM.MD (1, 1), name = "New Year's Day", lunar = Nothing}
-    it "returns March 1 Movement Day when 2019/3/1" $
-      Korea.getHoliday 2019 3 1 `shouldBe`
-      Just
-        KM.Holiday
-          {date = KM.MD (3, 1), name = "March 1 Movement Day", lunar = Nothing}
+spec = describe "Data.Holiday.Korea" $ do
+  it "returns New Year's Day when 2000/1/1"
+    $          Korea.getHoliday 2000 1 1
+    `shouldBe` Just KM.Holiday {date = KM.MD (1, 1), name = "New Year's Day"}
+  it "returns March 1 Movement Day when 2019/3/1"
+    $          Korea.getHoliday 2019 3 1
+    `shouldBe` Just KM.Holiday
+                 { date = KM.MD (3, 1)
+                 , name = "March 1 Movement Day"
+                 }
+  it "returns Chuseok when 2029/09/22"
+    $          Korea.getHoliday 2029 9 22
+    `shouldBe` Just KM.Holiday {date = KM.YMD (2029, 9, 22), name = "Chuseok"}
+  it "returns Nothing when it's not a Holiday 2019/07/04"
+    $          Korea.getHoliday 2019 7 4
+    `shouldBe` Nothing
