cleaning up ugly looking API