better implementation of boulder fragment