I sholud try this, it would be nice as an exercise.