bcdcacdbbbcbbadbbbaabdadcaddcddabbdacddacaaccadcaabdcdddddadacbdcdcbccabbbabdddbacaddcaacaadacbacbdd