Overall the Code looks good with proper logic but need more fine tuning in the logical part