def update(self, report: str = None) -> bool:
if report is not None:<EOL><INDENT>self.raw = report<EOL><DEDENT>else:<EOL><INDENT>raw = self.service.fetch(self.station)<EOL>if raw == self.raw:<EOL><INDENT>return False<EOL><DEDENT>self.raw = raw<EOL><DEDENT>self.data, self.units = taf.parse(self.station, self.raw)  <EOL>self.translations = translate.taf(self.data, self.units)  <EOL>self.last_updated = datetime.utcnow()<EOL>return True<EOL>
Updates raw, data, and translations by fetching and parsing the TAF report

Returns True is a new report is available, else False