reconstruct interface