some piggybacking logic. what a mess.
x
x