Added comments and assume uncle is not NULL