a better solution for #89