it would simplify the function if reconstruct could work with erasures instead of requiring a different type