There are two types of great buzzer-beaters. The first kind is the end result of a well-executed inbounds play, one that involves screens and misdirection and ends with a shooter getting open just long enough to rise up for a clean shot at the rim. (See: LeBron James saving Cleveland's season in Game 2 of the Eastern Conference Finals). Then there are the buzzer-beaters that are the result of some ballsy, everyone-clear-out-so-I-can-win-this-game-on-my-own hero ball. (See: Gilbert Arenas when he was still Gilbert Arenas). Most players will go their entire career without ever sinking either one of those kinds of shots, but last night Joe Johnson managed to hit both versions of the perfect buzzer-beater in one game.

With his team down three to the Milwaukee Bucks and only 6.1 seconds remaining in regulation, Johnson inbounds the ball to Deron Williams, curls through the lane past a screen, catches the ball at the top of the three-point line, and unleashes a gorgeous, game-tying shot.

Fast forward to the end of the overtime period. With score tied at 111 and 5.2 second remaining, Johnson receives the inbounds pass about six feet beyond the three-point line, takes two hard dribbles to his right, creates just enough space to get a shot up with a quick crossover to the left, and sinks the game-winner as time expires.

Joe Johnson may not always be worth the $90 million that the Nets will have to pay him, but it sure felt like he was last night.