It's still terrible, there is not exception handling, but I did add a confidence check for the postcodes.