restructuring; render working again