bug 1003: rework for review