implement, test, documentation