dfcccbbabedabcbddedeacddbeebfdccfbafdbabcaabacddbbaebdcbccbcddceddcdefdaaaeffddbffcbdbc