Considerable fix up to annotations and format