better checks though still not ideal