| | - Reduce the duplicate code by merging the flows and determining the flow type by looking at the provided options. - Options as a function type allows us to validate an individual an option in its scope and makes it easier to compose the built-in options with the third-party ones. Total comments: 18 | Unified diffs | Side-by-side diffs | Delta from patch set | Stats (+821 lines, -748 lines) | Patch |  | M | example_test.go | View | 1 2 3 4 5 | 4 chunks | +33 lines, -29 lines | 0 comments | Download |  | M | google/appengine.go | View | 1 2 3 | 2 chunks | +67 lines, -88 lines | 0 comments | Download |  | M | google/appengine_test.go | View | 1 | 6 chunks | +41 lines, -14 lines | 0 comments | Download |  | M | google/appenginevm.go | View | 1 2 3 | 2 chunks | +66 lines, -88 lines | 0 comments | Download |  | M | google/appenginevm_test.go | View | | 6 chunks | +41 lines, -14 lines | 0 comments | Download |  | M | google/example_test.go | View | 1 | 3 chunks | +58 lines, -44 lines | 0 comments | Download |  | M | google/google.go | View | 1 2 3 4 5 6 | 2 chunks | +83 lines, -100 lines | 0 comments | Download |  | A | internal/oauth2.go | View | | 1 chunk | +36 lines, -0 lines | 0 comments | Download |  | M | jws/jws.go | View | 1 2 3 4 5 6 | 2 chunks | +4 lines, -4 lines | 0 comments | Download |  | M | jwt.go | View | 1 2 3 4 5 6 | 3 chunks | +82 lines, -160 lines | 0 comments | Download |  | M | jwt_test.go | View | | 3 chunks | +37 lines, -17 lines | 0 comments | Download |  | M | oauth2.go | View | 1 2 3 4 5 6 7 | 5 chunks | +194 lines, -118 lines | 0 comments | Download |  | M | oauth2_test.go | View | | 7 chunks | +65 lines, -53 lines | 0 comments | Download |  | M | transport.go | View | 1 2 3 4 | 7 chunks | +6 lines, -17 lines | 0 comments | Download |  | M | transport_test.go | View | | 2 chunks | +8 lines, -2 lines | 0 comments | Download | Total messages: 14 |