add base code for this interesting project