refactored choose corner if available