fix: logical bug