"Cf CLI 명령어"의 두 판 사이의 차이

 
(사용자 2명의 중간 판 46개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{소문자}}
;cf 명령어
;cf 명령어
;cf CLI 명령어
;cf CLI 명령어


==주요 명령어==
==목록==
{| class='wikitable'
{| class='wikitable'
! 명령어 !! alias!! 설명
! 명령어 !! alias!! 설명
|-
|-
| [[cf api]] || ||
!colspan='3'| 기본
|-
|-
| [[cf login]] ★★ || ||
| [[cf help]] || · || 도움말 보기
|-
|-
| [[cf orgs]] || || 조직 목록 조회
| [[cf version]] || · || CF CLI의 버전 조회
|-
|-
| [[cf org]] || || 조직 정보 조회
| [[cf login]] ★★ || · || 로그인
|-
|-
| [[cf org-users]] || ||
| [[cf logout]] || · || 로그아웃
|-
|-
| [[cf apps]] ★★★ || || 앱 목록 조회
| [[cf passwd]] || · || 패스워드 변경
|-
|-
| [[cf app]] || || 앱 정보 조회
| [[cf target]] || · || 대상 조직·스페이스 조회·설정
|-
|-
| [[cf push]] ★★★ || ||
| [[cf api]] || · || 대상 API URL 조회·설정
|-
|-
| [[cf marketplace]] || ||
| [[cf auth]] || · || 비대화형 사용자 인증
|-
|-
| [[cf services]] ★★ ||  || 서비스 목록 조회
!colspan='3'|
|-
|-
| [[cf service]] || || 서비스 정보 조회
| [[cf apps]] ★★★ || · || 대상 스페이스內 앱 목록 조회
|-
|-
| [[cf create-service]] || [[cf cs]] ||
| [[cf app]] || · || 앱 정보/상태 조회
|-
|-
| [[cf delete-service]] || [[cf ds]] ||
| [[cf push]] ★★★ || · || 새로운 앱을 푸시하거나 기존 앱에 변경내역 반영
|-
|-
| [[cf update-service]] || · ||
| [[cf scale]] || · || 앱 인스턴스 개수, 디스크 용량 제한, 메모리 제한 변경·조회
|-
| [[cf delete]] || · || 앱 삭제
|-
| [[cf rename]] || · || 앱 이름 변경
|-
| [[cf start]] || · || 앱 시작
|-
| [[cf stop]] || · || 앱 정지
|-
| [[cf restart]] || · || 앱 재시작
|-
| [[cf restage]] ★ || · || 앱 리스테이지
|-
| [[cf restart-app-instance]] ★ || · || 앱인스턴스 재시작
|-
| [[cf events]] || · || 최근 앱 이벤트 조회
|-
| [[cf files]] || · || 파일 목록 조회 (DEA 방식만 가능)
|-
| [[cf logs]] ★★ || · || 최근 앱 로그 실시간 조회(tail)
|-
| [[cf env]] || · || 앱의 환경변수 목록 조회
|-
| [[cf set-env]] || · || 앱에 환경변수 설정
|-
| [[cf unset-env]] || · || 환경변수 제거
|-
| [[cf stacks]] || · || 스택<ref>앱을 구동하기 위해 사전구성된 파일시스템</ref> 목록 조회
|-
| [[cf stack]] || · || 스택 정보 조회
|-
| [[cf copy-source]] || · || 한 앱에서 다른 앱으로 앱 소스코드를 복제함. override된 것이 아니라면 앱 재시작됨
|-
| [[cf create-app-manifest]] || · || 성공적으로 푸시된 앱의 매니페스트를 파일로 생성
|-
| [[cf get-health-check]] || · || 앱의 health_check_type 값 얻기
|-
| [[cf set-health-check]] || · || health_check_type 프래그 설정 (port 또는 none)
|-
| [[cf enable-ssh]] || · || 앱에 대한 ssh 활성화
|-
| [[cf disable-ssh]] || · || 앱에 대한 ssh 비활성화
|-
| [[cf ssh-enabled]] || · || 앱 컨테이너 인스턴트에 대한 ssh 접속 활성화 여부 확인
|-
| [[cf ssh]] || · || 앱 컨테이너 인스턴트에 대한 ssh 접속<ref>SSH는 Diego만 가능. https://docs.cloudfoundry.org/running/config-ssh.html</ref>
|-
!colspan='3'| 서비스
|-
| [[cf marketplace]] || · ||
|-
| [[cf services]] ★★ || · || 서비스 목록 조회
|-
| [[cf service]] || · || 서비스 정보 조회
|-
| [[cf create-service]] || [[cf cs]] || 서비스 인스턴스 생성
|-
| [[cf update-service]] || · || 서비스 인스턴스 갱신
|-
| [[cf delete-service]] || [[cf ds]] || 서비스 인스턴스 삭제
|-
| [[cf rename-service]] || · || 서비스 인스턴스 이름 변경
|-
| [[cf service-keys]] || · || 서비스 키<ref>서비스 인스턴스에 대한 키</ref> 목록 조회
|-
| [[cf service-key]] || · || 서비스 키 정보 조회
|-
| [[cf create-service-key]] || · || 서비스 키 생성
|-
| [[cf delete-service-key]] || · || 서비스 키 삭제
|-
| [[cf bind-service]] ★★ || [[cf bs]] || 서비스에 앱을 연결
|-
| [[cf unbind-service]] || [[cf us]] || 서비스에서 앱을 분리
|-
| [[cf bind-route-service]] || · || 서비스 인스턴스를 HTTP 라우트에 연결
|-
| [[cf unbind-route-service]] || · || 서비스 인스턴스를 HTTP 라우트에서 분리
|-
|-
| [[cf create-user-provided-service]] ★ || [[cf cups]] || 사용자정의서비스 등록
| [[cf create-user-provided-service]] ★ || [[cf cups]] || 사용자정의서비스 등록
38번째 줄: 117번째 줄:
| [[cf update-user-provided-service]] || [[cf uups]] || 사용자정의서비스 갱신
| [[cf update-user-provided-service]] || [[cf uups]] || 사용자정의서비스 갱신
|-
|-
| [[cf bind-service]] ★★ || [[cf bs]] || 서비스에 앱을 연결
!colspan='3'| 조직
|-
| [[cf orgs]] || · || 조직 목록 조회
|-
| [[cf org]] || · || 조직 정보 조회
|-
| [[cf create-org]] || · || 조직 생성
|-
| [[cf delete-org]] || · || 조직 삭제
|-
| [[cf rename-org]] || · || 조직 이름 변경
|-
|-
| [[cf unbind-service]] || [[cf us]] || 서비스에서 앱을 분리
!colspan='3'| 스페이스
|-
|-
| [[cf restage]] || · ||
| [[cf spaces]] || · || 스페이스 목록 조회
|-
|-
| [[cf logs]] || · ||
| [[cf space]] || · || 스페이스 정보 조회
|-
|-
| [[cf security-groups]] || · || 시큐리티 그룹 목록 조회
| [[cf create-space]] || · || 스페이스 생성
|-
|-
| [[cf security-group]] || · || 시큐리티 그룹 정보 조회
| [[cf delete-space]] || · || 스페이스 삭제
|-
|-
| [[cf create-security-group]] || · || 시큐리티 그룹 생성
| [[cf rename-space]] || · || 스페이스 이름 변경
|-
|-
| [[cf update-security-group]] || · || 시큐리티 그룹 갱신
| [[cf allow-space-ssh]] || · || 스페이스 SSH 허용
|-
|-
| [[cf delete-security-group]] || · || 시큐리티 그룹 삭제
| [[cf disallow-space-ssh]] || · || 스페이스 SSH 금지
|-
|-
| [[cf bind-security-group]] || · || 시큐리티 그룹을 스페이스에 연결
| [[cf space-ssh-allowed]] || · || 스페이스 SSH 허용 확인
|-
|-
| [[cf unbind-security-group]] || · || 시큐리티 그룹을 스페이스에서 분리
!colspan='3'| 도메인
|-
|-
| [[cf domains]] || · || 등록된 도메인 목록 조회
| [[cf domains]] || · || 등록된 도메인 목록 조회
65번째 줄: 154번째 줄:
|-
|-
| [[cf delete-domain]] || · || 도메인 삭제
| [[cf delete-domain]] || · || 도메인 삭제
|-
| [[cf create-shared-domain]] || · || 공유 도메인<ref>모든 조직(org)에서 사용가능한 도메인</ref> 생성(관리자만 가능)
|-
| [[cf delete-shared-domain]] || · || 공유 도메인 삭제(관리자만 가능)
|-
| [[cf router-groups]] || · || 라우터 그룹 목록 조회
|-
!colspan='3'| 라우트
|-
| [[cf routes]] || · || 현재 스페이스(또는 조직) 내 모든 라우트 목록 조회
|-
| [[cf create-route]] || · || 스페이스 내 URL 라우트 생성
|-
| [[cf check-route]] || · || 라우트가 존재하는지 확인
|-
| [[cf map-route]] || · || 라우트를 앱에 추가
|-
| [[cf unmap-route]] || · || 라우트를 앱에서 제거
|-
| [[cf delete-route]] || · || 라우트 삭제
|-
| [[cf delete-orphaned-routes]] || · || 앱에 매핑되지 않은 라우트들 삭제
|-
!colspan='3'| 빌드팩
|-
| [[cf buildpacks]] || · || 빌드팩 목록 보기
|-
| [[cf create-buildpack]] || · || 빌드팩 생성
|-
| [[cf update-buildpack]] || · || 빌드팩 업데이트
|-
| [[cf rename-buildpack]] || · || 빌드팩 이름 변경
|-
| [[cf delete-buildpack]] || · || 빌드팩 삭제
|-
!colspan='3'| 사용자 관리자
|-
| [[cf create-user]] || · || 새 사용자 생성
|-
| [[cf delete-user]] || · || 사용자 삭제
|-
| [[cf org-users]] || · || 역할에 따른 조직 사용자 조회
|-
| [[cf set-org-role]] || · || 사용자의 조직 역할 부여
|-
| [[cf unset-org-role]] || · || 사용자의 조직 역할 제거
|-
| [[cf space-users]] || · || 역할에 따른 스페이스 사용자 조회
|-
| [[cf set-space-role]] || · || 사용자의 스페이스 역할 부여
|-
| [[cf unset-space-role]] || · || 사용자의 스페이스 역할 제거
|-
!colspan='3'| 조직 관리자
|-
| [[cf quotas]] || · || 쿼타 목록 조회
|-
| [[cf quota]] || · || 쿼타 정보 조회
|-
| [[cf set-quota]] || · || 쿼타 설정
|-
| [[cf create-quota]] || · || 쿼타 생성
|-
| [[cf delete-quota]] || · || 쿼타 삭제
|-
| [[cf update-quota]] || · || 쿼타 갱신
|-
| [[cf share-private-domain]] || · || 사재 도메인 공유
|-
| [[cf unshare-private-domain]] || · || 사재 도메인 공유 해제
|-
!colspan='3'| 스페이스 관리자
|-
| [[cf space-quotas]] || · || 스페이스 쿼타 목록 조회
|-
| [[cf space-quota]] || · || 스페이스 쿼타 정보 조회
|-
| [[cf create-space-quota]] || · || 스페이스 쿼타 생성
|-
| [[cf update-space-quota]] || · || 스페이스 쿼타 갱신
|-
| [[cf delete-space-quota]] || · || 스페이스 쿼타 삭제
|-
| [[cf set-space-quota]] || · || 스페이스에 쿼타 설정
|-
| [[cf unset-space-quota]] || · || 스페이스에서 쿼타 해제
|-
!colspan='3'| 서비스 관리자
|-
|-
| [[cf service-brokers]] || · || 서비스 브로커 목록 조회  
| [[cf service-brokers]] || · || 서비스 브로커 목록 조회  
75번째 줄: 252번째 줄:
|-
|-
| [[cf rename-service-broker]] || · || 서비스 브로커 이름 변경
| [[cf rename-service-broker]] || · || 서비스 브로커 이름 변경
|-
| [[cf migrate-service-instances]] || · || 서비스 인스턴스를 다른 플랜으로 마이그레이션
|-
| [[cf purge-service-offering]] || · || 서비스 브로커에 요청하지 않고, CF DB에서 서비스와 자식 객체들을 재귀적으로 삭제
|-
| [[cf purge-service-instance]] || · || 서비스 브로커에 요청하지 않고, CF DB에서 서비스 인스턴스와 자식 객체들을 재귀적으로 삭제
|-
|-
| [[cf service-access]] || · || 서비스 액세스 목록 조회
| [[cf service-access]] || · || 서비스 액세스 목록 조회
82번째 줄: 265번째 줄:
| [[cf disable-service-access]] || · || 서비스 액세스 비활성화
| [[cf disable-service-access]] || · || 서비스 액세스 비활성화
|-
|-
| [[cf quotas]] || · || 쿼타 목록 조회
!colspan='3'| 시큐리티 그룹
|-
| [[cf security-groups]] || · || 시큐리티 그룹 목록 조회
|-
| [[cf security-group]] || · || 시큐리티 그룹 정보 조회
|-
| [[cf create-security-group]] || · || 시큐리티 그룹 생성
|-
| [[cf update-security-group]] || · || 시큐리티 그룹 갱신
|-
| [[cf delete-security-group]] || · || 시큐리티 그룹 삭제
|-
| [[cf bind-security-group]] || · || 시큐리티 그룹을 스페이스에 연결
|-
| [[cf unbind-security-group]] || · || 시큐리티 그룹을 스페이스에서 분리
|-
!colspan='3'| 환경변수 그룹
|-
| [[running-environment-variable-group]] || · || running 환경변수그룹 조회
|-
| [[staging-environment-variable-group]] || · || staging 환경변수그룹 조회
|-
| [[set-staging-environment-variable-group]] || · || running 환경변수그룹 생성
|-
| [[set-running-environment-variable-group]] || · || staging 환경변수그룹 생성
|-
!colspan='3'| 피처 플래그
|-
| [[cf feature-flags]] || · || 피처 플래그 목록 및 상태 보기
|-
| [[cf feature-flag]] || · || 피처 플래그 정보 조회
|-
| [[cf enable-feature-flag]] || · || 피처 플래그 활성화
|-
| [[cf disable-feature-flag]] || · || 피처 플래그 비활성화
|-
!colspan='3'| 플러그인 저장소 추가/삭제
|-
| [[cf add-plugin-repo]] || · || 플러그인 저장소 추가
|-
| [[cf remove-plugin-repo]] || · || 플러그인 저장소 제거
|-
| [[cf list-plugin-repos]] || · || 플러그인 저장소 목록 보기
|-
| [[cf repo-plugins]] || · || 플러그인 저장소에 있는 플러그인 목록 보기
|-
|-
| [[cf quota]] || · || 쿼타 정보 조회
!colspan='3'| 플러그인 추가/삭제
|-
|-
| [[cf set-quota]] || · || 쿼타 설정
| [[cf plugins]] || · || 플러그인 명령어 목록 보기
|-
|-
| [[cf create-quota]] || · || 쿼타 생성
| [[cf install-plugin]] || · || 플러그인 설치
|-
|-
| [[cf delete-quota]] || · || 쿼타 삭제
| [[cf uninstall-plugin]] || · || 플러그인 제거
|-
|-
| [[cf update-quota]] || · || 쿼타 갱신
!colspan='3'| (Additional) 플러그인 명령어
|-
|-
| [[cf files]] || · || 파일 목록 조회 (DEA 방식만 가능)
| [[cf download]] || · || 다운로드
|}
|}
==플러그인 명령어==
* [[cf download]]


