awk help

Hello,

I have a file format like this

username: user1
pass_expir: 3
username: user2
pass_expir: 4
username: user3
pass_expir: 0

I 'd like to use awk to print out username and pass_expir > 3

I used this command, however it returned un-neccessary username lines.

awk -F: ' $1 ~/username/ { print $0 ; next } ($1 ~/pass_expir ) && ( $2 > 3 ) { print $0 } ' file

MY output is like this

username: user1
username: user2
pass_expir: 4
username: user3

Any suggestions ?

I got the answer to this question

awk -F: '$1~/username/ { x=$0 ; next ; } ($1~/pass_expir/) && ($2 > 3 ) { printf x"\n" $0"\n" ;}' file