Format
Cache more result to avoid branching