def METHOD_NAME(self, poi):
    logging.debug('building stands')
    try:
        all_stands = self.breaker.call(self._get_all_stands)
        ref = poi.get('properties', {}).get('ref')
        if not ref:
            return Stands(0, 0, StandsStatus.unavailable)
        stands = all_stands.get(ref.lstrip('0'))
        if stands:
            if stands.status != 'open':
                stands.available_bikes = 0
                stands.available_places = 0
                stands.total_stands = 0
            return stands
    except pybreaker.CircuitBreakerError as e:
        logging.getLogger(__name__).error('atos service dead (error: {})'.format(e))
        raise BssProxyError('circuit breaker open')
    except requests.Timeout as t:
        logging.getLogger(__name__).error('atos service timeout (error: {})'.format(t))
        raise BssProxyError('timeout')
    except Exception as e:
        logging.getLogger(__name__).exception('cykleo error : {}'.format(str(e)))
        raise BssProxyError(str(e))
    return Stands(0, 0, StandsStatus.unavailable)