Ticks all the boxes. Highly recommend