transplant
introduce graph
use sqlite as db
minor changes