refactored weather