The action statement prints each line numbered. The printf function emulates the standard C printf and works similarly to the print command described above. The pattern to match, however, works as follows: "NR" is the number of records, typically lines of input, AWK has so far read, i.e. the current line number, starting at 1 for the first line of input. "%" is the modulo operator. "NR % 4 == 1" is true for the 1st, 5th, 9th, etc., lines of input. Likewise, "NR % 4 == 3" is true for the 3rd, 7th, 11th, etc., lines of input. The range pattern is false until the first part matches, on line 1, and then remains true up to and including when the second part matches, on line 3. It then stays false until the first part matches again on line 5.