まだ一部分しかやっていませんが、良さそうです。