Revert "working but slow"

This reverts commit f72743a8c0d8d2710343756fc93c9734fa66f94e.