==같이 보기==
==같이 보기==
*[[리눅스 cf CLI 설치]]
* [[리눅스 cf CLI 설치]]
*[[cf CLI 환경변수]]
* [[cf CLI 환경변수]]
* [[cf CLI 환경변수]]
* [[리눅스 vmc]]


==참고 자료==
==참고==
* https://docs.cloudfoundry.org/cf-cli/cf-help.html
* https://docs.cloudfoundry.org/cf-cli/cf-help.html


[[분류: Cloud Foundry]]
[[분류: cf 명령어]]

2019년 5월 30일 (목) 12:34 기준 최신판

cf 명령어
cf CLI 명령어

1 목록[ | ]

명령어 alias 설명
기본
cf help · 도움말 보기
cf version · CF CLI의 버전 조회
cf login ★★ · 로그인
cf logout · 로그아웃
cf passwd · 패스워드 변경
cf target · 대상 조직·스페이스 조회·설정
cf api · 대상 API URL 조회·설정
cf auth · 비대화형 사용자 인증
cf apps ★★★ · 대상 스페이스內 앱 목록 조회
cf app · 앱 정보/상태 조회
cf push ★★★ · 새로운 앱을 푸시하거나 기존 앱에 변경내역 반영
cf scale · 앱 인스턴스 개수, 디스크 용량 제한, 메모리 제한 변경·조회
cf delete · 앱 삭제
cf rename · 앱 이름 변경
cf start · 앱 시작
cf stop · 앱 정지
cf restart · 앱 재시작
cf restage · 앱 리스테이지
cf restart-app-instance · 앱인스턴스 재시작
cf events · 최근 앱 이벤트 조회
cf files · 파일 목록 조회 (DEA 방식만 가능)
cf logs ★★ · 최근 앱 로그 실시간 조회(tail)
cf env · 앱의 환경변수 목록 조회
cf set-env · 앱에 환경변수 설정
cf unset-env · 환경변수 제거
cf stacks · 스택[1] 목록 조회
cf stack · 스택 정보 조회
cf copy-source · 한 앱에서 다른 앱으로 앱 소스코드를 복제함. override된 것이 아니라면 앱 재시작됨
cf create-app-manifest · 성공적으로 푸시된 앱의 매니페스트를 파일로 생성
cf get-health-check · 앱의 health_check_type 값 얻기
cf set-health-check · health_check_type 프래그 설정 (port 또는 none)
cf enable-ssh · 앱에 대한 ssh 활성화
cf disable-ssh · 앱에 대한 ssh 비활성화
cf ssh-enabled · 앱 컨테이너 인스턴트에 대한 ssh 접속 활성화 여부 확인
cf ssh · 앱 컨테이너 인스턴트에 대한 ssh 접속[2]
서비스
cf marketplace ·
cf services ★★ · 서비스 목록 조회
cf service · 서비스 정보 조회
cf create-service cf cs 서비스 인스턴스 생성
cf update-service · 서비스 인스턴스 갱신
cf delete-service cf ds 서비스 인스턴스 삭제
cf rename-service · 서비스 인스턴스 이름 변경
cf service-keys · 서비스 키[3] 목록 조회
cf service-key · 서비스 키 정보 조회
cf create-service-key · 서비스 키 생성
cf delete-service-key · 서비스 키 삭제
cf bind-service ★★ cf bs 서비스에 앱을 연결
cf unbind-service cf us 서비스에서 앱을 분리
cf bind-route-service · 서비스 인스턴스를 HTTP 라우트에 연결
cf unbind-route-service · 서비스 인스턴스를 HTTP 라우트에서 분리
cf create-user-provided-service cf cups 사용자정의서비스 등록
cf update-user-provided-service cf uups 사용자정의서비스 갱신
조직
cf orgs · 조직 목록 조회
cf org · 조직 정보 조회
cf create-org · 조직 생성
cf delete-org · 조직 삭제
cf rename-org · 조직 이름 변경
스페이스
cf spaces · 스페이스 목록 조회
cf space · 스페이스 정보 조회
cf create-space · 스페이스 생성
cf delete-space · 스페이스 삭제
cf rename-space · 스페이스 이름 변경
cf allow-space-ssh · 스페이스 SSH 허용
cf disallow-space-ssh · 스페이스 SSH 금지
cf space-ssh-allowed · 스페이스 SSH 허용 확인
도메인
cf domains · 등록된 도메인 목록 조회
cf create-domain · 도메인 생성(등록)
cf delete-domain · 도메인 삭제
cf create-shared-domain · 공유 도메인[4] 생성(관리자만 가능)
cf delete-shared-domain · 공유 도메인 삭제(관리자만 가능)
cf router-groups · 라우터 그룹 목록 조회
라우트
cf routes · 현재 스페이스(또는 조직) 내 모든 라우트 목록 조회
cf create-route · 스페이스 내 URL 라우트 생성
cf check-route · 라우트가 존재하는지 확인
cf map-route · 라우트를 앱에 추가
cf unmap-route · 라우트를 앱에서 제거
cf delete-route · 라우트 삭제
cf delete-orphaned-routes · 앱에 매핑되지 않은 라우트들 삭제
빌드팩
cf buildpacks · 빌드팩 목록 보기
cf create-buildpack · 빌드팩 생성
cf update-buildpack · 빌드팩 업데이트
cf rename-buildpack · 빌드팩 이름 변경
cf delete-buildpack · 빌드팩 삭제
사용자 관리자
cf create-user · 새 사용자 생성
cf delete-user · 사용자 삭제
cf org-users · 역할에 따른 조직 사용자 조회
cf set-org-role · 사용자의 조직 역할 부여
cf unset-org-role · 사용자의 조직 역할 제거
cf space-users · 역할에 따른 스페이스 사용자 조회
cf set-space-role · 사용자의 스페이스 역할 부여
cf unset-space-role · 사용자의 스페이스 역할 제거
조직 관리자
cf quotas · 쿼타 목록 조회
cf quota · 쿼타 정보 조회
cf set-quota · 쿼타 설정
cf create-quota · 쿼타 생성
cf delete-quota · 쿼타 삭제
cf update-quota · 쿼타 갱신
cf share-private-domain · 사재 도메인 공유
cf unshare-private-domain · 사재 도메인 공유 해제
스페이스 관리자
cf space-quotas · 스페이스 쿼타 목록 조회
cf space-quota · 스페이스 쿼타 정보 조회
cf create-space-quota · 스페이스 쿼타 생성
cf update-space-quota · 스페이스 쿼타 갱신
cf delete-space-quota · 스페이스 쿼타 삭제
cf set-space-quota · 스페이스에 쿼타 설정
cf unset-space-quota · 스페이스에서 쿼타 해제
서비스 관리자
cf service-brokers · 서비스 브로커 목록 조회
cf create-service-broker · 서비스 브로커 생성
cf update-service-broker · 서비스 브로커 갱신
cf delete-service-broker · 서비스 브로커 삭제
cf rename-service-broker · 서비스 브로커 이름 변경
cf migrate-service-instances · 서비스 인스턴스를 다른 플랜으로 마이그레이션
cf purge-service-offering · 서비스 브로커에 요청하지 않고, CF DB에서 서비스와 자식 객체들을 재귀적으로 삭제
cf purge-service-instance · 서비스 브로커에 요청하지 않고, CF DB에서 서비스 인스턴스와 자식 객체들을 재귀적으로 삭제
cf service-access · 서비스 액세스 목록 조회
cf enable-service-access · 서비스 액세스 활성화
cf disable-service-access · 서비스 액세스 비활성화
시큐리티 그룹
cf security-groups · 시큐리티 그룹 목록 조회
cf security-group · 시큐리티 그룹 정보 조회
cf create-security-group · 시큐리티 그룹 생성
cf update-security-group · 시큐리티 그룹 갱신
cf delete-security-group · 시큐리티 그룹 삭제
cf bind-security-group · 시큐리티 그룹을 스페이스에 연결
cf unbind-security-group · 시큐리티 그룹을 스페이스에서 분리
환경변수 그룹
running-environment-variable-group · running 환경변수그룹 조회
staging-environment-variable-group · staging 환경변수그룹 조회
set-staging-environment-variable-group · running 환경변수그룹 생성
set-running-environment-variable-group · staging 환경변수그룹 생성
피처 플래그
cf feature-flags · 피처 플래그 목록 및 상태 보기
cf feature-flag · 피처 플래그 정보 조회
cf enable-feature-flag · 피처 플래그 활성화
cf disable-feature-flag · 피처 플래그 비활성화
플러그인 저장소 추가/삭제
cf add-plugin-repo · 플러그인 저장소 추가
cf remove-plugin-repo · 플러그인 저장소 제거
cf list-plugin-repos · 플러그인 저장소 목록 보기
cf repo-plugins · 플러그인 저장소에 있는 플러그인 목록 보기
플러그인 추가/삭제
cf plugins · 플러그인 명령어 목록 보기
cf install-plugin · 플러그인 설치
cf uninstall-plugin · 플러그인 제거
(Additional) 플러그인 명령어
cf download · 다운로드

2 같이 보기[ | ]

3 참고[ | ]

  1. 앱을 구동하기 위해 사전구성된 파일시스템
  2. SSH는 Diego만 가능. https://docs.cloudfoundry.org/running/config-ssh.html
  3. 서비스 인스턴스에 대한 키
  4. 모든 조직(org)에서 사용가능한 도메인
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}