I need to do some work on figuring this out, because it got really confusing but I think I'm getting there.