this looks weird, why is this needed?