table body renderer (not stable)