cleanup
rough draft API