More debugging required. But here is a checkpoint