Forked from https://chnroutes.googlecode.com/