included more doc and structure