Take a look at chris128's code bank submission.