Generated code from  26fe0fe7f38122052883144fd35264fb02180b18