Shouldn't both line 49 and 51(the whole if/elsif condition) go away since the ```self.path=``` and ```self.name=``` above sets these values and hides that conditional logic?