continue entering tuples
===

data BookInfo = Book Int String [String]
   deriving(Show)

I want the user **enter** a list of tuple to search on it for a key like this can I say it like this

      findbook :: [BookInfo] -> Int -> BookInfo
      findbook vs key = (booker (vs!!(bookFinding vs  key 0 (length vs))) key)

      getBookInfo = do
        putStrLn "Enter book id :"
        k <- read
        putStrLn "Enter book name : "
        r <- getLine
        putStrLn "Enter book subject :"
       m <- getLine 
       let Book book = enter k r [m] 
       return  book
     main = do
       putStr "Enter you first info is :"
       v <- getBookInfo
       let Book vs = v:[]
       c <- getLine
       if c == "N"
       then     
         putStr "You  done"   
       else
        Book booke = getBookInfo
        vs = booke:vs
      putStr "Do you want to search ? :" 
         m <- getch
          if m == 'y'
            then  
             putStr " Enter your key :"  
             s <- readNum  
              
     let Book w =  findBook vs s
     putStrLn" The result is: " ++ show(w)
 

But .. it gives me an error `The last statement in do must be m <- getch` but where am I wrong ?