a bit cleaner and less strict incase we want different formats in the future