major modifications
error