adding some extra comments, warning logs, test, part 1